From 02f18587bd8860b305e2c688e20465be166bb48c Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期四, 22 七月 2021 15:14:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDynDAO.java |  114 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 96 insertions(+), 18 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDynDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDynDAO.java
index 2a38f7b..3ce5ca5 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDynDAO.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDynDAO.java
@@ -5,10 +5,15 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.panzhihua.common.model.vos.community.ComActActivityVO;
 import com.panzhihua.common.model.vos.community.ComActDynVO;
+import com.panzhihua.common.model.vos.screen.DateScreenVO;
+import com.panzhihua.common.model.vos.screen.DynamicWorkVO;
 import com.panzhihua.service_community.model.dos.ComActDynDO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
+
+import java.util.Map;
 
 /**
  * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -19,35 +24,108 @@
 @Mapper
 public interface ComActDynDAO extends BaseMapper<ComActDynDO> {
     @Select("<script> " +
-            "SELECT \n" +
-            "d.id,\n" +
-            "d.title,\n" +
-            "COUNT(u.id)readNum,\n" +
-            "d.`status`,\n" +
-            "d.`content`,\n" +
-            "d.is_topping,\n" +
-            "d.publish_at,\n" +
-            "d.create_at\n" +
-            "FROM\n" +
-            "com_act_dyn d\n" +
-            "LEFT JOIN com_act_dyn_user u ON d.id = u.dyn_id \n" +
-            "WHERE\n" +
-            "d.community_id=#{comActDynVO.communityId}\n" +
+            "SELECT  " +
+            "d.id, " +
+            "d.title, " +
+            "COUNT(u.id)readNum, " +
+            "d.`status`, " +
+            "d.`content`, " +
+            "d.`cover`, " +
+            "d.`type`, " +
+            "d.`cover_mode`, " +
+            "d.is_topping, " +
+            "d.publish_at, " +
+            "d.create_at, " +
+            "cadt.`name` as typeName, " +
+            "cadt.color as typeColor, " +
+            "ca.name as communityName  " +
+            "FROM " +
+            "com_act_dyn d " +
+            "LEFT JOIN com_act_dyn_user u ON d.id = u.dyn_id  " +
+            "LEFT JOIN com_act_dyn_type as cadt ON cadt.id = d.type  " +
+            "LEFT JOIN com_act ca ON d.community_id = ca.community_id  " +
+            "WHERE 1=1  " +
+            "<if test='comActDynVO.choice == 0 '>" +
+            "and d.community_id=#{comActDynVO.communityId} " +
+            " </if> " +
             "<if test='comActDynVO.title != null and comActDynVO.title.trim() != &quot;&quot;'>" +
-            "AND d.title = #{comActDynVO.title} \n" +
+            "AND d.title like concat(#{comActDynVO.title},'%')   " +
             " </if> " +
             "<if test='comActDynVO.isTopping != null '>" +
-            "AND d.is_topping = #{comActDynVO.isTopping} \n" +
+            "AND d.is_topping = #{comActDynVO.isTopping}  " +
             " </if> " +
             "<if test='comActDynVO.status != null '>" +
-            "AND d.`status` = #{comActDynVO.status} \n" +
+            "AND d.`status` = #{comActDynVO.status}  " +
             " </if> " +
             "<if test='comActDynVO.publishAtBegin != null '>" +
-            "AND d.publish_at BETWEEN #{comActDynVO.publishAtBegin} \n" +
+            "AND d.publish_at BETWEEN #{comActDynVO.publishAtBegin}  " +
             "AND #{comActDynVO.publishAtEnd}" +
             " </if> " +
             " group by d.id  "+
             " order by d.is_topping desc, d.create_at desc "+
             "</script>")
     IPage<ComActDynVO> pageDynamic(Page page, @Param("comActDynVO") ComActDynVO comActDynVO);
+    @Update("update com_act_dyn set `status`=1 WHERE `status`=0 and TIMESTAMPDIFF(MINUTE, SYSDATE(), publish_at)<=0 ")
+    int timedTaskDynStatus();
+
+    @Select("<script> " +
+            "SELECT  " +
+            "d.id, " +
+            "d.title, " +
+            "COUNT(u.id)readNum, " +
+            "d.`status`, " +
+            "d.`content`, " +
+            "d.`cover`, " +
+            "d.`type`, " +
+            "d.`cover_mode`, " +
+            "d.is_topping, " +
+            "d.publish_at, " +
+            "d.create_at, " +
+            "cadt.`name` as typeName, " +
+            "ca.name as communityName  " +
+            "FROM " +
+            "com_act_dyn d " +
+            "LEFT JOIN com_act_dyn_user u ON d.id = u.dyn_id  " +
+            "LEFT JOIN com_act_dyn_type as cadt ON cadt.id = d.type  " +
+            "LEFT JOIN com_act ca ON d.community_id = ca.community_id  " +
+            "WHERE  " +
+            "d.community_id=#{comActDynVO.communityId} " +
+            "<if test='comActDynVO.title != null and comActDynVO.title.trim() != &quot;&quot;'>" +
+            "AND d.title like concat(#{comActDynVO.title},'%')   " +
+            " </if> " +
+            "<if test='comActDynVO.isTopping != null '>" +
+            "AND d.is_topping = #{comActDynVO.isTopping}  " +
+            " </if> " +
+            "<if test='comActDynVO.status != null '>" +
+            "AND d.`status` = #{comActDynVO.status}  " +
+            " </if> " +
+            "<if test='comActDynVO.type != null '>" +
+            "AND d.type = #{comActDynVO.type}  " +
+            " </if> " +
+            "<if test='comActDynVO.publishAtBegin != null '>" +
+            "AND d.publish_at BETWEEN #{comActDynVO.publishAtBegin}  " +
+            "AND #{comActDynVO.publishAtEnd}" +
+            " </if> " +
+            " group by d.id  "+
+            " order by d.is_topping desc, d.create_at desc "+
+            "</script>")
+    IPage<ComActDynVO> pageDynamicByAdmin(Page page, @Param("comActDynVO") ComActDynVO comActDynVO);
+
+    @Select("SELECT " +
+            " count( cad.id ) AS dynTotal, " +
+            " (select count(id) from com_act_dyn where community_id = #{communityId} and create_at LIKE CONCAT(#{nowDate},'%')) as currentNum " +
+            "FROM " +
+            " com_act_dyn AS cad  " +
+            "WHERE " +
+            " community_id = #{communityId}")
+    Map<String, Long> countByCommunityId(@Param("communityId") Long communityId, @Param("nowDate")String nowDate);
+
+    @Select("select create_at as startTime,(select create_at from com_act_dyn where community_id = #{communityId} order by create_at desc LIMIT 1 ) as endTime from com_act_dyn where community_id = #{communityId} order by create_at asc LIMIT 1")
+    DateScreenVO countByAvgCommunityId(@Param("communityId") Long communityId);
+
+    @Select("SELECT " +
+            "(SELECT COUNT(id) FROM com_act_dyn WHERE community_id = #{communityId} AND create_at < #{end}) AS dynTotal, " +
+            "(SELECT COUNT(id) FROM com_act_dyn WHERE community_id = #{communityId} AND #{start} < create_at AND create_at < #{end}) AS dynAdd " +
+            " FROM DUAL")
+    DynamicWorkVO countByTime(@Param("start")String start, @Param("end")String end, @Param("communityId")Long communityId);
 }

--
Gitblit v1.7.1