liujie
2025-06-09 70d2a5d0f9c6951b2d4cac954041ed73582ff7eb
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActEasyPhotoDAO.java
@@ -7,7 +7,9 @@
import com.panzhihua.common.model.dtos.community.easyPhoto.ExportEasyPhotoDTO;
import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
import com.panzhihua.common.model.vos.community.StatisticsCommVO;
import com.panzhihua.common.model.vos.community.StatisticsPhotoVO;
import com.panzhihua.common.model.vos.community.TodoEventsVO;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenDpcStatisticsInfo;
import com.panzhihua.common.model.vos.community.bigscreen.BigScreenEasyPhotoStatisticsInfo;
import com.panzhihua.common.model.vos.community.bigscreen.BigscreenGridsGovernanceStatisticsVO;
import com.panzhihua.common.model.vos.community.bigscreen.GridsGovernanceStatisticsVO;
@@ -77,7 +79,7 @@
            " </if> " +
            "where p.del_tag = 0 and p.status !=2"+
            "<if test='comActEasyPhotoVO.communityId != null and comActEasyPhotoVO.communityId != 0'>" +
            "  and p.community_id = #{comActEasyPhotoVO.communityId} " +
            "  and p.community_id = ${comActEasyPhotoVO.communityId} " +
            " </if> " +
            "<if test='comActEasyPhotoVO.happenAddr != null and comActEasyPhotoVO.happenAddr.trim() != &quot;&quot;'>" +
            "AND p.happen_addr like concat(#{comActEasyPhotoVO.happenAddr},'%')   " +
@@ -149,7 +151,7 @@
            "and p.handler_id=#{comActEasyPhotoVO.backUserId}"+
            " </if> " +
            "<if test='comActEasyPhotoVO.communityId != null and comActEasyPhotoVO.communityId != 0'>" +
            "  and p.community_id = #{comActEasyPhotoVO.communityId} " +
            "  and p.community_id = ${comActEasyPhotoVO.communityId} " +
            " </if> " +
            "<if test='comActEasyPhotoVO.happenAddr != null and comActEasyPhotoVO.happenAddr.trim() != &quot;&quot;'>" +
            "AND p.happen_addr like concat(#{comActEasyPhotoVO.happenAddr},'%')   " +
