From c95870e474a35249b24fa2f5c45f59bf9b7581c5 Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期五, 09 四月 2021 13:17:00 +0800
Subject: [PATCH] 用户问卷答题详细
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java | 135 ++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 128 insertions(+), 7 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java
index f1b6adc..72f3fae 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java
@@ -4,6 +4,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.vos.community.ComActActivityVO;
+import com.panzhihua.common.model.vos.community.CommunityActivitiesVO;
+import com.panzhihua.common.model.vos.community.CommunityGovernanceTrendsVO;
import com.panzhihua.common.model.vos.partybuilding.PageActivityMembersVO;
import com.panzhihua.service_community.model.dos.ComActActivityDO;
import org.apache.ibatis.annotations.Mapper;
@@ -11,6 +13,7 @@
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
+import java.util.Date;
import java.util.List;
/**
@@ -54,15 +57,28 @@
"left join com_act_act_sign s on a.id=s.activity_id \n"+
" where a.community_id=#{comActActivityVO.communityId}" +
"<if test='comActActivityVO.activityName != null and comActActivityVO.activityName.trim() != ""'>" +
- " and a.activity_name = #{comActActivityVO.activityName} \n" +
+ " and a.activity_name like concat(#{comActActivityVO.activityName},'%') \n" +
" </if> " +
- "<if test='comActActivityVO.status != null and comActActivityVO.status !=0'>" +
+ "<if test='comActActivityVO.status != null and comActActivityVO.status !=0 and comActActivityVO.isIng==null'>" +
"AND a.`status` = #{comActActivityVO.status} \n" +
+ " </if> " +
+ "<if test='comActActivityVO.status != null and comActActivityVO.status !=0 and comActActivityVO.isIng!=null and comActActivityVO.isIng==1'>" +
+ "AND a.`status` in (3,4) \n" +
+ " </if> " +
+ "<if test='comActActivityVO.isApplets != null and comActActivityVO.isApplets ==1'>" +
+ "AND a.`status` != 1 \n" +
" </if> " +
"<if test='comActActivityVO.beginAt != null '>" +
"AND a.begin_at <![CDATA[ >= ]]> #{comActActivityVO.beginAt} AND a.end_at <![CDATA[ <= ]]> #{comActActivityVO.endAt} \n" +
" </if> " +
+ "<if test='comActActivityVO.type != null and comActActivityVO.type==1 '>" +
+ "AND a.volunteer_max!=0 \n" +
+ " </if> " +
+ "<if test='comActActivityVO.type != null and comActActivityVO.type==2 '>" +
+ "AND a.participant_max!=0 \n" +
+ " </if> " +
" group by a.id "+
+ " order by a.status asc,a.publish_at desc "+
"</script>")
IPage<ComActActivityVO> pageActivity( Page page, @Param("comActActivityVO") ComActActivityVO comActActivityVO);
@@ -91,7 +107,15 @@
"s.create_at DESC")
IPage<ComActActivityVO> pageMyActivity(Page page, @Param("comActActivityVO") ComActActivityVO comActActivityVO);
- @Select("select t.activity_name,t.id,t.end_at,t.cover,t.status from com_act_act_sign s join sys_user u on s.user_id=u.user_id and u.phone=#{phone} and s.is_volunteer=1 " +
+ @Select("select " +
+ "t.activity_name," +
+ "t.id," +
+ "t.end_at," +
+ "t.begin_at," +
+ "t.cover," +
+ "t.status " +
+ "from com_act_act_sign s " +
+ "join sys_user u on s.user_id=u.user_id and u.phone=#{phone} and s.is_volunteer=1 " +
"join com_act_activity t on s.activity_id=t.id and t.status=5")
List<ComActActivityVO> listActivityByPhone(String phone);
@Select("select t.id from (\n" +
@@ -106,7 +130,7 @@
"com_act_activity a \n" +
"LEFT JOIN com_act_act_sign s on a.id=s.activity_id \n" +
"WHERE\n" +
- "a.`status` in(3,4) and DATEDIFF(SYSDATE(),a.sign_up_end)>=0\n" +
+ "a.`status` in(3,4) and TIMESTAMPDIFF(MINUTE,SYSDATE(),a.sign_up_end)<=0\n" +
"GROUP BY a.id)t WHERE t.usernum<participant_min or t.volunteernum<volunteer_min")
List<Long> selectTimedTaskActActivity();
@@ -118,12 +142,109 @@
"</script>")
int updateIdBatch(@Param("longs") List<Long> longs);
- @Update("update com_act_activity set `status`=2 where `status`=1 and DATEDIFF(SYSDATE(),publish_at)>=0")
+ @Update("update com_act_activity set `status`=2 where `status`=1 and TIMESTAMPDIFF(MINUTE,SYSDATE(),publish_at)<=0")
int updateStatusToNotBegin();
- @Update("update com_act_activity set `status`=3 where `status`=2 and DATEDIFF(SYSDATE(),sign_up_begin)>=0")
+ @Update("update com_act_activity set `status`=3 where `status`=2 and TIMESTAMPDIFF(MINUTE,SYSDATE(),sign_up_begin)<=0")
int updateStatusToBeginSign();
- @Update("update com_act_activity set `status`=(if(DATEDIFF(SYSDATE(),end_at)>=0,5,4)) where `status`=3 and DATEDIFF(SYSDATE(),begin_at)>=0")
+ @Update("update com_act_activity set `status`=(if(DATEDIFF(SYSDATE(),end_at)>=0,5,4)) where `status` in (3,4) and TIMESTAMPDIFF(MINUTE,SYSDATE(),sign_up_end)<=0")
int updateStatusToBeginActiveOrEnd();
+ @Select("<script> " +
+ "select t.* from (\n" +
+ "SELECT \n" +
+ "a.id,\n" +
+ "a.activity_name,\n" +
+ "u.`name` sponsorName,\n" +
+ "a.activity_addr,\n" +
+ "a.participant_max,\n" +
+ "count(if(s.is_volunteer=1,null,s.id))participant_now,\n"+
+ "a.volunteer_max,\n" +
+ "count(if(s.is_volunteer=1,s.id,null))volunteer_now,\n"+
+ "a.`status`,\n" +
+ "a.publish_at,\n" +
+ "a.begin_at,\n" +
+ "a.end_at,\n" +
+ "a.sign_up_begin,\n" +
+ "a.sign_up_end\n" +
+ "FROM\n" +
+ "\tcom_act_activity a \n" +
+ "\tLEFT JOIN sys_user u on a.sponsor_id=u.user_id\n" +
+ "\tLEFT JOIN com_act_act_sign s on a.id=s.activity_id\n" +
+ "WHERE\n" +
+ "\t a.`status` = 1 and a.community_id=#{comActActivityVO.communityId}\n" +
+ "<if test='comActActivityVO.activityName != null and comActActivityVO.activityName !=""'>" +
+ "\tand a.activity_name LIKE concat( #{comActActivityVO.activityName}, '%' ) \n" +
+ " </if> " +
+ "<if test='comActActivityVO.status != null and comActActivityVO.status !=0 and comActActivityVO.status !=1'>" +
+ "AND a.`status` = 99 \n" +
+ " </if> " +
+ "<if test='comActActivityVO.beginAt != null '>" +
+ "AND a.begin_at <![CDATA[ >= ]]> #{comActActivityVO.beginAt} AND a.end_at <![CDATA[ <= ]]> #{comActActivityVO.endAt} \n" +
+ " </if> " +
+ "group by a.id\n" +
+ "\t\n" +
+ "\tunion all\n" +
+ "select t1.* from (\n"+
+ "\t\n" +
+ "\tSELECT \n" +
+ "a.id,\n" +
+ "a.activity_name,\n" +
+ "u.`name` sponsorName,\n" +
+ "a.activity_addr,\n" +
+ "a.participant_max,\n" +
+ "count(if(s.is_volunteer=1,null,s.id))participant_now,\n"+
+ "a.volunteer_max,\n" +
+ "count(if(s.is_volunteer=1,s.id,null))volunteer_now,\n"+
+ "a.`status`,\n" +
+ "a.publish_at,\n" +
+ "a.begin_at,\n" +
+ "a.end_at,\n" +
+ "a.sign_up_begin,\n" +
+ "a.sign_up_end\n" +
+ "FROM\n" +
+ "\tcom_act_activity a \n" +
+ "\tLEFT JOIN sys_user u on a.sponsor_id=u.user_id\n" +
+ "\tLEFT JOIN com_act_act_sign s on a.id=s.activity_id\n" +
+ "WHERE\n" +
+ "\t a.`status` != 1 and a.community_id=#{comActActivityVO.communityId}\n" +
+ "<if test='comActActivityVO.activityName != null and comActActivityVO.activityName !=""'>" +
+ "\tand a.activity_name LIKE concat( #{comActActivityVO.activityName}, '%' ) \n" +
+ " </if> " +
+ "<if test='comActActivityVO.status != null and comActActivityVO.status !=0 '>" +
+ "AND a.`status` = #{comActActivityVO.status} \n" +
+ " </if> " +
+ "<if test='comActActivityVO.beginAt != null '>" +
+ "AND a.begin_at <![CDATA[ >= ]]> #{comActActivityVO.beginAt} AND a.end_at <![CDATA[ <= ]]> #{comActActivityVO.endAt} \n" +
+ " </if> " +
+ " group by a.id order by a.publish_at desc)t1 )t"+
+ "</script>")
+ IPage<ComActActivityVO> pageActivityCommunityBack(Page page, @Param("comActActivityVO") ComActActivityVO comActActivityVO);
+
+ @Update("update com_act_activity set `status`=4 where `status`=3 and TIMESTAMPDIFF(MINUTE,SYSDATE(),sign_up_end)<=0")
+ int updateStatusToBeginAfterSingEnd();
+ @Select("select GROUP_CONCAT(t.x1,',',t.x2,',',t.x3,',',t.x4) from (\n" +
+ "SELECT\n" +
+ "(select COUNT(d.id) from com_act_discuss d where d.community_id=#{communityId})x1,\n" +
+ "(select COUNT(w.id) from com_act_micro_wish w where w.community_id=#{communityId})x2,\n" +
+ "(select COUNT(p.id) from com_act_easy_photo p where p.community_id=#{communityId})x3,\n" +
+ "\tCOUNT( a.id ) x4\n" +
+ "FROM\n" +
+ "\tcom_pb_activity a \n" +
+ "WHERE\n" +
+ "\t a.community_id =#{communityId})t")
+ String selectCommunityGovernanceTrendsVO(Long communityId);
+ @Select("\n" +
+ "\tSELECT\n" +
+ "\t(select COUNT(d.id) from com_act_discuss d where DATE_FORMAT(d.create_at,'%Y-%m-%d')=DATE_FORMAT(#{date},'%Y-%m-%d') and d.community_id=#{communityId})discuss,\n" +
+ "\t(select COUNT(w.id) from com_act_micro_wish w where DATE_FORMAT(w.create_at,'%Y-%m-%d')=DATE_FORMAT(#{date},'%Y-%m-%d') and w.community_id=#{communityId})microWish,\n" +
+ "\t(select COUNT(p.id) from com_act_easy_photo p where DATE_FORMAT(p.create_at,'%Y-%m-%d')=DATE_FORMAT(#{date},'%Y-%m-%d') and p.community_id=#{communityId})eashPhoto,\n" +
+ "\t(select COUNT(pa.id) from com_pb_activity pa where DATE_FORMAT(pa.create_at,'%Y-%m-%d')=DATE_FORMAT(#{date},'%Y-%m-%d') and pa.community_id=#{communityId})pbActivity,\n" +
+ "\t\tCOUNT( a.id ) actActivity\n" +
+ "\tFROM\n" +
+ "\t\tcom_pb_activity a \n" +
+ "\tWHERE\n" +
+ "\t\tDATE_FORMAT( a.create_at, '%Y-%m-%d' )=DATE_FORMAT(#{date},'%Y-%m-%d') \n" +
+ "\t\tAND a.community_id =#{communityId}")
+ CommunityActivitiesVO selectCommunityActivitiesVO(@Param("communityId") Long communityId, @Param("date")Date date);
}
--
Gitblit v1.7.1