From 6873ee2b98283d9a876dfc6e5d878094e5de61d9 Mon Sep 17 00:00:00 2001 From: huanghongfa <18228131219@163.com> Date: 星期三, 20 一月 2021 11:30:46 +0800 Subject: [PATCH] 系统配置 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java | 141 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 141 insertions(+), 0 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 new file mode 100644 index 0000000..8f01a9b --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java @@ -0,0 +1,141 @@ +package com.panzhihua.service_community.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +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.partybuilding.PageActivityMembersVO; +import com.panzhihua.service_community.model.dos.ComActActivityDO; +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.List; + +/** + * @program: springcloud_k8s_panzhihuazhihuishequ + * @description: 社区活动 + * @author: huang.hongfa weixin hhf9596 qq 959656820 + * @create: 2020-12-07 13:59 + **/ +@Mapper +public interface ComActActivityDAO extends BaseMapper<ComActActivityDO> { + // @Select("<script> " + +// " <where>" + +// "<if test='nameCn != null and nameCn.trim() != ""'>" + +// " </if> " + +// "<if test='nameCn != null and nameCn.trim() != ""'>" + +// " </if> " + +// "<if test='nameCn != null and nameCn.trim() != ""'>" + +// " </if> " + +// " </where>" + +// "</script>") + @Select("<script> " + + "SELECT \n" + + "a.id,\n" + + "a.activity_name,\n" + + "u.`name` sponsorName,\n" + + "a.activity_addr,\n" + + "a.`status`,\n" + + "a.publish_at,\n" + + "a.begin_at,\n" + + "a.cover,\n" + + "a.end_at,\n" + + "a.volunteer_max,\n" + + "count(if(s.is_volunteer=1,s.id,null))volunteer_now,\n"+ + "count(if(s.is_volunteer=0,s.id,null))participant_now,\n"+ + "a.participant_max,\n" + + "a.sign_up_begin,\n" + + "a.sign_up_end\n" + + "FROM\n" + + "com_act_activity a \n" + + "join sys_user u on a.sponsor_id=u.user_id\n" + + "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 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.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> " + + " group by a.id "+ + " order by a.publish_at desc "+ + "</script>") + IPage<ComActActivityVO> pageActivity( Page page, @Param("comActActivityVO") ComActActivityVO comActActivityVO); + + @Select("SELECT \n" + + "u.name sponsorName,\n" + + "count(if(s.is_volunteer=1,s.id,null))volunteer_now,\n"+ + "count(if(s.is_volunteer=0,s.id,null))participant_now,\n"+ + "a.* \n" + + "FROM \n" + + "com_act_activity a \n" + + "join sys_user u on a.sponsor_id=u.user_id \n"+ + "left join com_act_act_sign s on a.id=s.activity_id \n"+ + "where a.id=#{id} \n"+ + " group by a.id " + ) + ComActActivityVO inforActivity(Long id); + + @Select("SELECT\n" + + "a.* \n" + + "FROM\n" + + "com_act_act_sign s\n" + + "JOIN com_act_activity a ON s.activity_id = a.id \n" + + "WHERE\n" + + "s.user_id = #{comActActivityVO.sponsorId} \n" + + "ORDER BY\n" + + "s.create_at DESC") + IPage<ComActActivityVO> pageMyActivity(Page page, @Param("comActActivityVO") ComActActivityVO comActActivityVO); + + @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" + + "SELECT \n" + + "a.id,\n" + + "a.activity_name,\n" + + "COUNT(case when s.is_volunteer=1 then s.id else null end )volunteernum,\n" + + "COUNT(case when s.is_volunteer=0 then s.id else null end)usernum,\n" + + "a.participant_min,\n" + + "a.volunteer_min\n" + + "FROM\n" + + "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 TIMESTAMPDIFF(HOUR,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(); + + @Update("<script> " + + "update com_act_activity set `status`=6 where id in\n" + + "<foreach item=\"item\" collection=\"longs\" separator=\",\" open=\"(\" close=\")\" index=\"\">\n"+ + "#{item}\n"+ + "</foreach>\n"+ + "</script>") + int updateIdBatch(@Param("longs") List<Long> longs); + + @Update("update com_act_activity set `status`=2 where `status`=1 and TIMESTAMPDIFF(HOUR,SYSDATE(),publish_at)<=0") + int updateStatusToNotBegin(); + + @Update("update com_act_activity set `status`=3 where `status`=2 and TIMESTAMPDIFF(HOUR,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 TIMESTAMPDIFF(HOUR,SYSDATE(),begin_at)<=0") + int updateStatusToBeginActiveOrEnd(); +} -- Gitblit v1.7.1