springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/bigscreen/work/ScreenDiscussListDTO.java
New file @@ -0,0 +1,39 @@ package com.panzhihua.common.model.dtos.community.bigscreen.work; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotNull; @Data @ApiModel("工作大屏一起议列表请求参数") public class ScreenDiscussListDTO { @ApiModelProperty(value = "分页每页数量",example = "10") private Long pageSize = 10L; @ApiModelProperty(value = "分页当前记录数",example = "1") private Long pageNum = 1L; @ApiModelProperty(value = "社区id", example = "2", required = true) @NotNull(message = "社区id不能为空") private Long communityId; @ApiModelProperty(value="查询开始时间") private String startTime; @ApiModelProperty(value="查询结束时间") private String endTime; @ApiModelProperty(value="发布类型 1 图文 2 投票") private Integer type; /** * 发布类型 1 图文 2 投票 */ public interface type{ int tw = 1; int tp = 2; } } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/screen/event/EventListVO.java
@@ -62,7 +62,10 @@ @ApiModelProperty("事件处理状态(1待处理、2待验证、3已上报、4已解决、5草稿箱、6已撤销、7已失效 8 已发布)") private Integer eventDealStatus; @ApiModelProperty("事件发生地点") private String propagandaType; @ApiModelProperty("事件类型") private String eventClazz; @ApiModelProperty("发生区域") private String gridName; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/screen/event/EventNewStatisticsVO.java
@@ -25,7 +25,7 @@ @ApiModelProperty("发布人头像") private String imageUrl; @ApiModelProperty("发布时间") @ApiModelProperty("事件上报时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createAt; @@ -50,12 +50,21 @@ @ApiModelProperty("事件分类1治安隐患、2公共服务、3矛盾纠纷、4不稳定因素、5突发事件、6特殊人群信息上报") private Integer eventType; @ApiModelProperty("事件处理状态(1待处理、4已解决)") @ApiModelProperty("事件分类(1、办事事件2、宣传事件3、阅读事件)") private Integer eventCategory; @ApiModelProperty("事件处理状态(1待处理、2待验证、3已上报、4已解决、5草稿箱、6已撤销、7已失效 8 已发布)") private Integer eventDealStatus; @ApiModelProperty("随手拍图片集合") private String photoPathList; @ApiModelProperty("事件类型") private String eventClazz; @ApiModelProperty("发生区域") private String gridName; @ApiModelProperty(value = "音频") private List<EventResourceVO> audios; springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/screen/event/EventTransferRecordVO.java
@@ -1,5 +1,6 @@ package com.panzhihua.common.model.vos.community.screen.event; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -11,8 +12,9 @@ public class EventTransferRecordVO { @ApiModelProperty("事件处理时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date processDate; @ApiModelProperty("事件处理结果") private Date processResult; private String processResult; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/screen/work/DiscussListVO.java
New file @@ -0,0 +1,53 @@ package com.panzhihua.common.model.vos.community.screen.work; import com.fasterxml.jackson.annotation.JsonFormat; import com.panzhihua.common.model.vos.community.ComActDiscussOptionVO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; import java.util.List; @Data @ApiModel("大屏一起议列表返回参数") public class DiscussListVO { @ApiModelProperty("主键id") private Long id; @ApiModelProperty("发布人昵称") private String userName; @ApiModelProperty("发布人id") private Long userId; @ApiModelProperty("发布人头像") private String imageUrl; @ApiModelProperty("发布类型 1 图文 2 投票") private Integer type; @ApiModelProperty("发布时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createAt; @ApiModelProperty("发布主题") private String discussSubject; @ApiModelProperty("投票标题") private String voteTitle; @ApiModelProperty("图片地址 多个用逗号隔开") private String photoPah; @ApiModelProperty("评论数量") private Integer commentCount; @ApiModelProperty("点赞数量") private Integer fabulousCount; @ApiModelProperty("投票选项列表") private List<ComActDiscussOptionVO> discussOptionList; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -10,6 +10,7 @@ import com.panzhihua.common.model.dtos.community.bigscreen.BigScreenStatisticPartyActivityDTO; import com.panzhihua.common.model.dtos.community.bigscreen.PageBigScreenStatisticPartyOrg; import com.panzhihua.common.model.dtos.community.bigscreen.event.ScreenEventListDTO; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO; import com.panzhihua.common.model.dtos.elders.ComEldersAuthGetResultDTO; import com.panzhihua.common.model.dtos.elders.ComEldersAuthPageDTO; import com.panzhihua.common.model.dtos.elders.ComEldersAuthUserAddAppDTO; @@ -3026,4 +3027,13 @@ */ @PostMapping("/screen/getScreenEventDetail") R getScreenEventDetail(@RequestBody BigScreenEventDetailDTO eventDetailDTO); /** * 工作大屏-一起议列表 * @param discussListDTO 请求参数 * @return 一起议列表 */ @PostMapping("/screen/work/getScreenDiscussList") R getScreenDiscussList(@RequestBody ScreenDiscussListDTO discussListDTO); } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/BigScreenStatisticsApi.java
@@ -6,6 +6,7 @@ import com.panzhihua.common.model.vos.community.screen.civil.CivilStatisticsVO; import com.panzhihua.common.model.vos.community.screen.event.EventGridStatisticsVO; import com.panzhihua.common.model.vos.community.screen.event.EventListVO; import com.panzhihua.common.model.vos.community.screen.event.EventNewStatisticsVO; import com.panzhihua.common.model.vos.community.screen.event.EventStatisticsVO; import com.panzhihua.common.model.vos.community.screen.index.IndexStatisticsVO; import com.panzhihua.common.service.community.CommunityService; @@ -52,7 +53,7 @@ return communityService.getScreenEvent(communityId); } @ApiOperation(value = "事件大屏详情接口@lyq",response = EventStatisticsVO.class) @ApiOperation(value = "事件大屏详情接口@lyq",response = EventNewStatisticsVO.class) @PostMapping("/event/detail/noToken") public R eventDetail(@RequestBody BigScreenEventDetailDTO eventDetailDTO) { if(eventDetailDTO.getEventId() == null || eventDetailDTO.getType() == null){ springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ScreenWorkApi.java
@@ -1,16 +1,15 @@ package com.panzhihua.community_backstage.api; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.screen.work.DiscussListVO; import com.panzhihua.common.model.vos.screen.*; import com.panzhihua.common.service.community.CommunityService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -107,13 +106,17 @@ @ApiOperation(value = "工作情况@xyh",response = ComActWorkScreenVO.class) @GetMapping("/workCount") public R workCount(@RequestParam("communityId") Long communityId){ return communityService.workCount(communityId); } @ApiOperation(value = "工作大屏一起议列表接口@lyq",response = DiscussListVO.class) @PostMapping("/discuss/list") public R discussList(@RequestBody ScreenDiscussListDTO discussListDTO) { if(discussListDTO.getCommunityId() == null){ return R.fail("参数错误"); } return communityService.getScreenDiscussList(discussListDTO); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ScreenWorkApi.java
@@ -1,11 +1,10 @@ package com.panzhihua.service_community.api; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.service_community.service.ComActDiscussService; import com.panzhihua.service_community.service.ScreenWorkService; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -19,6 +18,8 @@ @Resource private ScreenWorkService screenWorkService; @Resource private ComActDiscussService comActDiscussService; /** * @@ -112,4 +113,14 @@ R workCount(@RequestParam("communityId")Long communityId){ return screenWorkService.workCount(communityId); } /** * 工作大屏-一起议列表 * @param discussListDTO 请求参数 * @return 一起议列表 */ @PostMapping("/getScreenDiscussList") public R getScreenDiscussList(@RequestBody ScreenDiscussListDTO discussListDTO) { return R.ok(comActDiscussService.getScreenDiscussList(discussListDTO)); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDiscussDAO.java
@@ -5,10 +5,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.model.dtos.community.PageComActDiscussCommentDTO; import com.panzhihua.common.model.dtos.community.PageComActDiscussDTO; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.community.ComActDiscussCommentVO; import com.panzhihua.common.model.vos.community.ComActDiscussOptionVO; import com.panzhihua.common.model.vos.community.ComActDiscussVO; import com.panzhihua.common.model.vos.community.ComActVO; import com.panzhihua.common.model.vos.community.screen.work.DiscussListVO; import com.panzhihua.common.model.vos.screen.CarouselInfoVO; import com.panzhihua.service_community.model.dos.ComActDiscussDO; import org.apache.ibatis.annotations.Mapper; @@ -40,27 +43,27 @@ LoginUserInfoVO selectUserByUserId(Long userId); @Select("<script> " + "select t.* from ("+ "SELECT\n" + "d.id,\n" + "d.`discuss_subject`,\n" + "d.type,\n" + "COUNT( DISTINCT c.id ) commentNum,\n" + "u.name userName,\n" + "u.nick_name userNickName,\n" + "d.create_at \n" + "FROM\n" + "com_act_discuss d\n" + "JOIN sys_user u ON d.user_id = u.user_id\n" + "LEFT JOIN com_act_discuss_comment c ON d.id = c.discuss_id \n" + "SELECT " + "d.id, " + "d.`discuss_subject`, " + "d.type, " + "COUNT( DISTINCT c.id ) commentNum, " + "u.name userName, " + "u.nick_name userNickName, " + "d.create_at " + "FROM " + "com_act_discuss d " + "JOIN sys_user u ON d.user_id = u.user_id " + "LEFT JOIN com_act_discuss_comment c ON d.id = c.discuss_id " + " where d.community_id=#{pageComActDiscussDTO.communityId}" + "<if test='pageComActDiscussDTO.subject != null and pageComActDiscussDTO.subject.trim() != ""'>" + " and d.`discuss_subject` LIKE concat( #{pageComActDiscussDTO.subject}, '%' ) \n" + " and d.`discuss_subject` LIKE concat( #{pageComActDiscussDTO.subject}, '%' ) " + " </if> " + "<if test='pageComActDiscussDTO.begin != null '>" + "AND d.create_at BETWEEN #{pageComActDiscussDTO.begin} \n" + "AND #{pageComActDiscussDTO.end} \n" + "AND d.create_at BETWEEN #{pageComActDiscussDTO.begin} " + "AND #{pageComActDiscussDTO.end} " + " </if> " + "GROUP BY\n" + "GROUP BY " + "d.id" + ")t order by t.create_at desc "+ "</script>") @@ -68,108 +71,108 @@ @Select("<script> " + "select * from ("+ "SELECT\n" + "u.`name` userName,\n" + "u.nick_name userNickName,\n" + "u.phone,\n" + "c.`comment`,\n" + "c.`parent_id`,\n" + "COUNT(DISTINCT cu.id ) num,\n" + "c.create_at,\n" + "c.id \n" + "FROM\n" + "com_act_discuss_comment c\n" + "JOIN sys_user u ON c.user_id = u.user_id \n" + "SELECT " + "u.`name` userName, " + "u.nick_name userNickName, " + "u.phone, " + "c.`comment`, " + "c.`parent_id`, " + "COUNT(DISTINCT cu.id ) num, " + "c.create_at, " + "c.id " + "FROM " + "com_act_discuss_comment c " + "JOIN sys_user u ON c.user_id = u.user_id " + "<if test='pageComActDiscussCommentDTO.name != null and pageComActDiscussCommentDTO.name.trim() != ""'>" + "AND u.`name` LIKE concat( #{pageComActDiscussCommentDTO.name}, '%' ) \n" + "AND u.`name` LIKE concat( #{pageComActDiscussCommentDTO.name}, '%' ) " + " </if> " + "<if test='pageComActDiscussCommentDTO.account != null and pageComActDiscussCommentDTO.account.trim() != ""'>" + "AND u.phone LIKE concat( #{pageComActDiscussCommentDTO.account}, '%' )\n" + "AND u.phone LIKE concat( #{pageComActDiscussCommentDTO.account}, '%' ) " + " </if> " + "LEFT JOIN com_act_discuss_comment_user cu ON c.id = cu.disscuss_comment_id \n" + "LEFT JOIN com_act_discuss_comment_user cu ON c.id = cu.disscuss_comment_id " + " where c.discuss_id=#{pageComActDiscussCommentDTO.id}" + "<if test='pageComActDiscussCommentDTO.comment != null and pageComActDiscussCommentDTO.comment.trim() != ""'>" + " and c.`comment` LIKE concat( '%', #{pageComActDiscussCommentDTO.comment" + "}, '%' ) \n" + "}, '%' ) " + " </if> " + "GROUP BY\n" + "c.id\n" + "GROUP BY " + "c.id " + ")t order by t.create_at desc"+ "</script>") IPage<ComActDiscussCommentVO> pageDiscussComment(Page page, @Param("pageComActDiscussCommentDTO")PageComActDiscussCommentDTO pageComActDiscussCommentDTO); @Select("<script> " + "select t.* from ("+ "SELECT\n" + "d.id,\n" + "d.vote_title,\n" + "if(d.address is null or d.address='null',a.name,d.address )address,\n" + "d.photo_pah,\n" + "d.`discuss_subject`,\n" + "d.type,\n" + "COUNT( DISTINCT c.id ) commentNum,\n" + "COUNT( DISTINCT du.id ) signNum,\n" + "if(u.type=1,u.name,a.name) userName,\n" + "if(u.type=1,u.nick_name,a.name) userNickName,\n" + "if(du.id is not null,1,0) haveSign,\n" + "if(ou.id is not null,1,0) haveVote,\n" + "u.image_url,\n" + "d.create_at \n" + "FROM\n" + "com_act_discuss d\n" + "JOIN sys_user u ON d.user_id = u.user_id\n" + "JOIN com_act a ON d.community_id = a.community_id\n" + "LEFT JOIN com_act_discuss_comment c ON d.id = c.discuss_id \n" + "LEFT JOIN com_act_discuss_user du ON d.id = du.discuss_id \n" + "LEFT JOIN com_act_discuss_option do ON d.id = do.discuss_id \n" + "LEFT JOIN com_act_discuss_option_user ou on do.id=ou.discuss_option_id and ou.user_id=#{pageComActDiscussDTO.loginUserId}\n" + "SELECT " + "d.id, " + "d.vote_title, " + "if(d.address is null or d.address='null',a.name,d.address )address, " + "d.photo_pah, " + "d.`discuss_subject`, " + "d.type, " + "COUNT( DISTINCT c.id ) commentNum, " + "COUNT( DISTINCT du.id ) signNum, " + "if(u.type=1,u.name,a.name) userName, " + "if(u.type=1,u.nick_name,a.name) userNickName, " + "if(du.id is not null,1,0) haveSign, " + "if(ou.id is not null,1,0) haveVote, " + "u.image_url, " + "d.create_at " + "FROM " + "com_act_discuss d " + "JOIN sys_user u ON d.user_id = u.user_id " + "JOIN com_act a ON d.community_id = a.community_id " + "LEFT JOIN com_act_discuss_comment c ON d.id = c.discuss_id " + "LEFT JOIN com_act_discuss_user du ON d.id = du.discuss_id " + "LEFT JOIN com_act_discuss_option do ON d.id = do.discuss_id " + "LEFT JOIN com_act_discuss_option_user ou on do.id=ou.discuss_option_id and ou.user_id=#{pageComActDiscussDTO.loginUserId} " + " where d.community_id=#{pageComActDiscussDTO.communityId}" + "<if test='pageComActDiscussDTO.subject != null and pageComActDiscussDTO.subject.trim() != ""'>" + " and d.`discuss_subject` LIKE concat( #{pageComActDiscussDTO.subject}, '%' ) \n" + " and d.`discuss_subject` LIKE concat( #{pageComActDiscussDTO.subject}, '%' ) " + " </if> " + "<if test='pageComActDiscussDTO.userId != null and pageComActDiscussDTO.userId !=0 '>" + " and d.`user_id` = #{pageComActDiscussDTO.userId} \n" + " and d.`user_id` = #{pageComActDiscussDTO.userId} " + " </if> " + "<if test='pageComActDiscussDTO.begin != null '>" + "AND d.create_at BETWEEN #{pageComActDiscussDTO.begin} \n" + "AND #{pageComActDiscussDTO.end} \n" + "AND d.create_at BETWEEN #{pageComActDiscussDTO.begin} " + "AND #{pageComActDiscussDTO.end} " + " </if> " + "GROUP BY\n" + "GROUP BY " + "d.id" + ")t order by t.create_at desc "+ "</script>") IPage<ComActDiscussVO> pageDiscussApplets(Page page, @Param("pageComActDiscussDTO")PageComActDiscussDTO pageComActDiscussDTO); @Select("<script> " + "select * from ("+ "SELECT\n" + "u.`name` userName,\n" + "u.nick_name userNickName,\n" + "u.`image_url`,\n" + "u.phone,\n" + "c.`comment`,\n" + "c.`parent_id`,\n" + "c.`is_author`,\n" + "c.`is_topping`,\n" + "COUNT( cu.id ) num,\n" + "c.create_at,\n" + "c.id \n" + "FROM\n" + "com_act_discuss_comment c\n" + "JOIN sys_user u ON c.user_id = u.user_id \n" + "JOIN com_act_discuss d ON c.discuss_id = d.id \n" + "SELECT " + "u.`name` userName, " + "u.nick_name userNickName, " + "u.`image_url`, " + "u.phone, " + "c.`comment`, " + "c.`parent_id`, " + "c.`is_author`, " + "c.`is_topping`, " + "COUNT( cu.id ) num, " + "c.create_at, " + "c.id " + "FROM " + "com_act_discuss_comment c " + "JOIN sys_user u ON c.user_id = u.user_id " + "JOIN com_act_discuss d ON c.discuss_id = d.id " + "<if test='pageComActDiscussCommentDTO.name != null and pageComActDiscussCommentDTO.name.trim() != ""'>" + "AND u.`name` LIKE concat( #{pageComActDiscussCommentDTO.name}, '%' ) \n" + "AND u.`name` LIKE concat( #{pageComActDiscussCommentDTO.name}, '%' ) " + " </if> " + "<if test='pageComActDiscussCommentDTO.account != null and pageComActDiscussCommentDTO.account.trim() != ""'>" + "AND u.phone LIKE concat( #{pageComActDiscussCommentDTO.account}, '%' )\n" + "AND u.phone LIKE concat( #{pageComActDiscussCommentDTO.account}, '%' ) " + " </if> " + "LEFT JOIN com_act_discuss_comment_user cu ON c.id = cu.disscuss_comment_id \n" + "LEFT JOIN com_act_discuss_comment_user cu ON c.id = cu.disscuss_comment_id " + " where c.discuss_id=#{pageComActDiscussCommentDTO.id} and parent_id=0 " + "<if test='pageComActDiscussCommentDTO.comment != null and pageComActDiscussCommentDTO.comment.trim() != ""'>" + " and c.`comment` LIKE concat( '%', #{pageComActDiscussCommentDTO.comment" + "}, '%' ) \n" + "}, '%' ) " + " </if> " + "GROUP BY\n" + "c.id\n" + "GROUP BY " + "c.id " + ")t order by t.is_topping desc , t.create_at desc"+ "</script>") IPage<ComActDiscussCommentVO> pageDiscussCommentApplets(Page page, @Param("pageComActDiscussCommentDTO")PageComActDiscussCommentDTO pageComActDiscussCommentDTO); @@ -177,16 +180,16 @@ @Select("select name,address from com_act where community_id=#{communityId}") ComActVO selectCommunity(Long communityId); @Select("SELECT \n" + "if(du.id is not null,1,0)haveSign,\n" + "if(ou.id is not null,1,0)haveVote\n" + "FROM\n" + "com_act_discuss d \n" + "LEFT JOIN com_act_discuss_user du on d.id=du.discuss_id and du.`user_id`=#{loginUserId}\n" + "LEFT JOIN com_act_discuss_option op on d.id=op.discuss_id\n" + "LEFT JOIN com_act_discuss_option_user ou on op.id=ou.discuss_option_id and ou.user_id=#{loginUserId}\n" + "WHERE\n" + "d.id =#{id}\n" + @Select("SELECT " + "if(du.id is not null,1,0)haveSign, " + "if(ou.id is not null,1,0)haveVote " + "FROM " + "com_act_discuss d " + "LEFT JOIN com_act_discuss_user du on d.id=du.discuss_id and du.`user_id`=#{loginUserId} " + "LEFT JOIN com_act_discuss_option op on d.id=op.discuss_id " + "LEFT JOIN com_act_discuss_option_user ou on op.id=ou.discuss_option_id and ou.user_id=#{loginUserId} " + "WHERE " + "d.id =#{id} " + "GROUP BY d.id") ComActDiscussVO selectHaveSignAndHaveVote(@Param("id") Long id, @Param("loginUserId")Long loginUserId); @@ -220,4 +223,47 @@ @Select(" SELECT id,discuss_subject AS content,IF(type = 1,'图文','投票') AS typeName FROM com_act_discuss WHERE community_id = #{communityId} ORDER BY create_at DESC LIMIT #{pageSize}") List<CarouselInfoVO> screenDiscuss(@Param("communityId") Long communityId, @Param("pageSize")Integer pageSize); @Select("<script> " + "SELECT " + " cad.id, " + " su.nick_name AS userName, " + " su.image_url, " + " cad.create_at, " + " cad.type, " + " cad.discuss_subject, " + " cad.photo_pah " + "FROM " + " com_act_discuss AS cad " + " LEFT JOIN sys_user AS su ON su.user_id = cad.user_id " + " <where> "+ "<if test='discussListDTO.communityId != null '>" + " and cad.community_id = #{discussListDTO.communityId} " + " </if> " + "<if test='discussListDTO.startTime != null '>" + " and cad.community_id = #{discussListDTO.communityId} " + " </if> " + "<if test='discussListDTO.startTime!=null and discussListDTO.startTime != ""'>" + " AND DATE_FORMAT(cad.create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ >= ]]> #{discussListDTO.startTime} " + " </if> " + "<if test='discussListDTO.endTime!=null and discussListDTO.endTime != ""'>" + " AND DATE_FORMAT(cad.create_at,'%Y-%m-%d %H:%i:%s') <![CDATA[ <= ]]> #{discussListDTO.endTime} " + " </if> " + "<if test='discussListDTO.type!=null'>" + " AND cad.type = #{discussListDTO.type} " + " </if> " + " </where> "+ "ORDER BY " + " cad.create_at DESC " + " </script>") IPage<DiscussListVO> getScreenDiscussList(Page page, @Param("discussListDTO") ScreenDiscussListDTO discussListDTO); @Select("SELECT id, discuss_id, create_at, option_content" + ",( SELECT count( id ) FROM com_act_discuss_option_user WHERE discuss_option_id = c.id ) AS num " + " FROM " + " com_act_discuss_option AS c " + " WHERE c.discuss_id = #{discussId}" + " ORDER BY " + " num DESC") List<ComActDiscussOptionVO> getScreenDiscussOptionList(@Param("discussId") Long discussId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java
@@ -809,15 +809,18 @@ @Select("SELECT " + " su.nick_name AS userName, " + " su.image_url AS imageUrl, " + " e.happen_time as createAt, " + " e.create_at as createAt, " + " e.event_des, " + " e.event_clazz, " + " e.danger_level, " + " e.urgent, " + " e.major, " + " e.happen_address, " + " e.happent_lat_lng, " + " e.event_type, " + " e.event_category, " + " e.id, " + " egd.grid_name, " + " e.event_deal_status " + "FROM " + " `event` AS e " + @@ -830,4 +833,7 @@ @Select("select process_date,process_result from event_transfer_record where event_id = #{eventId}") List<EventTransferRecordVO> getEventScreenEventTransList(@Param("eventId") Long eventId); @Select("select count(id) from com_elders_auth_elderly WHERE community_id = #{communityId}") Integer getStatisticsCount(@Param("communityId") Long communityId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActDiscussService.java
@@ -1,6 +1,7 @@ package com.panzhihua.service_community.service; import com.panzhihua.common.model.dtos.community.*; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO; import com.panzhihua.common.model.vos.R; /** @@ -101,4 +102,11 @@ * @return 点赞结果 */ R putDiscussCommentUser(ComActDiscussCommentUserDTO comActDiscussUserDTO); /** * 工作大屏-一起议列表 * @param discussListDTO 请求参数 * @return 一起议列表 */ R getScreenDiscussList(ScreenDiscussListDTO discussListDTO); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java
@@ -5,12 +5,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.model.dtos.community.*; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenDiscussListDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComActDiscussCommentVO; import com.panzhihua.common.model.vos.community.ComActDiscussOptionVO; import com.panzhihua.common.model.vos.community.ComActDiscussVO; import com.panzhihua.common.model.vos.community.ComActVO; import com.panzhihua.common.model.vos.community.screen.work.DiscussListVO; import com.panzhihua.service_community.dao.*; import com.panzhihua.service_community.model.dos.*; import com.panzhihua.service_community.service.ComActDiscussOptionService; @@ -557,4 +559,31 @@ } return R.fail(); } /** * 工作大屏-一起议列表 * @param discussListDTO 请求参数 * @return 一起议列表 */ @Override public R getScreenDiscussList(ScreenDiscussListDTO discussListDTO){ IPage<DiscussListVO> discussListVOIPage = comActDiscussDAO.getScreenDiscussList(new Page(discussListDTO.getPageNum(),discussListDTO.getPageSize()),discussListDTO); if(!discussListVOIPage.getRecords().isEmpty()){ discussListVOIPage.getRecords().forEach(discussListVO -> { //查询评论数量和点赞数量 Integer integer = comActDiscussCommentDAO.selectCount(new QueryWrapper<ComActDiscussCommentDO>().lambda().eq(ComActDiscussCommentDO::getDiscussId, discussListVO.getId())); discussListVO.setCommentCount(integer); Integer integer1 = comActDiscussUserDAO.selectCount(new QueryWrapper<ComActDiscussUserDO>().lambda().eq(ComActDiscussUserDO::getDiscussId, discussListVO.getId())); discussListVO.setFabulousCount(integer1); if(discussListVO.getType().equals(ScreenDiscussListDTO.type.tp)){//投票 List<ComActDiscussOptionVO> discussOptionList = comActDiscussDAO.getScreenDiscussOptionList(discussListVO.getId()); if(!discussOptionList.isEmpty()){ discussListVO.setDiscussOptionList(discussOptionList); } } }); } return R.ok(discussListVOIPage); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -878,6 +878,11 @@ specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(264); specialStatisticsVOList.add(specialStatisticsVO); }else if(userTag.getTagName().equals("高龄老人")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(comMngPopulationDAO.getStatisticsCount(communityId)); specialStatisticsVOList.add(specialStatisticsVO); }else{ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); @@ -1057,6 +1062,11 @@ specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(264); specialStatisticsVOList.add(specialStatisticsVO); }else if(userTag.getTagName().equals("高龄老人")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(comMngPopulationDAO.getStatisticsCount(communityId)); specialStatisticsVOList.add(specialStatisticsVO); }else{ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); @@ -1147,7 +1157,69 @@ comActPopulationScreenVO.setTotalNum(vo.getPopulationTotal() == null ? 0 : vo.getPopulationTotal()); comActPopulationScreenVO.setLocalNum(vo.getLocalTotal() == null ? 0 : vo.getLocalTotal().longValue()); comActPopulationScreenVO.setOutNum(vo.getOutTotal() == null ? 0 : vo.getOutTotal().longValue()); comActPopulationScreenVO.setSpecialNum(vo.getSpecialTotal() == null ? 0 : vo.getSpecialTotal().longValue()); //查询特殊人群统计 List<IndexSpecialStatisticsVO> specialStatisticsVOList = new ArrayList<>(); //查询特殊人群标签列表 List<ComMngUserTagVO> userTagList = comMngPopulationDAO.getUserTagListByCommunityId(communityId); IndexSpecialStatisticsVO otherSpecialVO = new IndexSpecialStatisticsVO(); otherSpecialVO.setTitle("其他"); otherSpecialVO.setSum(0); if(!userTagList.isEmpty()){ userTagList.forEach(userTag -> { if(userTag != null){ if(userTag.getSysFlag().equals(0)){ Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); otherSpecialVO.setSum(otherSpecialVO.getSum() + count); }else{ if(StringUtils.isNotEmpty(userTag.getTagName())){ if(userTag.getTagName().equals("特扶家庭")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(22); specialStatisticsVOList.add(specialStatisticsVO); }else if(userTag.getTagName().equals("低保户")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(94); specialStatisticsVOList.add(specialStatisticsVO); }else if(userTag.getTagName().equals("低收入人群")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(2); specialStatisticsVOList.add(specialStatisticsVO); }else if(userTag.getTagName().equals("退役军人")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(264); specialStatisticsVOList.add(specialStatisticsVO); }else if(userTag.getTagName().equals("高龄老人")){ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); specialStatisticsVO.setSum(comMngPopulationDAO.getStatisticsCount(communityId)); specialStatisticsVOList.add(specialStatisticsVO); }else{ IndexSpecialStatisticsVO specialStatisticsVO = new IndexSpecialStatisticsVO(); specialStatisticsVO.setTitle(userTag.getTagName()); Integer count = comMngPopulationDAO.getSpecialStatisticsByLabel(userTag.getTagName()); specialStatisticsVO.setSum(count); specialStatisticsVOList.add(specialStatisticsVO); } } } } }); } //计算特殊人群总数 specialStatisticsVOList.add(otherSpecialVO); Integer specialNum = 0; if(!specialStatisticsVOList.isEmpty()){ for (IndexSpecialStatisticsVO special:specialStatisticsVOList) { specialNum += special.getSum(); } } comActPopulationScreenVO.setSpecialNum(specialNum.longValue()); //统计已使用社区通人数 Long count = populationDAO.countUsedCommunityPopulation(communityId); comActPopulationScreenVO.setUsedCommunityNum(count == null ? 0 : count); springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventMapper.xml
@@ -894,10 +894,11 @@ e.event_des, e.event_category, e.event_type, e.propaganda_type, e.event_clazz, e.happen_address, e.happent_lat_lng, e.happent_address, e.event_deal_status, egd.grid_name FROM `event` AS e