zwhui пре 2 година
родитељ
комит
f58f606d90

+ 52 - 0
netflix-dao/src/main/java/com/cyksj/model/views/MidjourneyUserConversationRecordHistoryView.java

@@ -0,0 +1,52 @@
+package com.cyksj.model.views;
+
+import com.ejlchina.searcher.bean.DbField;
+import com.ejlchina.searcher.bean.SearchBean;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author chan
+ * @date 2024/4/10 11:37
+ */
+@Data
+@SearchBean(tables = "(SELECT MAX(id) id from midjourney_user_conversation_record as r\n" +
+        "GROUP BY r.car_id) t left join midjourney_user_conversation_record as r on t.id = r.id"
+        ,orderBy = "r.created_time desc"
+)
+public class MidjourneyUserConversationRecordHistoryView {
+
+    @DbField("r.user_token")
+    private String userToken;
+    /**
+     * 提示词
+     */
+    @DbField("r.prompt")
+    private String prompt;
+
+    /**
+     * 对话id
+     */
+    @DbField("r.conversation_id")
+    private String conversationId;
+
+    /**
+     * 对话时间
+     */
+    @DbField("r.created_time")
+    private Date conversationTime;
+
+    /**
+     * 车队id
+     */
+    @DbField("r.car_id")
+    private String carId;
+
+    /**
+     * 车队名称
+     */
+    @DbField("r.car_name")
+    private String carName;
+
+}

+ 3 - 0
netflix-dao/src/main/java/com/cyksj/model/views/MidjourneyUserView.java

@@ -25,6 +25,9 @@ public class MidjourneyUserView {
     @DbField("mu.relation_id")
     private Long relationId;
 
+    @DbField("mu.is_car")
+    private Boolean isCar;
+
     @DbField("gr.user_id")
     private Long userId;
 

+ 19 - 0
netflix-web/src/main/java/com/cyksj/web/controller/mirror/MidjourneyController.java

@@ -6,9 +6,12 @@ import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.dto.Result;
 import com.cyksj.enums.GatewayResponse;
 import com.cyksj.mapper.UpgradePackageMapper;
+import com.cyksj.model.entity.ChatgptUser;
 import com.cyksj.model.entity.MidjourneyUser;
 import com.cyksj.model.entity.UpgradePackage;
+import com.cyksj.model.views.ChatGptUserConversationRecordHistoryView;
 import com.cyksj.model.views.MidjouneyCarInfoView;
+import com.cyksj.model.views.MidjourneyUserConversationRecordHistoryView;
 import com.cyksj.model.views.MidjourneyUserView;
 import com.cyksj.service.midjourney.MidjourneyService;
 import com.cyksj.service.user.UserBindRelationService;
@@ -16,6 +19,7 @@ import com.cyksj.web.util.StpUserUtil;
 import com.ejlchina.searcher.BeanSearcher;
 import com.ejlchina.searcher.SearchResult;
 import com.ejlchina.searcher.param.Operator;
+import com.ejlchina.searcher.util.MapBuilder;
 import com.ejlchina.searcher.util.MapUtils;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -106,4 +110,19 @@ public class MidjourneyController {
         return GatewayResponse.SUCCESS.newBuilder().toResult(url);
     }
 
+    /**
+     * 获取车队历史记录
+     */
+    @GetMapping("/get/car/history")
+    public Result<SearchResult<MidjourneyUserConversationRecordHistoryView>> getCarHistory(Long relationId) {
+        long userId = StpUserUtil.getLoginIdAsLong();
+        MidjourneyUser midjourneyUser = midjourneyService.getUser(userId, relationId);
+        if (midjourneyUser == null) {
+            throw BusinessRuntimeException.getInstance("车票出现了异常.");
+        }
+        MapBuilder builder = MapUtils.flatBuilder(request.getParameterMap()).field("userToken", midjourneyUser.getUserToken());
+        SearchResult<MidjourneyUserConversationRecordHistoryView> search = beanSearcher.search(MidjourneyUserConversationRecordHistoryView.class, builder.build());
+        return GatewayResponse.SUCCESS.newBuilder().toResult(search);
+    }
+
 }