@@ -179,6 +181,8 @@
    IPage<ComActEasyPhotoVO> pageEasyPhoto(Page page, @Param("comActEasyPhotoVO") ComActEasyPhotoVO comActEasyPhotoVO);
    IPage<ComActEasyPhotoVO> pageEasyPhotoAdmin(Page page, @Param("comActEasyPhotoVO") ComActEasyPhotoVO comActEasyPhotoVO);
    IPage<ComActEasyPhotoVO> pageEasyPhotoAdminLC(Page page);
    @Select("SELECT  " +
            "p.id, " +
            "p.sponsor_id, " +
@@ -211,11 +215,15 @@
            "c.name communityName," +
            "p.transfer_time," +
            "p.is_report_urban," +
            "p.is_report_dpc," +
            "p.transfer_reason," +
            "ca.`name` as classifyName," +
            "p.urban_status, " +
            "p.img_width, " +
            "p.img_height, " +
            "p.evaluate_date, " +
            "caepe.score," +
            "caepe.`content`, " +
            "p.handle_photo_list " +
            "FROM " +
            "com_act_easy_photo p " +
@@ -225,6 +233,7 @@
            "LEFT JOIN com_act_easy_photo_user pu on p.id=pu.easy_photo_id " +
            "LEFT JOIN com_act c on p.community_id=c.community_id " +
            "left join com_act_easy_photo_classify ca on ca.id = p.classify_id " +
            "left join com_act_easy_photo_evaluate as caepe on caepe.service_id = p.id and caepe.service_type = 1 " +
            "WHERE p.del_tag = 0 and p.id=#{id}")
    ComActEasyPhotoVO detailEasyPhoto(Long id);
    @Select("SELECT " +
@@ -232,7 +241,7 @@
            "FROM " +
            " com_act_easy_photo p  " +
            "WHERE " +
            " p.del_tag = 0 and p.community_id = #{communityId}  " +
            " p.del_tag = 0 and p.community_id = ${communityId}  " +
            "AND p.STATUS = 1  "+
            " " +
            "union all  " +
@@ -242,80 +251,80 @@
            "FROM " +
            "  com_act_easy_photo p  " +
            "WHERE " +
            " p.del_tag = 0 and p.community_id = #{communityId}  " +
            " p.del_tag = 0 and p.community_id = ${communityId}  " +
            "AND p.`status` = 2 and p.is_need_feed_back=1 and p.handler_id=#{userId} "
            )
    List<TodoEventsVO> selectNeedToDo(@Param("communityId") Long communityId, @Param("userId") Long userId);
    @Select("<script> " +
            "SELECT " +
            "p.id, " +
            "u.`name` sponsor_name, " +
            "u.`nick_name` userNickName, " +
            "u.phone sponsor_phone, " +
            "count(DISTINCT pu.id)giveThumbsUpNum, " +
            "count(DISTINCT c.id)commentNum, " +
            "u.image_url, " +
            "p.happen_addr, " +
            "p.addr_remark, " +
            "su.`name` handler_name, " +
            "p.`status`, " +
            "p.`is_hide`, " +
            "p.`detail`, " +
            "p.`is_need_feed_back`, " +
            "p.`photo_path_list`, " +
            "p.create_at, " +
            "p.feedback_at, " +
            "p.activity_type, " +
            "p.activity_amount, " +
            "p.classify_id, " +
            "class.`name` as classifyName, " +
            "p.img_width, " +
            "p.img_height, " +
            "p.examine_at  " +
            "FROM " +
            "com_act_easy_photo p " +
            "JOIN sys_user u ON p.sponsor_id = u.user_id  " +
            "left join  com_act_easy_photo_user pu ON p.id = pu.easy_photo_id  " +
            "left JOIN sys_user su ON p.handler_id = su.user_id  " +
            "left JOIN com_act_easy_photo_comment c ON p.id = c.easy_photo_id  " +
            "left JOIN com_act_easy_photo_classify class ON p.classify_id = class.id  " +
            " <where>" +
            " p.del_tag = 0 "  +
            "<if test='comActEasyPhotoVO.communityId != null and comActEasyPhotoVO.communityId != 0'>" +
            "  and p.community_id = #{comActEasyPhotoVO.communityId} " +
            " </if> " +
            "<if test='comActEasyPhotoVO.status != null and comActEasyPhotoVO.status!=0' >" +
            "AND p.`status` = #{comActEasyPhotoVO.status}  " +
            " </if> " +
            "<if test='comActEasyPhotoVO.sponsorId != null and comActEasyPhotoVO.sponsorId != 0'>" +
            "AND p.sponsor_id =#{comActEasyPhotoVO.sponsorId}  " +
            " </if> " +
            "<if test='comActEasyPhotoVO.sponsorId == null or comActEasyPhotoVO.sponsorId==0'>" +
            "AND p.`status` in (2,4) and p.is_publicity = 1 " +
            " </if> " +
            "<if test='comActEasyPhotoVO.keyWord != null and comActEasyPhotoVO.keyWord != &quot;&quot;'>" +
            "AND (class.`name` like concat(#{comActEasyPhotoVO.keyWord},'%') or p.detail like concat(#{comActEasyPhotoVO.keyWord},'%'))   " +
            " </if> " +
            "group by p.id "+
            "order by p.create_at desc "+
            " </where>" +
            "</script>"
    )
