Forráskód Böngészése

Merge branch 'mj_guide_func' into pre

# Conflicts:
#	netflix-web/src/main/java/com/cyksj/web/controller/mirror/MidjourneyController.java
zoujiajian 2 éve
szülő
commit
0f64b665a4

+ 0 - 5
netflix-dao/src/main/java/com/cyksj/mapper/MidjourneyPaintingPlazaMapper.java

@@ -1,10 +1,7 @@
 package com.cyksj.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.cyksj.model.entity.MidjourneyPaintingPlaza;
-import com.cyksj.model.views.MidjourneyPaintingUserView;
-import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Update;
 
 /**
@@ -17,6 +14,4 @@ public interface MidjourneyPaintingPlazaMapper extends BaseMapper<MidjourneyPain
 
 	@Update("update midjourney_painting_plaza set copy_num = copy_num + 1 where id = #{id}")
 	void updatePaintingCopyNum(Long id);
-
-	Page<MidjourneyPaintingUserView> getPaintingList(@Param("page") Page<MidjourneyPaintingUserView> page, @Param("collect") Boolean collect, @Param("userId") Long userId);
 }

+ 8 - 2
netflix-dao/src/main/java/com/cyksj/model/views/MidjourneyPaintingUserView.java

@@ -1,5 +1,7 @@
 package com.cyksj.model.views;
 
+import com.ejlchina.searcher.bean.DbField;
+import com.ejlchina.searcher.bean.SearchBean;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -11,13 +13,17 @@ import lombok.Setter;
  */
 @Getter
 @Setter
+@SearchBean(tables = "midjourney_painting_plaza mpp",
+		where = "mpp.status is true and mpp.deleted is true",
+		orderBy = "mpp.update_time desc")
 public class MidjourneyPaintingUserView {
 
+	@DbField("mpp.id")
 	private Long id;
 
+	@DbField("mpp.tips")
 	private String tips;
 
+	@DbField("mpp.img")
 	private String img;
-
-	private Boolean collect;
 }

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

@@ -28,6 +28,9 @@ public class MidjourneyUserPaintingRecordView {
 	@DbField("mc.image_url")
 	private String imageUrl;
 
+	@DbField("bookmark")
+	private Boolean bookmark;
+
 	@DbField("mc.created_time")
 	private Date createdTime;
 }

+ 1 - 16
netflix-dao/src/main/resources/mapper/MidjourneyPaintingPlazaMapper.xml

@@ -2,20 +2,5 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.cyksj.mapper.MidjourneyPaintingPlazaMapper">
 
