package com.panzhihua.service_community.dao;
|
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
|
import com.panzhihua.common.model.vos.community.TodoEventsVO;
|
import com.panzhihua.common.model.vos.screen.EastPhotoTypeVO;
|
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
|
* @description: 随手拍
|
* @author: huang.hongfa weixin hhf9596 qq 959656820
|
* @create: 2020-12-07 14:22
|
**/
|
@Mapper
|
public interface ComActEasyPhotoDAO extends BaseMapper<ComActEasyPhotoDO> {
|
@Select("<script> " +
|
"select t.* from ("+
|
"SELECT\n" +
|
"p.id,\n" +
|
"u.`name` sponsor_name,\n" +
|
"u.phone phone,\n" +
|
"count(pu.id)giveThumbsUpNum,\n" +
|
"u.image_url,\n" +
|
"p.happen_addr,\n" +
|
"su.`name` handler_name,\n" +
|
"p.`status`,\n" +
|
"p.`detail`,\n" +
|
"p.`is_need_feed_back`,\n" +
|
"p.`photo_path_list`,\n" +
|
"p.create_at,\n" +
|
"p.feedback_at,\n" +
|
"p.is_report,\n" +
|
"p.is_publicity,\n" +
|
"p.examine_at \n" +
|
"FROM\n" +
|
"com_act_easy_photo p\n" +
|
"JOIN sys_user u ON p.sponsor_id = u.user_id \n" +
|
"<if test='comActEasyPhotoVO.sponsorName != null and comActEasyPhotoVO.sponsorName.trim() != ""'>" +
|
"AND u.`name` like concat(#{comActEasyPhotoVO.sponsorName},'%') \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.userId != null and comActEasyPhotoVO.userId != 0'>" +
|
"AND u.`user_id` = #{comActEasyPhotoVO.userId} \n" +
|
" </if> " +
|
"left join com_act_easy_photo_user pu ON p.id = pu.easy_photo_id \n" +
|
"<if test='comActEasyPhotoVO.handlerName == null or comActEasyPhotoVO.handlerName.trim() == ""'>" +
|
"left JOIN sys_user su ON p.handler_id = su.user_id \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.handlerName != null and comActEasyPhotoVO.handlerName.trim() != ""'>" +
|
" JOIN sys_user su ON p.handler_id = su.user_id \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.handlerName != null and comActEasyPhotoVO.handlerName.trim() != ""'>" +
|
"AND su.`name` like concat(#{comActEasyPhotoVO.handlerName},'%') \n" +
|
" </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} " +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.happenAddr != null and comActEasyPhotoVO.happenAddr.trim() != ""'>" +
|
"AND p.happen_addr like concat(#{comActEasyPhotoVO.happenAddr},'%') \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.status != null and comActEasyPhotoVO.status!=0' >" +
|
"AND p.`status` = #{comActEasyPhotoVO.status} \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.createBegin != null '>" +
|
"AND p.create_at BETWEEN #{comActEasyPhotoVO.createBegin} \n" +
|
"AND #{comActEasyPhotoVO.createEnd}" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.sponsorId != null and comActEasyPhotoVO.sponsorId != 0'>" +
|
"AND p.sponsor_id =#{comActEasyPhotoVO.sponsorId} \n" +
|
" </if> " +
|
"group by p.id "+
|
|
"union all "+
|
|
"SELECT\n" +
|
"p.id,\n" +
|
"u.`name` sponsor_name,\n" +
|
"u.phone phone,\n" +
|
"count(pu.id)giveThumbsUpNum,\n" +
|
"u.image_url,\n" +
|
"p.happen_addr,\n" +
|
"su.`name` handler_name,\n" +
|
"p.`status`,\n" +
|
"p.`detail`,\n" +
|
"p.`is_need_feed_back`,\n" +
|
"p.`photo_path_list`,\n" +
|
"p.create_at,\n" +
|
"p.feedback_at,\n" +
|
"p.is_report,\n" +
|
"p.is_publicity,\n" +
|
"p.examine_at \n" +
|
"FROM\n" +
|
"com_act_easy_photo p\n" +
|
"JOIN sys_user u ON p.sponsor_id = u.user_id \n" +
|
"<if test='comActEasyPhotoVO.sponsorName != null and comActEasyPhotoVO.sponsorName.trim() != ""'>" +
|
"AND u.`name` like concat(#{comActEasyPhotoVO.sponsorName},'%') \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.userId != null and comActEasyPhotoVO.userId != 0'>" +
|
"AND u.`user_id` = #{comActEasyPhotoVO.userId} \n" +
|
" </if> " +
|
"left join com_act_easy_photo_user pu ON p.id = pu.easy_photo_id \n" +
|
"<if test='comActEasyPhotoVO.handlerName == null or comActEasyPhotoVO.handlerName.trim() == ""'>" +
|
"left JOIN sys_user su ON p.handler_id = su.user_id \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.handlerName != null and comActEasyPhotoVO.handlerName.trim() != ""'>" +
|
" JOIN sys_user su ON p.handler_id = su.user_id \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.handlerName != null and comActEasyPhotoVO.handlerName.trim() != ""'>" +
|
"AND su.`name` like concat(#{comActEasyPhotoVO.handlerName},'%') \n" +
|
" </if> " +
|
"where p.del_tag = 0 and p.status=2 and p.is_need_feed_back=1 " +
|
"<if test='comActEasyPhotoVO.backUserId != null and comActEasyPhotoVO.backUserId != 0'>" +
|
"and p.handler_id=#{comActEasyPhotoVO.backUserId}"+
|
" </if> " +
|
"<if test='comActEasyPhotoVO.communityId != null and comActEasyPhotoVO.communityId != 0'>" +
|
" and p.community_id=#{comActEasyPhotoVO.communityId} " +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.happenAddr != null and comActEasyPhotoVO.happenAddr.trim() != ""'>" +
|
"AND p.happen_addr like concat(#{comActEasyPhotoVO.happenAddr},'%') \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.status != null and comActEasyPhotoVO.status!=0' >" +
|
"AND p.`status` = #{comActEasyPhotoVO.status} \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.createBegin != null '>" +
|
"AND p.create_at BETWEEN #{comActEasyPhotoVO.createBegin} \n" +
|
"AND #{comActEasyPhotoVO.createEnd}" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.sponsorId != null and comActEasyPhotoVO.sponsorId != 0'>" +
|
"AND p.sponsor_id =#{comActEasyPhotoVO.sponsorId} \n" +
|
" </if> " +
|
" group by p.id "+
|
")t order by t.create_at desc "+
|
"</script>")
|
IPage<ComActEasyPhotoVO> pageEasyPhoto(Page page, @Param("comActEasyPhotoVO") ComActEasyPhotoVO comActEasyPhotoVO);
|
@Select("SELECT \n" +
|
"p.id,\n" +
|
"p.sponsor_id,\n" +
|
"p.feedback_at,\n" +
|
"p.examine_at,\n" +
|
"p.create_at,\n" +
|
"u.`name` sponsorName,\n" +
|
"u.nick_name userNickName,\n" +
|
"su.`name` handlerName,\n" +
|
"u.`image_url`,\n" +
|
"u.phone,\n" +
|
"p.detail,\n" +
|
"p.is_need_feed_back,\n" +
|
"p.examine_at,\n" +
|
"p.status,\n" +
|
"p.reject_reason,\n" +
|
"p.is_hide,\n" +
|
"p.happen_addr,\n" +
|
"p.addr_remark,\n" +
|
"su.`name`,\n" +
|
"p.handle_result,\n" +
|
"p.photo_path_list,\n" +
|
"count(pu.id)giveThumbsUpNum,\n" +
|
"p.handle_photo_list\n" +
|
"FROM\n" +
|
"com_act_easy_photo p\n" +
|
"JOIN sys_user u on p.sponsor_id=u.user_id\n" +
|
"LEFT JOIN sys_user su on p.handler_id=su.user_id\n" +
|
"LEFT JOIN com_act_easy_photo_user pu on p.id=pu.easy_photo_id\n" +
|
"WHERE p.del_tag = 0 and p.id=#{id}")
|
ComActEasyPhotoVO detailEasyPhoto(Long id);
|
@Select("SELECT\n" +
|
"'1' type\n" +
|
"FROM\n" +
|
" com_act_easy_photo p \n" +
|
"WHERE\n" +
|
" p.del_tag = 0 and p.community_id = #{communityId} \n" +
|
"AND p.STATUS = 1 \n"+
|
"\n" +
|
"union all \n" +
|
"\n" +
|
"SELECT\n" +
|
"'1' type\n" +
|
"FROM\n" +
|
" com_act_easy_photo p \n" +
|
"WHERE\n" +
|
" p.del_tag = 0 and p.community_id = #{communityId} \n" +
|
"AND p.`status` = 2 and p.is_need_feed_back=1 and p.handler_id=#{userId}\n"
|
)
|
List<TodoEventsVO> selectNeedToDo(@Param("communityId") Long communityId, @Param("userId") Long userId);
|
|
@Select("<script> " +
|
"SELECT\n" +
|
"p.id,\n" +
|
"u.`name` sponsor_name,\n" +
|
"u.`nick_name` userNickName,\n" +
|
"u.phone sponsor_phone,\n" +
|
"count(DISTINCT pu.id)giveThumbsUpNum,\n" +
|
"count(DISTINCT c.id)commentNum,\n" +
|
"u.image_url,\n" +
|
"p.happen_addr,\n" +
|
"su.`name` handler_name,\n" +
|
"p.`status`,\n" +
|
"p.`is_hide`,\n" +
|
"p.`detail`,\n" +
|
"p.`is_need_feed_back`,\n" +
|
"p.`photo_path_list`,\n" +
|
"p.create_at,\n" +
|
"p.feedback_at,\n" +
|
"p.examine_at \n" +
|
"FROM\n" +
|
"com_act_easy_photo p\n" +
|
"JOIN sys_user u ON p.sponsor_id = u.user_id \n" +
|
"left join com_act_easy_photo_user pu ON p.id = pu.easy_photo_id \n" +
|
"left JOIN sys_user su ON p.handler_id = su.user_id \n" +
|
"left JOIN com_act_easy_photo_comment c ON p.id = c.easy_photo_id \n" +
|
" <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} \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.sponsorId != null and comActEasyPhotoVO.sponsorId != 0'>" +
|
"AND p.sponsor_id =#{comActEasyPhotoVO.sponsorId} \n" +
|
" </if> " +
|
"<if test='comActEasyPhotoVO.sponsorId == null or comActEasyPhotoVO.sponsorId==0'>" +
|
"AND p.`status` in (2,4) \n" +
|
" </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} " +
|
"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} " +
|
"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} " +
|
"GROUP BY t.name ")
|
List<EastPhotoTypeVO> countApproved(@Param("communityId")Long communityId);
|
|
@Select("SELECT COUNT(id) AS noneDeal," +
|
"(" +
|
"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) " +
|
") 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}")
|
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} ")
|
EastPhotoVO countByTime(@Param("start")String start, @Param("end")String end, @Param("nowDate")String nowDate, @Param("communityId")Long communityId);
|
}
|