//    @Select("<script> " +
//            "SELECT " +
//            "p.id, " +
//            "u.`name` sponsor_name, " +
//            "u.`nick_name` userNickName, " +
//            "u.phone sponsor_phone, " +
//            "count(DISTINCT pu.id)giveThumbsUpNum, " +
//            "count(DISTINCT c.id)commentNum, " +
//            "u.image_url, " +
//            "p.happen_addr, " +
//            "p.addr_remark, " +
//            "su.`name` handler_name, " +
//            "p.`status`, " +
//            "p.`is_hide`, " +
//            "p.`detail`, " +
//            "p.`is_need_feed_back`, " +
//            "p.`photo_path_list`, " +
//            "p.create_at, " +
//            "p.feedback_at, " +
//            "p.activity_type, " +
//            "p.activity_amount, " +
//            "p.classify_id, " +
//            "class.`name` as classifyName, " +
//            "p.img_width, " +
//            "p.img_height, " +
//            "p.examine_at  " +
//            "FROM " +
//            "com_act_easy_photo p " +
//            "JOIN sys_user u ON p.sponsor_id = u.user_id  " +
//            "left join  com_act_easy_photo_user pu ON p.id = pu.easy_photo_id  " +
//            "left JOIN sys_user su ON p.handler_id = su.user_id  " +
//            "left JOIN com_act_easy_photo_comment c ON p.id = c.easy_photo_id  " +
//            "left JOIN com_act_easy_photo_classify class ON p.classify_id = class.id  " +
//            " <where>" +
//            " p.del_tag = 0 "  +
//            "<if test='comActEasyPhotoVO.communityId != null and comActEasyPhotoVO.communityId != 0'>" +
//            "  and p.community_id = ${comActEasyPhotoVO.communityId} " +
//            " </if> " +
//            "<if test='comActEasyPhotoVO.status != null and comActEasyPhotoVO.status!=0' >" +
//            "AND p.`status` = #{comActEasyPhotoVO.status}  " +
//            " </if> " +
//            "<if test='comActEasyPhotoVO.sponsorId != null and comActEasyPhotoVO.sponsorId != 0'>" +
//            "AND p.sponsor_id =#{comActEasyPhotoVO.sponsorId}  " +
//            " </if> " +
//            "<if test='comActEasyPhotoVO.sponsorId == null or comActEasyPhotoVO.sponsorId==0'>" +
//            "AND p.`status` in (2,4) and p.is_publicity = 1 " +
//            " </if> " +
//            "<if test='comActEasyPhotoVO.keyWord != null and comActEasyPhotoVO.keyWord != &quot;&quot;'>" +
//            "AND (class.`name` like concat(#{comActEasyPhotoVO.keyWord},'%') or p.detail like concat(#{comActEasyPhotoVO.keyWord},'%'))   " +
//            " </if> " +
//            "group by p.id "+
//            "order by p.create_at desc "+
//            " </where>" +
//            "</script>"
//    )
    IPage<ComActEasyPhotoVO> pageEasyPhotoApplets(Page page, @Param("comActEasyPhotoVO")ComActEasyPhotoVO comActEasyPhotoVO);
    @Select("SELECT t.name,COUNT(p.id) as num 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} " +
            "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 ")
    List<EastPhotoTypeVO> countDeal(@Param("communityId")Long communityId);
    @Select("SELECT t.name,COUNT(p.id) as num 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} " +
            "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 ")
    List<EastPhotoTypeVO> countPub(@Param("communityId")Long communityId);
    @Select("SELECT t.name,COUNT(p.id) as num 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 where p.community_id = #{communityId} " +
            "LEFT JOIN com_act_easy_photo p ON r.easy_id = p.id AND p.status = 4 where p.community_id = ${communityId} " +
            "GROUP BY t.name ")
    List<EastPhotoTypeVO> countApproved(@Param("communityId")Long communityId);
@@ -324,28 +333,28 @@
            "SELECT COUNT(id) FROM com_act_easy_photo WHERE community_id = 2 AND create_at LIKE concat(#{nowDate},'%') " +
            ") AS currentNum," +
            "(" +
            "(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) " +
            "(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 where community_id = #{communityId}")
            "(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 where community_id = ${communityId}")
    Map<String, Object> countByCommunityId(@Param("communityId")Long communityId,@Param("nowDate") String nowDate);
    @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} ")
            "(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);
