Browse Source

fix 修复收藏接口绘画模型问题

杨兴卓 1 month ago
parent
commit
1410ab9889

+ 4 - 2
xyzc-start/src/main/java/com/xyzc/start/controller/MyCollectController.java

@@ -1,8 +1,10 @@
 package com.xyzc.start.controller;
 
 import com.xyzc.common.core.utils.Result;
+import com.xyzc.start.domain.query.CollectDrawQuery;
 import com.xyzc.start.domain.vo.*;
 import com.xyzc.start.service.IMyCollectService;
+import jakarta.validation.Valid;
 import lombok.RequiredArgsConstructor;
 import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -28,8 +30,8 @@ public class MyCollectController {
      * 收藏的绘画模型
      */
     @GetMapping("/collectDraw")
-    public Result<List<DrawModelCollectVo>> getCollectDrawModel(Long collectId, String name) {
-        List<DrawModelCollectVo> drawModelList = myCollectService.getCollectDrawModel(collectId, name);
+    public Result<List<DrawModelCollectVo>> getCollectDrawModel(@Valid CollectDrawQuery query) {
+        List<DrawModelCollectVo> drawModelList = myCollectService.getCollectDrawModel(query);
 
         return Result.ok(drawModelList);
     }

+ 2 - 2
xyzc-start/src/main/java/com/xyzc/start/domain/DrawPrompt.java

@@ -25,10 +25,10 @@ public class DrawPrompt {
     /**
      * 提示词中文
      */
-    private String prompt;
+    private String promptName;
 
     /**
      * 提示词英文
      */
-    private String promptEn;
+    private String promptNameEn;
 }

+ 22 - 0
xyzc-start/src/main/java/com/xyzc/start/domain/query/CollectDrawQuery.java

@@ -0,0 +1,22 @@
+package com.xyzc.start.domain.query;
+
+import lombok.Data;
+
+@Data
+public class CollectDrawQuery {
+
+    /**
+     * 上一个绘画模型的 收藏id
+     */
+    private Long collectId;
+
+    /**
+     * 绘画模型名称用于模糊查询
+     */
+    private String name;
+
+    /**
+     * 查询长度
+     */
+    private Integer length = 10;
+}

+ 6 - 0
xyzc-start/src/main/java/com/xyzc/start/domain/vo/DrawPromptVo.java

@@ -1,5 +1,8 @@
 package com.xyzc.start.domain.vo;
 
+import com.xyzc.start.domain.DrawPrompt;
+import io.github.linpeilie.annotations.AutoMapper;
+import io.github.linpeilie.annotations.AutoMapping;
 import lombok.Data;
 
 /**
@@ -8,6 +11,7 @@ import lombok.Data;
  * @author 杨兴卓
  */
 @Data
+@AutoMapper(target = DrawPrompt.class)
 public class DrawPromptVo {
 
     /**
@@ -23,10 +27,12 @@ public class DrawPromptVo {
     /**
      * 提示词中文
      */
+    @AutoMapping(target = "promptName")
     private String prompt;
 
     /**
      * 提示词英文
      */
+    @AutoMapping(target = "promptNameEn")
     private String promptEn;
 }

+ 3 - 2
xyzc-start/src/main/java/com/xyzc/start/mapper/BaseUserCollectMapper.java

@@ -4,6 +4,7 @@ import com.xyzc.common.mybatis.core.mapper.BaseMapperPlus;
 import com.xyzc.start.constant.Const;
 import com.xyzc.start.domain.BaseUserCollect;
 import com.xyzc.start.domain.query.BaseUserCollectQuery;
+import com.xyzc.start.domain.query.CollectDrawQuery;
 import com.xyzc.start.domain.vo.*;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -48,10 +49,10 @@ public interface BaseUserCollectMapper extends BaseMapperPlus<BaseUserCollect, B
      * 根据上一个id,分页查询绘画模型
      *
      * @param userId
-     * @param collectId
+     * @param query
      * @return
      */
-    List<DrawModelCollectVo> queryDrawModelById(Long userId, Long collectId, String name);
+    List<DrawModelCollectVo> queryDrawModelById(Long userId, CollectDrawQuery query);
 
     /**
      * 根据上一个id,分页查询图像

+ 3 - 3
xyzc-start/src/main/java/com/xyzc/start/service/IMyCollectService.java

@@ -1,5 +1,6 @@
 package com.xyzc.start.service;
 
+import com.xyzc.start.domain.query.CollectDrawQuery;
 import com.xyzc.start.domain.vo.*;
 
 import java.util.List;
@@ -11,11 +12,10 @@ public interface IMyCollectService {
 
     /**
      * 根据上一个id 获取收藏的绘画模型列表
-     * @param collectId Long
-     * @param name String
+     * @param query CollectDrawQuery
      * @return List<DrawModelCollectVo>
      */
-    List<DrawModelCollectVo> getCollectDrawModel(Long collectId, String name);
+    List<DrawModelCollectVo> getCollectDrawModel(CollectDrawQuery query);
 
     /**
      * 根据上一个id 获取收藏的应用列表

+ 4 - 3
xyzc-start/src/main/java/com/xyzc/start/service/impl/MyCollectServiceImpl.java

@@ -2,6 +2,7 @@ package com.xyzc.start.service.impl;
 
 
 import com.xyzc.common.web.security.user.SecurityUser;
+import com.xyzc.start.domain.query.CollectDrawQuery;
 import com.xyzc.start.domain.vo.*;
 import com.xyzc.start.mapper.BaseUserCollectMapper;
 import com.xyzc.start.service.IMyCollectService;
@@ -23,13 +24,13 @@ public class MyCollectServiceImpl implements IMyCollectService {
 
     /**
      *
-     * @param collectId
+     * @param query CollectDrawQuery
      * @return
      */
     @Override
-    public List<DrawModelCollectVo> getCollectDrawModel(Long collectId, String name) {
+    public List<DrawModelCollectVo> getCollectDrawModel(CollectDrawQuery query) {
 
-        return baseUserCollectMapper.queryDrawModelById(SecurityUser.getUserId(), collectId, name);
+        return baseUserCollectMapper.queryDrawModelById(SecurityUser.getUserId(), query);
     }
 
     /**

+ 6 - 5
xyzc-start/src/main/resources/mapper/WebStart/BaseUserCollectMapper.xml

@@ -53,14 +53,15 @@
           AND xbuc.base_user_id = #{userId}
           AND xdm.del_flag = '0'
           AND xbuc.type = 1
-        <if test="name != null">
-            AND xdm.model_name LIKE CONCAT( '%', #{name}, '%')
+          AND xbuc.is_collect = 1
+        <if test="query.name != null">
+            AND xdm.model_name LIKE CONCAT( '%', #{query.name}, '%')
         </if>
-        <if test="collectId != null">
-            AND xbuc.id &lt; #{collectId}
+        <if test="query.collectId != null">
+            AND xbuc.id &lt; #{query.collectId}
         </if>
         ORDER BY xbuc.id DESC
-        LIMIT 10
+        LIMIT #{query.length}
     </select>
 
     <select id="queryAppById" resultType="com.xyzc.start.domain.vo.AppCollectVo">

+ 2 - 2
xyzc-start/src/main/resources/mapper/WebStart/DrawAssistantMapper.xml

@@ -9,8 +9,8 @@
         select
             xdp.id     AS prompt_id,
             xdp.prompt_oss_url,
-            xdp.prompt_name,
-            xdp.prompt_name_en
+            xdp.prompt_name AS prompt,
+            xdp.prompt_name_en AS prompt_en
         from xy_draw_assistant xda
                  left join xy_draw_prompt xdp on xda.id = xdp.assistant_id
         where xda.id = #{assistantId}