-    <select id="getPaintingList" resultType="com.cyksj.model.views.MidjourneyPaintingUserView">
-        select mpp.id,
-        mpp.tips,
-        mpp.img,
-        ifnull((select status
-        from midjourney_painting_collect_record pr
-        where pr.plaza_id = mpp.id and user_id = #{userId}), false) as collect
-        from midjourney_painting_plaza mpp
-        where mpp.status is true
-        and mpp.deleted is true
-        <if test="collect != null">
-            and EXISTS (select 1 from midjourney_painting_collect_record pr
-            where pr.plaza_id = mpp.id and user_id = #{userId} and pr.status is ${collect} limit 1)
-        </if>
-        order by mpp.update_time desc
-    </select>
+
 </mapper>

+ 13 - 39
netflix-web/src/main/java/com/cyksj/web/controller/mirror/MidjourneyController.java

@@ -17,7 +17,10 @@ import com.cyksj.model.entity.MidjourneyUser;
 import com.cyksj.model.entity.MidjourneyUserConversation;
 import com.cyksj.model.response.SubmitResult;
 import com.cyksj.model.dto.*;
-import com.cyksj.model.entity.*;
+import com.cyksj.model.entity.GroupsRelation;
+import com.cyksj.model.entity.MidjourneyPaintingPlaza;
+import com.cyksj.model.entity.MidjourneyUser;
+import com.cyksj.model.entity.MidjourneyUserConversation;
 import com.cyksj.model.views.MidjourneyPaintingUserView;
 import com.cyksj.model.views.MidjourneyUserPaintingDayRecordView;
 import com.cyksj.model.views.MidjourneyUserPaintingRecordView;
@@ -30,7 +33,6 @@ import com.ejlchina.searcher.util.MapBuilder;
 import com.ejlchina.searcher.util.MapUtils;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.dao.DuplicateKeyException;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
@@ -387,44 +389,13 @@ public class MidjourneyController {
 
 
     /**
-     * mj绘画广场 我的收藏
+     * mj绘画广场
      */
     @GetMapping("/get/painting")
-    public Result<Page<MidjourneyPaintingUserView>> getPaintingCollect(@RequestParam(defaultValue = "1") Integer start, @RequestParam(defaultValue = "10") Integer limit, Boolean collect) {
-        if (limit > 20) {
-            limit = 20;
-        }
-        MidjourneyUser user = getUser();
-        Page<MidjourneyPaintingUserView> page = midjourneyPaintingPlazaMapper.getPaintingList(new Page<>(start, limit), collect, user.getId());
-        return GatewayResponse.SUCCESS.newBuilder().toResult(page);
-    }
-
-    /**
-     * 修改 mj绘画广场 收藏状态
-     */
-    @PutMapping("/collect/painting/{id}")
-    public Result<SearchResult<MidjourneyPaintingUserView>> collectPainting(@PathVariable Long id) {
-        MidjourneyUser user = getUser();
-        MidjourneyPaintingPlaza midjourneyPaintingPlaza = midjourneyPaintingPlazaMapper.selectById(id);
-        if (midjourneyPaintingPlaza == null || !midjourneyPaintingPlaza.getDeleted()) {
-         return GatewayResponse.SUCCESS.newBuilder().toResult();
-        }
-        MidjourneyPaintingCollectRecord record = Optional.ofNullable(midjourneyPaintingCollectRecordMapper.selectOne(Wrappers.lambdaQuery(MidjourneyPaintingCollectRecord.class)
-                .eq(MidjourneyPaintingCollectRecord::getPlazaId, id)
-                .eq(MidjourneyPaintingCollectRecord::getUserId, user.getId()).last("limit 1"))).orElse(new MidjourneyPaintingCollectRecord());
-        if (record.getId() == null) {
-            try {
-                record.setStatus(true);
-                record.setUserId(user.getId());
-                record.setPlazaId(id);
-                midjourneyPaintingCollectRecordMapper.insert(record);
-            } catch (DuplicateKeyException e) {
-            }
-        } else {
-            record.setStatus(!record.getStatus());
-            midjourneyPaintingCollectRecordMapper.updateById(record);
-        }
-        return GatewayResponse.SUCCESS.newBuilder().toResult();
+    public Result<SearchResult<MidjourneyPaintingUserView>> getPaintingCollect() {
+        SearchResult<MidjourneyPaintingUserView> search = beanSearcher.search(MidjourneyPaintingUserView.class, MapUtils.flatBuilder(request.getParameterMap())
+                .build());
+        return GatewayResponse.SUCCESS.newBuilder().toResult(search);
     }
 
     /**
@@ -443,12 +414,15 @@ public class MidjourneyController {
      * 用户绘画记录
      */
     @GetMapping("/get/painting/record")
-    public Result<SearchResult<MidjourneyUserPaintingDayRecordView>> getPaintingRecord(String prompt) {
+    public Result<SearchResult<MidjourneyUserPaintingDayRecordView>> getPaintingRecord(String prompt, Boolean bookmark) {
         MidjourneyUser user = getUser();
         String condition = String.format(" and mc.user_id = %s", user.getId());
         if (StrUtil.isNotBlank(prompt)) {
             condition += String.format(" and mc.prompt = '%s'", prompt);
         }
+        if (bookmark != null) {
+            condition += String.format(" and mc.bookmark is %s", bookmark);
+        }
         SearchResult<MidjourneyUserPaintingDayRecordView> search = beanSearcher.search(MidjourneyUserPaintingDayRecordView.class, MapUtils.flatBuilder(request.getParameterMap())
                 .put("condition", condition)
                 .orderBy(MidjourneyUserPaintingRecordView::getCreatedTime).desc()