//    @Select("SELECT " +
//            " count( id ) AS examineNum, " +
//            " ( SELECT count( id ) FROM com_act_easy_photo WHERE `status` = 2 AND community_id = #{communityId} and del_tag = 0 ) AS verificationNum, " +
//            " ( SELECT count( id ) FROM com_act_easy_photo WHERE `status` = 3 AND community_id = #{communityId} and del_tag = 0 ) AS rejectNum, " +
//            " ( SELECT count( id ) FROM com_act_easy_photo WHERE `status` = 4 AND community_id = #{communityId} and del_tag = 0 ) AS completeNum  " +
//            " ( SELECT count( id ) FROM com_act_easy_photo WHERE `status` = 2 AND community_id = ${communityId} and del_tag = 0 ) AS verificationNum, " +
//            " ( SELECT count( id ) FROM com_act_easy_photo WHERE `status` = 3 AND community_id = ${communityId} and del_tag = 0 ) AS rejectNum, " +
//            " ( SELECT count( id ) FROM com_act_easy_photo WHERE `status` = 4 AND community_id = ${communityId} and del_tag = 0 ) AS completeNum  " +
//            "FROM " +
//            " com_act_easy_photo  " +
//            "WHERE " +
//            " `status` = 1  " +
//            " AND community_id = #{communityId} and del_tag = 0")
//            " AND community_id = ${communityId} and del_tag = 0")
    ComActEasyPhotoStatisticsVO getEasyPhotoStatistics(@Param("communityId")Long communityId);
    ComActEasyPhotoCountVO easyPhotoCount(ComActEasyPhotoVO comActEasyPhotoVO);
    List<ExportEasyPhotoVO> export(ExportEasyPhotoDTO exportEasyPhotoDTO);
@@ -370,7 +379,7 @@
     * @param communityId
     * @return
     */
    List<ComActEasyPhotoVO> selectStatisticsList(@Param("communityId") Long communityId);
    List<StatisticsCommVO> selectStatisticsList(@Param("communityId") Long communityId);
    /**
     * 获取居民自治统计数据
@@ -409,4 +418,60 @@
     * @return
     */
    IPage<ComActEasyPhotoVO> indexEasyPhotoList(@Param("page") Page page, @Param("pageBaseDTO") PageBaseDTO pageBaseDTO);
    /**
     * 随手拍治安防控记录列表
     * @param communityId
     * @param pageSize
     * @return
     */
    List<ComActEasyPhotoVO> getPartyBuildIngRecord(@Param("communityId") Long communityId, @Param("pageSize") Integer pageSize);
    /**
     * 获取上报人大代表的随手拍新增数据
     * @param communityId
     * @return
     */
    List<StatisticsCommVO> getEasyPhotoAddPolylineDataForDpc(@Param("communityId") Long communityId);
    /**
     * 上报人大代表的随手拍累计折线数据
     * @param communityId
     * @param date
     * @return
     */
    StatisticsCommVO getEasyPhotoTotalPolylineDateForDpc(@Param("communityId") Long communityId, @Param("date") String date);
    /**
     * 人大代表-随手拍展示列表
     * @param page
     * @param pageBaseDTO
     * @return
     */
    IPage<ComActEasyPhotoVO> dpcEasyPhotoList(@Param("page") Page page, @Param("pageBaseDTO") PageBaseDTO pageBaseDTO);
    /**
     * 获取人大代表基础数据
     * @param communityId
     * @return
     */
    BigScreenDpcStatisticsInfo selectDpcBaseData(@Param("communityId") Long communityId);
    /**
     * 获取社区动态置顶banner
     * */
    List<BannerVO> getBanner(@Param("communityId") Long communityId);
    /**
     * 统计所有随手拍,分状态
     * @return
     */
    List<StatisticsPhotoVO> selectPhotoAll();
    /**
     * 统计所有随手拍,分状态
     * @return
     */
    List<StatisticsPhotoVO> selectPhotoByMonth();
}