xyh
2021-06-16 3440dd3406fac18217bf59be0910127bb0d8a848
人口,工作大屏
14个文件已修改
13个文件已添加
929 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/BcDictionaryConstants.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ActWorkCountVO.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/CarouselInfoVO.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActActivityScreenVO.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActDiscussScreenVO.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActEasyPhotoScreenVO.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActMicroWishScreenVO.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActNeighborCircleScreenVO.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActPopulationScreenVO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActWorkScreenVO.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComPbWorkScreenVO.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/EastPhotoVO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/EasyPhotoDataVO.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/EasyPhotoPointVO.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/PbWorkVO.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDiscussDAO.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActEasyPhotoDAO.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActMicroWishDAO.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComPbDynDAO.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ScreenWorkService.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java 272 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/BcDictionaryConstants.java
@@ -45,5 +45,10 @@
     */
    public static final String PROFESSION = "profession";
    /**
     * 政治面貌
     */
    public static final String POLITICAL_OUTLOOK = "political_outlook";
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ActWorkCountVO.java
New file
@@ -0,0 +1,20 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @author xyh
 * @date 2021/6/16 18:03
 */
@ApiModel("工作情况汇报详细")
@Data
public class ActWorkCountVO {
    @ApiModelProperty("名称")
    private String name;
    @ApiModelProperty("数量")
    private Integer num;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/CarouselInfoVO.java
New file
@@ -0,0 +1,26 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * @author xyh
 * @date 2021/6/16 10:17
 */
@ApiModel("轮播信息")
@Data
public class CarouselInfoVO implements Serializable {
    private static final long serialVersionUID = -2716493758092750696L;
    @ApiModelProperty(value = "id")
    private Long id;
    @ApiModelProperty(value = "类型名称")
    private String typeName;
    @ApiModelProperty(value = "内容")
    private String content;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActActivityScreenVO.java
New file
@@ -0,0 +1,44 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/16 11:01
 */
@ApiModel("大屏-人口-社区活动")
@Data
public class ComActActivityScreenVO implements Serializable {
    private static final long serialVersionUID = 8892577774827785315L;
    @ApiModelProperty("微心愿轮播图")
    private List<String> imgs;
    @ApiModelProperty("总共发起")
    private Long totalNum;
    @ApiModelProperty(value = "本月新增")
    private Long currentNum;
    @ApiModelProperty(value = "居民活动")
    private Long commonNum;
    @ApiModelProperty(value = "居民活动参与人数")
    private Long commonPeopleNum;
    @ApiModelProperty(value = "志愿者活动")
    private Long volunteerNum;
    @ApiModelProperty(value = "志愿者活动参与人数")
    private Long volunteerPeopleNum;
    @ApiModelProperty("活动轮播列表")
    private List<CarouselInfoVO> list;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActDiscussScreenVO.java
New file
@@ -0,0 +1,38 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/16 13:16
 */
@ApiModel("大屏-人口-一起议")
@Data
public class ComActDiscussScreenVO implements Serializable {
    @ApiModelProperty("总共发起")
    private Long totalNum;
    @ApiModelProperty("本月新增")
    private Long currentNum;
    @ApiModelProperty("图文")
    private Long imgNum;
    @ApiModelProperty("图文参与人数")
    private Long imgPeopleNum;
    @ApiModelProperty("投票")
    private Long voteNum;
    @ApiModelProperty("投票参与人数")
    private Long votePeopleNum;
    @ApiModelProperty("一起议轮播列表")
    private List<CarouselInfoVO> list;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActEasyPhotoScreenVO.java
New file
@@ -0,0 +1,44 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/16 16:05
 */
@ApiModel("大屏-人口-随手拍")
@Data
public class ComActEasyPhotoScreenVO implements Serializable {
    @ApiModelProperty("本月新增")
    private Long currentNum;
    @ApiModelProperty("已处理随手拍")
    private List<EasyPhotoPointVO> deal;
    @ApiModelProperty("已公示随手拍")
    private List<EasyPhotoPointVO> pub;
    @ApiModelProperty("已审核随手拍")
    private List<EasyPhotoPointVO> approved;
    @ApiModelProperty("未处理")
    private Long noneDeal;
    @ApiModelProperty("公示比例")
    private Long pubPoint;
    @ApiModelProperty("平均耗时")
    private Long dealTime;
    @ApiModelProperty("随手拍线形列表")
    private List<EastPhotoVO> list;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActMicroWishScreenVO.java
New file
@@ -0,0 +1,29 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/16 10:14
 */
@ApiModel("大屏-工作-心愿单")
@Data
public class ComActMicroWishScreenVO implements Serializable {
    @ApiModelProperty("微心愿轮播图")
    private List<String> imgs;
    @ApiModelProperty(value = "本月新增")
    private Long currentNum;
    @ApiModelProperty(value = "等待实现")
    private Long willNum;
    @ApiModelProperty(value = "累计实现")
    private Long completedNum;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActNeighborCircleScreenVO.java
@@ -12,7 +12,7 @@
 * @date 2021/6/15 14:36
 */
@Data
@ApiModel("大屏邻里圈最新动态")
@ApiModel("大屏-工作-邻里圈")
public class ComActNeighborCircleScreenVO implements Serializable {
    private static final long serialVersionUID = 8407169650740659312L;
@@ -20,8 +20,8 @@
    @ApiModelProperty(value = "邻里圈图片轮播")
    private List<String> imgs;
    @ApiModelProperty(value = "邻里圈轮播信息")
    private List<NeighborCircleListVO> neighborCircles;
    @ApiModelProperty(value = "邻里圈轮播列表")
    private List<CarouselInfoVO> list;
    @ApiModelProperty(value = "本月新增")
    private Long currentNum;
@@ -38,14 +38,5 @@
    @ApiModelProperty(value = "分享量")
    private Long sharedNum;
    @ApiModel("邻里圈列表")
    @Data
    public class NeighborCircleListVO{
        @ApiModelProperty(value = "邻里圈id")
        private Long id;
        @ApiModelProperty(value = "邻里圈内容")
        private String releaseContent;
    }
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActPopulationScreenVO.java
@@ -12,7 +12,7 @@
 * @date 2021/6/15 14:36
 */
@Data
@ApiModel("大屏人口")
@ApiModel("大屏-人口")
public class ComActPopulationScreenVO implements Serializable {
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComActWorkScreenVO.java
New file
@@ -0,0 +1,35 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * @author xyh
 * @date 2021/6/16 18:00
 */
@ApiModel("大屏-工作-工作情况汇报")
@Data
public class ComActWorkScreenVO implements Serializable {
    private static final long serialVersionUID = 5969567628890256231L;
    @ApiModelProperty("平均耗时")
    private String avgTime;
    @ApiModelProperty("每天完成")
    private String everyDayNum;
    @ApiModelProperty("总完成度")
    private Integer totalCompletedPoint;
    @ApiModelProperty("已完成")
    private List<ActWorkCountVO> completetPoint;
    @ApiModelProperty("未完成")
    private List<ActWorkCountVO> nonePoint;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/ComPbWorkScreenVO.java
New file
@@ -0,0 +1,33 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
/**
 * @author xyh
 * @date 2021/6/16 14:38
 */
@ApiModel("大屏-人口-党建工作")
@Data
public class ComPbWorkScreenVO implements Serializable {
    @ApiModelProperty("总共发起")
    private Long totalNum;
    @ApiModelProperty("本月新增")
    private Long currentNum;
    @ApiModelProperty("党建宣传")
    private Long dynNum;
    @ApiModelProperty("党员活动")
    private Long activityNum;
    @ApiModelProperty("党建工作柱状图列表数据")
    private List<PbWorkVO> list;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/EastPhotoVO.java
New file
@@ -0,0 +1,28 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * @author xyh
 * @date 2021/6/16 14:45
 */
@Data
@ApiModel("随手拍线型数据")
public class EastPhotoVO implements Serializable {
    @ApiModelProperty("月份")
    private String month;
    @ApiModelProperty("随手拍数量")
    private Long total;
    @ApiModelProperty("新增随手拍数量")
    private Long adds;
    @ApiModelProperty("处理手拍数量")
    private Long deal;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/EasyPhotoDataVO.java
New file
@@ -0,0 +1,27 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @author xyh
 * @date 2021/6/16 16:27
 */
@ApiModel("随手拍线形图")
@Data
public class EasyPhotoDataVO {
    @ApiModelProperty("月份")
    private String month;
    @ApiModelProperty("随手拍数量")
    private Long total;
    @ApiModelProperty("新增随手拍")
    private Long adds;
    @ApiModelProperty("处理随手拍")
    private Long deal;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/EasyPhotoPointVO.java
New file
@@ -0,0 +1,20 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @author xyh
 * @date 2021/6/16 16:21
 */
@ApiModel("随手拍饼状图")
@Data
public class EasyPhotoPointVO {
    @ApiModelProperty("类型名")
    private String typeName;
    @ApiModelProperty("占比")
    private Integer point;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/screen/PbWorkVO.java
New file
@@ -0,0 +1,30 @@
package com.panzhihua.common.model.vos.screen;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * @author xyh
 * @date 2021/6/16 14:45
 */
@Data
@ApiModel("党建宣传、党员活动")
public class PbWorkVO implements Serializable {
    @ApiModelProperty("月份")
    private String month;
    @ApiModelProperty("党建宣传")
    private Long dyn;
    @ApiModelProperty("党员活动")
    private Long activity;
    @ApiModelProperty(hidden = true)
    private String start;
    @ApiModelProperty(hidden = true)
    private String end;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -2757,6 +2757,15 @@
    R saveBatchKeyPerson(@RequestBody List<KeyPersonInfoDTO> list);
    /**
     * 大屏统计实有人口
     * @param communityId
     * @return
     */
    @GetMapping("/screen/population/statistic")
    R statistic(@RequestParam("communityId")Long communityId);
    /**
     * 大屏统计邻里圈
     * @param communityId
     * @return
@@ -2765,10 +2774,49 @@
    R statisticNeighborCircle(@RequestParam("communityId") Long communityId);
    /**
     * 大屏统计实有人口
     * 大屏统计邻里圈
     */
    @GetMapping("/screen/work/wish")
    R wish(@RequestParam("communityId") Long communityId);
    /**
     * 大屏统计社区-活动
     * @param communityId
     * @return
     */
    @GetMapping("/screen/population/statistic")
    R statistic(@RequestParam("communityId")Long communityId);
    @GetMapping("/screen/work/activity")
    R activity(@RequestParam("communityId") Long communityId);
    /**
     * 大屏统计一起议
     * @param communityId
     * @return
     */
    @GetMapping("/screen/work/discuss")
    R discuss(@RequestParam("communityId") Long communityId);
    /**
     * 大屏统计党建工作
     * @param communityId
     * @return
     */
    @GetMapping("/screen/work/pbWork")
    R pbWork(@RequestParam("communityId")Long communityId);
    /**
     * 大屏统计随手拍
     * @param communityId
     * @return
     */
    @GetMapping("/screen/work/easyPhoto")
    R easyPhoto(@RequestParam("communityId")Long communityId);
    /**
     *  大屏统计工作情况
     * @param communityId
     * @return
     */
    @GetMapping("/screen/work/workCount")
    R workCount(@RequestParam("communityId")Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java
@@ -616,6 +616,13 @@
    }
    public static Date getDateM(Date start, int min) {
        Calendar date1 = Calendar.getInstance();
        date1.setTime(start);
        date1.add(12, min);
        return date1.getTime();
    }
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java
@@ -7,6 +7,7 @@
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.common.model.vos.screen.CarouselInfoVO;
import com.panzhihua.service_community.model.dos.ComActActivityDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -15,6 +16,7 @@
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -256,4 +258,17 @@
            "\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);
    @Select("SELECT COUNT(id) AS totalNum," +
            "(SELECT COUNT(id) FROM com_act_activity WHERE community_id = #{communityId} AND (status = 3 OR status = 4 OR status = 5) AND create_at LIKE CONCAT(#{nowDate},'%'))AS currentNum," +
            "(SELECT COUNT(id) FROM com_act_activity WHERE community_id = #{communityId} AND (status = 3 OR status = 4 OR status = 5) AND volunteer_max = 0)AS commonNum," +
            "(SELECT COUNT(aas.id) FROM com_act_activity a INNER JOIN com_act_act_sign aas ON a.id = aas.activity_id WHERE a.volunteer_max = 0 AND (a.status = 3 OR a.status = 4 OR a.status = 5) AND  a.community_id=#{communityId})AS commonPeopleNum," +
            "(SELECT COUNT(id) FROM com_act_activity WHERE community_id = #{communityId} AND (status = 3 OR status = 4 OR status = 5) AND participant_max = 0)AS volunteerNum," +
            "(SELECT COUNT(aas.id) FROM com_act_activity a INNER JOIN com_act_act_sign aas ON a.id = aas.activity_id WHERE a.community_id=#{communityId} AND a.participant_max = 0 AND (a.status = 3 OR a.status = 4 OR a.status = 5))AS volunteerPeopleNum" +
            " FROM com_act_activity where community_id=#{communityId} AND (status = 3 OR status = 4 OR status = 5)")
    Map<String, Long> countByCommunityId(@Param("communityId")Long communityId,@Param("nowDate")String nowDate);
    @Select("SELECT activity_name as content,IF(volunteer_max = 0,'居民活动','志愿者活动') AS typeName  FROM com_act_activity " +
            "WHERE community_id = #{communityId} AND (status = 3 OR status = 4 OR status = 5) ORDER BY create_at DESC LIMIT #{pageSize}")
    List<CarouselInfoVO> screenActivity(@Param("communityId")Long communityId, @Param("pageSize")Integer pageSize);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDiscussDAO.java
@@ -9,10 +9,14 @@
import com.panzhihua.common.model.vos.community.ComActDiscussCommentVO;
import com.panzhihua.common.model.vos.community.ComActDiscussVO;
import com.panzhihua.common.model.vos.community.ComActVO;
import com.panzhihua.common.model.vos.screen.CarouselInfoVO;
import com.panzhihua.service_community.model.dos.ComActDiscussDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -185,4 +189,35 @@
            "d.id =#{id}\n" +
            "GROUP BY d.id")
    ComActDiscussVO selectHaveSignAndHaveVote(@Param("id") Long id, @Param("loginUserId")Long loginUserId);
    @Select(" SELECT COUNT(id) AS totalNum," +
            "(SELECT COUNT(id)  FROM com_act_discuss WHERE community_id = 2 AND create_at LIKE CONCAT('','%'))AS currentNum," +
            "(SELECT COUNT(id)  FROM com_act_discuss WHERE community_id = 2 AND TYPE = 1)AS imgNum," +
            "(" +
            "SELECT COUNT(DISTINCT(user_id)) FROM (" +
            " SELECT c.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_comment c ON d.id = c.discuss_id WHERE d.community_id = 2 AND d.type = 1 " +
            " UNION ALL " +
            " SELECT u.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_comment c ON d.id = c.discuss_id INNER JOIN com_act_discuss_comment_user u ON c.id = u.disscuss_comment_id  WHERE d.community_id = 2 AND d.type = 1 " +
            "UNION ALL "  +
            " SELECT u.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_option o ON d.id = o.discuss_id INNER JOIN com_act_discuss_option_user u ON o.id = u.discuss_option_id  WHERE d.community_id = 2 AND d.type = 1 " +
            " UNION ALL " +
            " SELECT u.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_user u ON d.id = u.discuss_id WHERE d.community_id = 2 AND d.type = 1 " +
            ")d " +
            ")AS commonPeopleNum," +
            "(" +
            "SELECT COUNT(DISTINCT(user_id)) FROM (" +
            " SELECT c.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_comment c ON d.id = c.discuss_id WHERE d.community_id = 2 AND d.type = 2 " +
            " UNION ALL" +
            " SELECT u.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_comment c ON d.id = c.discuss_id INNER JOIN com_act_discuss_comment_user u ON c.id = u.disscuss_comment_id  WHERE d.community_id = 2 AND d.type = 2 " +
            "UNION ALL " +
            " SELECT u.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_option o ON d.id = o.discuss_id INNER JOIN com_act_discuss_option_user u ON o.id = u.discuss_option_id  WHERE d.community_id = 2 AND d.type = 2 " +
            " UNION ALL " +
            " SELECT u.user_id FROM  com_act_discuss d INNER JOIN com_act_discuss_user u ON d.id = u.discuss_id WHERE d.community_id = 2 AND d.type = 2 " +
            ")d " +
            ")AS volunteerPeopleNum " +
            " FROM com_act_discuss")
    Map<String, Long> countByCommunityId(@Param("communityId")Long communityId, @Param("date")String date);
    @Select(" SELECT 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);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActEasyPhotoDAO.java
@@ -5,12 +5,16 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
import com.panzhihua.common.model.vos.community.TodoEventsVO;
import com.panzhihua.common.model.vos.screen.EastPhotoVO;
import com.panzhihua.common.model.vos.screen.EasyPhotoDataVO;
import com.panzhihua.common.model.vos.screen.PbWorkVO;
import com.panzhihua.service_community.model.dos.ComActEasyPhotoDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -235,4 +239,33 @@
            "</script>"
    )
    IPage<ComActEasyPhotoVO> pageEasyPhotoApplets(Page page, @Param("comActEasyPhotoVO")ComActEasyPhotoVO comActEasyPhotoVO);
    @Select("SELECT t.name,COUNT(p.id) FROM com_act_easy_photo_type t LEFT JOIN com_act_easy_photo_type_relation r ON  t.id = r.easy_type_id " +
            "LEFT JOIN com_act_easy_photo p ON r.easy_id = p.id AND p.handle_status = 1 AND p.community_id = #{communityId} " +
            "GROUP BY t.name ")
    Map<String, Long> countDeal(@Param("communityId")Long communityId);
    @Select("SELECT t.name,COUNT(p.id) FROM com_act_easy_photo_type t LEFT JOIN com_act_easy_photo_type_relation r ON  t.id = r.easy_type_id " +
            "LEFT JOIN com_act_easy_photo p ON r.easy_id = p.id AND p.is_publicity = 1 AND p.community_id = #{communityId} " +
            "GROUP BY t.name ")
    Map<String, Long> countPub(@Param("communityId")Long communityId);
    @Select("SELECT t.name,COUNT(p.id) FROM com_act_easy_photo_type t LEFT JOIN com_act_easy_photo_type_relation r ON  t.id = r.easy_type_id " +
            "LEFT JOIN com_act_easy_photo p ON r.easy_id = p.id AND p.status = 4 AND p.community_id = #{communityId} " +
            "GROUP BY t.name ")
    Map<String, Long> countApproved(@Param("communityId")Long communityId);
    @Select("SELECT COUNT(id) AS noneDeal," +
            "(" +
            "(SELECT COUNT(id) FROM com_act_easy_photo WHERE community_id = #{communityId} AND STATUS = 4 AND handle_status = 2)*100/(SELECT COUNT(id) FROM com_act_easy_photo WHERE community_id = #{communityId} AND handle_status = 2) " +
            ") AS pubPoint," +
            "(SELECT AVG(TIMESTAMPDIFF(HOUR,create_at,feedback_at))  FROM com_act_easy_photo WHERE community_id = #{communityId} and handle_status = 2 ) AS dealTime " +
            "FROM com_act_easy_photo and community_id = #{communityId}")
    Map<String, Long> countByCommunityId(@Param("communityId")Long communityId);
    @Select("SELECT COUNT(id) AS total, " +
            "(SELECT COUNT(id) FROM com_act_easy_photo WHERE community_id = #{communityId} AND #{start} < create_at and create_at < #{end} ) AS adds, " +
            "(SELECT COUNT(id) FROM com_act_easy_photo WHERE community_id =#{communityId} AND handle_status = 2 AND #{start} < create_at and create_at < #{end}) AS deal " +
            "FROM com_act_easy_photo WHERE community_id = #{communityId} AND #{start} < create_at and create_at < #{end} ")
    EastPhotoVO countByTime(@Param("start")String start, @Param("end")String end, @Param("nowDate")String nowDate, @Param("communityId")Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActMicroWishDAO.java
@@ -12,6 +12,7 @@
import org.apache.ibatis.annotations.Update;
import java.util.List;
import java.util.Map;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -161,4 +162,12 @@
    @Update("update com_act_micro_wish set `status`=6, evaluate_at=now() where `status`=5 and TIMESTAMPDIFF(HOUR, feedback_at, SYSDATE())>=72")
    int updateStatusAutoConfirm();
    @Select("SELECT COUNT(id) AS completedNum," +
            "(SELECT COUNT(id) FROM com_act_micro_wish WHERE community_id = #{communityId} AND (status =1 OR status =2 OR status = 3 OR status = 5)) AS willNum ," +
            "(SELECT COUNT(id) FROM com_act_micro_wish WHERE community_id = #{communityId} AND (status =1 OR status =2 OR status = 3 OR status = 5 OR status = 6) AND create_at LIKE CONCAT(#{nowDate},'%')) AS currentNum " +
            "FROM com_act_micro_wish WHERE community_id = #{communityId} AND status = 6 ")
    Map<String, Long> countByCommunityId(@Param("communityId") Long communityId,@Param("nowDate") String nowDate);
    @Select("SELECT photo_path_list FROM com_act_micro_wish WHERE community_id = #{communityId} AND (status =1 OR status =2 OR status = 3 OR status = 5 OR status = 6) ORDER BY create_at DESC limit #{pageSize}")
    List<String> getAllImgs(@Param("communityId") Long communityId,@Param("pageSize") Integer pageSize);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java
@@ -6,6 +6,7 @@
import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAdminDTO;
import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO;
import com.panzhihua.common.model.vos.neighbor.*;
import com.panzhihua.common.model.vos.screen.CarouselInfoVO;
import com.panzhihua.common.model.vos.screen.ComActNeighborCircleScreenVO;
import com.panzhihua.common.model.vos.user.AdministratorsUserVO;
import com.panzhihua.service_community.model.dos.ComActNeighborCircleDO;
@@ -109,18 +110,18 @@
            " where reply.comment_id = #{commentId} and reply.status = 1")
    IPage<ComActNeighborCommentReplyAppVO> neighborCommentReplyByApp(Page page, @Param("commentId") Long commentId);
    @Select("SELECT id,release_content FROM com_act_neighbor_circle WHERE status = 2 AND community_id =#{communityId} ORDER BY create_at DESC limit 0,#{neighborSize}")
    List<ComActNeighborCircleScreenVO.NeighborCircleListVO> screenNeighborCircle(@Param("communityId") Long communityId, @Param("neighborSize") Integer neighborSize);
    @Select("SELECT id,release_content as content FROM com_act_neighbor_circle WHERE community_id =#{communityId} and(status = 2 or status = 3) ORDER BY create_at DESC limit #{pageSize}")
    List<CarouselInfoVO> screenNeighborCircle(@Param("communityId") Long communityId, @Param("pageSize") Integer pageSize);
    @Select("SELECT COUNT(id) FROM com_act_neighbor_circle WHERE STATUS = 2 AND community_id = #{communityId}")
    Long countByCommunityId(@Param("communityId")Long communityId);
    @Select(" SELECT COUNT(id) AS totalNum," +
            " (SELECT COUNT(id) FROM com_act_neighbor_circle WHERE  community_id = #{communityId} AND (status = 2 OR status = 3) AND create_at LIKE CONCAT(#{nowDate},'%')) AS currentNum " +
            "  FROM com_act_neighbor_circle WHERE community_id = #{communityId} AND(status = 2 OR status =3)")
    Map<String, Long> countByCommunityId(@Param("communityId")Long communityId,@Param("nowDate")String nowDate);
    @Select("SELECT SUM(comment_num),SUM(fabulous_num),SUM(forward_num) FROM com_act_neighbor_circle WHERE STATUS = 2 AND community_id = #{communityId} group by community_id ")
    @Select("SELECT SUM(comment_num) as commentNum,SUM(fabulous_num) as fabulousNum,SUM(forward_num) as forwardNum FROM com_act_neighbor_circle WHERE  community_id = #{communityId} and (status = 2 OR status =3) group by community_id ")
    Map<String, Long> sumScreenNum(Long communityId);
    @Select("SELECT release_images FROM com_act_neighbor_circle_comment WHERE STATUS = 2 AND community_id = #{communityId} group by community_id ")
    List<String> screenNeighborCircleImgs(@Param("communityId") Long communityId,@Param("neighborSize") Integer neighborSize);
    @Select("SELECT release_images FROM com_act_neighbor_circle_comment WHERE  community_id = #{communityId} and (status = 2 OR status =3) order by create_at desc limit #{pageSize}")
    List<String> screenNeighborCircleImgs(@Param("communityId") Long communityId,@Param("pageSize") Integer pageSize);
    @Select("SELECT COUNT(id) FROM com_act_neighbor_circle WHERE STATUS = 2 AND community_id = #{communityId} AND create_at LIKE CONCAT(#{nowDate},'%')")
    Long countCurrentNeighborCircles(@Param("communityId")Long communityId,@Param("nowDate") String nowDate);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java
@@ -269,5 +269,8 @@
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 8 AND act_id = #{communityId}) as bs," +
            "(SELECT COUNT(id) FROM com_mng_population WHERE culture_level = 9 AND act_id = #{communityId}) as qt" +
            " FROM com_mng_population WHERE culture_level = 1 AND act_id = #{communityId}")
    Map<String, Long> countByCulture(Long communityId);
    Map<String, Long> countByCulture(@Param("communityId")Long communityId);
    @Select("SELECT COUNT(p.id) FROM com_mng_population p INNER JOIN sys_user u ON p.card_no = u.id_card where p.act_id = #{communityId}")
    Long countUsedCommunityPopulation(@Param("communityId")Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComPbDynDAO.java
New file
@@ -0,0 +1,31 @@
package com.panzhihua.service_community.dao;
import com.panzhihua.common.model.vos.screen.PbWorkVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.Map;
/**
 * @author xyh
 * @date 2021/6/16 14:57
 */
@Mapper
public interface ComPbDynDAO {
    @Select("SELECT COUNT(id) AS activityNum ," +
            "(SELECT COUNT(id) FROM com_pb_dyn WHERE community_id = #{communityId} AND STATUS = 2) AS dynNum," +
            "(" +
            " (SELECT COUNT(id) FROM com_pb_activity WHERE community_id = #{communityId} AND (STATUS = 3 or STATUS = 4 or STATUS = 5 ) AND create_at LIKE CONCAT(#{nowDate},'%')) + " +
            " (SELECT COUNT(id) FROM com_pb_dyn WHERE community_id = #{communityId} AND STATUS = 2 AND create_at LIKE CONCAT(#{nowDate},'%'))" +
            " ) AS currentNum " +
            " FROM com_pb_activity WHERE community_id = #{communityId} AND (STATUS = 3 or STATUS = 4 or STATUS = 5 )")
    Map<String, Long> countByCommunityId(@Param("communityId") Long communityId, @Param("nowDate")String nowDate);
    @Select("SELECT " +
            "(SELECT COUNT(id) FROM com_pb_activity WHERE community_id = #{communityId} AND (STATUS = 3 or STATUS = 4 or STATUS = 5 ) AND #{start} < create_at AND create_at < #{end}) AS activity," +
            "(SELECT COUNT(id) FROM com_pb_dyn WHERE community_id = #{communityId} AND STATUS = 2 AND #{start} < create_at AND create_at < #{end}) AS dyn" +
            "FROM DUAL")
    PbWorkVO countByTime(@Param("start")String start,@Param("end")String end, @Param("communityId")Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ScreenWorkService.java
@@ -8,5 +8,52 @@
 */
public interface ScreenWorkService {
    /**
     * 大屏统计邻里圈
     * @param communityId
     * @return
     */
    R statisticNeighborCircle(Long communityId);
    /**
     * 大屏统计心愿单
     * @param communityId
     * @return
     */
    R wish(Long communityId);
    /**
     * 大屏统计社区活动
     * @param communityId
     * @return
     */
    R activity(Long communityId);
    /**
     * 大屏统计一起议
     * @param communityId
     * @return
     */
    R discuss(Long communityId);
    /**
     * 大屏统计党建工作
     * @param communityId
     * @return
     */
    R pbWork(Long communityId);
    /**
     * 大屏统计随手拍
     * @param communityId
     * @return
     */
    R easyPhoto(Long communityId);
    /**
     * 大屏统计工作情况
     * @param communityId
     * @return
     */
    R workCount(Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -810,7 +810,8 @@
        comActPopulationScreenVO.setOutNum(vo.getOutTotal() == null ? 0 : vo.getOutTotal().longValue());
        comActPopulationScreenVO.setSpecialNum(vo.getSpecialTotal() == null ? 0 : vo.getSpecialTotal().longValue());
        //统计已使用社区通人数
        setUsedCommunityNum(comActPopulationScreenVO,communityId);
        Long count = populationDAO.countUsedCommunityPopulation(communityId);
        comActPopulationScreenVO.setUsedCommunityNum(count == null ? 0 : count);
        //统计性别
        Map<String,Long> sexMap = populationDAO.countBySex(communityId);
@@ -828,9 +829,6 @@
        return R.ok(comActPopulationScreenVO);
    }
    private void setUsedCommunityNum(ComActPopulationScreenVO comActPopulationScreenVO, Long communityId) {
    }
    private void setCultureGroup(ComActPopulationScreenVO comActPopulationScreenVO, Long communityId) {
        Map<String,Long> cultureMap = populationDAO.countByCulture(communityId);
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ScreenWorkServiceImpl.java
@@ -1,14 +1,20 @@
package com.panzhihua.service_community.service.impl;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.panzhihua.common.model.dtos.partybuilding.ComPbActivityDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.screen.ComActNeighborCircleScreenVO;
import com.panzhihua.common.model.vos.screen.*;
import com.panzhihua.common.utlis.DateUtils;
import com.panzhihua.service_community.dao.ComActNeighborCircleDAO;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.dao.*;
import com.panzhihua.service_community.service.ScreenWorkService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
 * @author xyh
@@ -17,40 +23,262 @@
@Service
public class ScreenWorkServiceImpl implements ScreenWorkService {
    private static final Integer neighborSize = 200;
    private static final Integer pageSize = 200;
    @Resource
    private ComActNeighborCircleDAO comActNeighborCircleDAO;
    @Resource
    private ComActMicroWishDAO comActMicroWishDAO;
    @Resource
    private ComActActivityDAO actActivityDAO;
    @Resource
    private ComActDiscussDAO comActDiscussDAO;
    @Resource
    private ComPbDynDAO comPbDynDAO;
    @Resource
    private ComActEasyPhotoDAO comActEasyPhotoDAO;
    private final String moth_format_str = "yyyy-MM";
    @Override
    public R statisticNeighborCircle(Long communityId) {
        ComActNeighborCircleScreenVO comActNeighborCircleScreenVO = new ComActNeighborCircleScreenVO();
        String date = DateUtils.getDateFormatString(new Date(),"yyyy-MM-dd");
        Long currentNeighborCircles = comActNeighborCircleDAO.countCurrentNeighborCircles(communityId,date);
        comActNeighborCircleScreenVO.setCurrentNum(currentNeighborCircles == null?0:currentNeighborCircles);
        Long totalNum = comActNeighborCircleDAO.countByCommunityId(communityId);
        comActNeighborCircleScreenVO.setTotalNum(totalNum == null?0L:totalNum);
        String date = DateUtils.getDateFormatString(new Date(),moth_format_str);
        Map<String,Long> countMap = comActNeighborCircleDAO.countByCommunityId(communityId,date);
        comActNeighborCircleScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum"));
        comActNeighborCircleScreenVO.setTotalNum(countMap.get("totalNum") == null ? 0L : countMap.get("totalNum"));
        Map<String,Long> sumMap = comActNeighborCircleDAO.sumScreenNum(communityId);
        comActNeighborCircleScreenVO.setFabulousNum(sumMap.get("fabulousNum")==null?0L:sumMap.get("fabulousNum"));
        comActNeighborCircleScreenVO.setCommentNum(sumMap.get("commentNum")==null?0L:sumMap.get("commentNum"));
        comActNeighborCircleScreenVO.setSharedNum(sumMap.get("forwardNum")==null?0L:sumMap.get("forwardNum"));
        //查询最近发布的邻里圈
        comActNeighborCircleScreenVO.setNeighborCircles(comActNeighborCircleDAO.screenNeighborCircle(communityId,neighborSize));
        comActNeighborCircleScreenVO.setList(comActNeighborCircleDAO.screenNeighborCircle(communityId,pageSize));
        //查询最近发布的邻里圈图片
        List<String> imsg = new ArrayList<>();
        List<String> imgList = comActNeighborCircleDAO.screenNeighborCircleImgs(communityId,neighborSize);
        for(String img:imgList){
            String[] imgarr = img.split(",");
            if(imgarr.length > 1){
                for(String arr: imgarr){
                    imsg.add(arr);
                }
            }else{
                imsg.add(img);
            }
        }
        comActNeighborCircleScreenVO.setImgs(imsg);
        comActNeighborCircleScreenVO.setImgs(convertStringList(comActNeighborCircleDAO.screenNeighborCircleImgs(communityId,pageSize)));
        return R.ok(comActNeighborCircleScreenVO);
    }
    @Override
    public R wish(Long communityId) {
        ComActMicroWishScreenVO wishScreenVO = new ComActMicroWishScreenVO();
        String date = DateUtils.getDateFormatString(new Date(),moth_format_str);
        //统计本月新增,累计实现,待实现
        Map<String,Long> countMap = comActMicroWishDAO.countByCommunityId(communityId,date);
        wishScreenVO.setCompletedNum(countMap.get("completedNum") == null ? 0L : countMap.get("completedNum"));
        wishScreenVO.setWillNum(countMap.get("willNum") == null ? 0L : countMap.get("willNum"));
        wishScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum"));
        //微心愿轮播图片
        wishScreenVO.setImgs(convertStringList(comActMicroWishDAO.getAllImgs(communityId,pageSize)));
        return R.ok(wishScreenVO);
    }
    private List<String> convertStringList(List<String> imgList) {
        List<String> imgs = new ArrayList<>();
        for(String img:imgList){
            if(StringUtils.isEmpty(img)){
                continue;
            }
            String[] arrs = img.split(",");
            if(arrs.length > 1){
                for(String arr: arrs){
                    imgs.add(arr);
                }
            }else{
                imgs.add(img);
            }
        }
        return imgs;
    }
    @Override
    public R activity(Long communityId) {
        ComActActivityScreenVO comActActivityScreenVO = new ComActActivityScreenVO();
        //统计本月新增、居民活动,志愿者活动
        String date = DateUtils.getDateFormatString(new Date(),moth_format_str);
        Map<String,Long> countMap = actActivityDAO.countByCommunityId(communityId,date);
        comActActivityScreenVO.setTotalNum(countMap.get("totalNum") == null ? 0L : countMap.get("totalNum"));
        comActActivityScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum"));
        comActActivityScreenVO.setCommonNum(countMap.get("commonNum") == null ? 0L : countMap.get("commonNum"));
        comActActivityScreenVO.setCommonPeopleNum(countMap.get("commonPeopleNum") == null ? 0L : countMap.get("commonPeopleNum"));
        comActActivityScreenVO.setVolunteerNum(countMap.get("volunteerNum") == null ? 0L : countMap.get("volunteerNum"));
        comActActivityScreenVO.setVolunteerPeopleNum(countMap.get("volunteerPeopleNum") == null ? 0L : countMap.get("volunteerPeopleNum"));
        //最近活动
        comActActivityScreenVO.setList(actActivityDAO.screenActivity(communityId,pageSize));
        return R.ok(comActActivityScreenVO);
    }
    @Override
    public R discuss(Long communityId) {
        ComActDiscussScreenVO discussScreenVO = new ComActDiscussScreenVO();
        //统计本月新增,总共,图文,投票
        String date = DateUtils.getDateFormatString(new Date(),moth_format_str);
        Map<String,Long> countMap = comActDiscussDAO.countByCommunityId(communityId,date);
        discussScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum"));
        discussScreenVO.setTotalNum(countMap.get("totalNum") == null ? 0L : countMap.get("totalNum"));
        discussScreenVO.setImgNum(countMap.get("imgNum") == null ? 0L : countMap.get("imgNum"));
        discussScreenVO.setImgPeopleNum(countMap.get("imgPeopleNum") == null ? 0L : countMap.get("imgPeopleNum"));
        discussScreenVO.setVoteNum(discussScreenVO.getTotalNum() - discussScreenVO.getImgNum());
        discussScreenVO.setVotePeopleNum(countMap.get("votePeopleNum") == null ? 0L : countMap.get("votePeopleNum"));
        discussScreenVO.setList(comActDiscussDAO.screenDiscuss(communityId,pageSize));
        return R.ok(discussScreenVO);
    }
    @Override
    public R pbWork(Long communityId) {
        ComPbWorkScreenVO pbWorkScreenVO = new ComPbWorkScreenVO();
        String date = DateUtils.getDateFormatString(new Date(),moth_format_str);
        Map<String,Long> countMap = comPbDynDAO.countByCommunityId(communityId,date);
        pbWorkScreenVO.setActivityNum(countMap.get("activityNum") == null ? 0L : countMap.get("activityNum"));
        pbWorkScreenVO.setDynNum(countMap.get("dynNum") == null ? 0L : countMap.get("dynNum"));
        pbWorkScreenVO.setTotalNum(pbWorkScreenVO.getActivityNum() + pbWorkScreenVO.getDynNum());
        pbWorkScreenVO.setCurrentNum(countMap.get("currentNum") == null ? 0L : countMap.get("currentNum"));
        //统计近半年数据
        List<PbWorkVO> list = new ArrayList<>();
        for(PbWorkVO workVO: listHalfYear()){
            PbWorkVO result = comPbDynDAO.countByTime(workVO.getStart(),workVO.getEnd(),communityId);
            result.setMonth(workVO.getMonth());
            list.add(result);
        }
        pbWorkScreenVO.setList(list);
        return R.ok(pbWorkScreenVO);
    }
    private List<PbWorkVO> listHalfYear() {
        List<PbWorkVO> dateList = new ArrayList<>();
        Date now  = new Date();
        for(int i= 6;i>=1;i--){
            Date date = DateUtils.getDateM(now,i);
            DateTime endDay = DateUtil.endOfMonth(date);
            int m = endDay.month();//月份
            int day = DateUtil.dayOfMonth(date);
            int half = day/2;
            String month = DateUtil.format(date,moth_format_str);
            PbWorkVO pbWorkVO = new PbWorkVO();
            pbWorkVO.setMonth(m+"月上旬");
            pbWorkVO.setStart(month+ "-01 00:00:00");
            pbWorkVO.setEnd(month+ "-"+half+" 23:59:58");
            dateList.add(pbWorkVO);
            PbWorkVO pbWorkVO2 = new PbWorkVO();
            pbWorkVO2.setMonth(m+"月下旬");
            pbWorkVO2.setStart(month+ "-"+half+" 23:59:58");
            pbWorkVO2.setEnd(DateUtils.getDateFormatString(endDay,"yyyy-MM-dd HH:mm:ss"));
            dateList.add(pbWorkVO2);
        }
        return dateList;
    }
    @Override
    public R easyPhoto(Long communityId) {
        ComActEasyPhotoScreenVO comActEasyPhotoScreenVO = new ComActEasyPhotoScreenVO();
        Map<String,Long> dealMap = comActEasyPhotoDAO.countDeal(communityId);
        comActEasyPhotoScreenVO.setDeal(getList(dealMap));
        Map<String,Long> pubMap = comActEasyPhotoDAO.countPub(communityId);
        comActEasyPhotoScreenVO.setPub(getList(pubMap));
        Map<String,Long> approvedMap = comActEasyPhotoDAO.countApproved(communityId);
        comActEasyPhotoScreenVO.setApproved(getList(approvedMap));
        Map<String,Long> countMap = comActEasyPhotoDAO.countByCommunityId(communityId);
        comActEasyPhotoScreenVO.setNoneDeal(countMap.get("noneDeal") == null ? 0L : countMap.get("noneDeal"));
        comActEasyPhotoScreenVO.setPubPoint(countMap.get("pubPoint") == null ? 0L : countMap.get("pubPoint"));
        comActEasyPhotoScreenVO.setDealTime(countMap.get("dealTime") == null ? 0L : countMap.get("dealTime"));
        List<EastPhotoVO> list = new ArrayList<>();
        for(PbWorkVO workVO: listHalfYear()){
            String nowDate = DateUtils.getDateFormatString(DateUtil.parseDate(workVO.getStart()),moth_format_str);
            EastPhotoVO result = comActEasyPhotoDAO.countByTime(workVO.getStart(),workVO.getEnd(),nowDate,communityId);
            result.setMonth(workVO.getMonth());
            list.add(result);
        }
        comActEasyPhotoScreenVO.setList(list);
        return R.ok(comActEasyPhotoScreenVO);
    }
    private List<EasyPhotoPointVO> getList(Map<String, Long> dealMap) {
        Set<Map.Entry<String,Long>> entrySet = dealMap.entrySet();
        List<EasyPhotoPointVO> list = new ArrayList<>();
        for(Map.Entry<String,Long> en:entrySet){
            EasyPhotoPointVO easyPhotoPointVO = new EasyPhotoPointVO();
            easyPhotoPointVO.setTypeName(en.getKey());
            easyPhotoPointVO.setPoint(en.getValue().intValue());
            list.add(easyPhotoPointVO);
        }
        return list;
    }
    @Override
    public R workCount(Long communityId) {
        ComActWorkScreenVO comActWorkScreenVO = new ComActWorkScreenVO();
        comActWorkScreenVO.setAvgTime("1小时");
        comActWorkScreenVO.setTotalCompletedPoint(70);
        comActWorkScreenVO.setEveryDayNum("0.3");
        List<ActWorkCountVO> completetPoint = new ArrayList<>();
        ActWorkCountVO easyPhoto = new ActWorkCountVO();
        easyPhoto.setName("随手拍");
        easyPhoto.setNum(10);
        completetPoint.add(easyPhoto);
        ActWorkCountVO wish = new ActWorkCountVO();
        wish.setName("微心愿");
        wish.setNum(23);
        completetPoint.add(wish);
        ActWorkCountVO discuss = new ActWorkCountVO();
        discuss.setName("一起议");
        discuss.setNum(33);
        completetPoint.add(discuss);
        ActWorkCountVO neighbor = new ActWorkCountVO();
        neighbor.setName("邻里圈");
        neighbor.setNum(43);
        completetPoint.add(neighbor);
        ActWorkCountVO pbWork = new ActWorkCountVO();
        pbWork.setName("党建工作");
        pbWork.setNum(13);
        completetPoint.add(pbWork);
        ActWorkCountVO activity = new ActWorkCountVO();
        activity.setName("社区活动");
        activity.setNum(63);
        completetPoint.add(activity);
        comActWorkScreenVO.setCompletetPoint(completetPoint);
        List<ActWorkCountVO> completetPoint2 = new ArrayList<>();
        ActWorkCountVO easyPhoto2 = new ActWorkCountVO();
        easyPhoto2.setName("随手拍");
        easyPhoto2.setNum(10);
        completetPoint2.add(easyPhoto2);
        ActWorkCountVO wish2 = new ActWorkCountVO();
        wish2.setName("微心愿");
        wish2.setNum(23);
        completetPoint2.add(wish2);
        ActWorkCountVO discuss2 = new ActWorkCountVO();
        discuss2.setName("一起议");
        discuss2.setNum(33);
        completetPoint2.add(discuss2);
        ActWorkCountVO neighbor2 = new ActWorkCountVO();
        neighbor2.setName("邻里圈");
        neighbor2.setNum(43);
        completetPoint2.add(neighbor2);
        ActWorkCountVO pbWork2 = new ActWorkCountVO();
        pbWork2.setName("党建工作");
        pbWork2.setNum(13);
        completetPoint2.add(pbWork2);
        ActWorkCountVO activity2 = new ActWorkCountVO();
        activity2.setName("社区活动");
        activity2.setNum(63);
        completetPoint2.add(activity2);
        comActWorkScreenVO.setNonePoint(completetPoint2);
        return R.ok(comActWorkScreenVO);
    }
}