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.ComActMicroWishVO;
|
import com.panzhihua.common.model.vos.community.TodoEventsVO;
|
import com.panzhihua.service_community.model.dos.ComActMicroWishDO;
|
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
import java.util.List;
|
|
/**
|
* @program: springcloud_k8s_panzhihuazhihuishequ
|
* @description: 微心愿
|
* @author: huang.hongfa weixin hhf9596 qq 959656820
|
* @create: 2020-12-07 14:27
|
**/
|
@Mapper
|
public interface ComActMicroWishDAO extends BaseMapper<ComActMicroWishDO> {
|
|
@Select("<script> " +
|
"SELECT\n" +
|
"w.id,\n" +
|
"u.name sponsor_name,\n" +
|
"u.image_url ,\n" +
|
"w.sponsor_phone,\n" +
|
"w.wish_name,\n" +
|
"w.`status`,\n" +
|
"w.`feedback_at`,\n" +
|
"w.`examine_at`,\n" +
|
"w.`distribution_at`,\n" +
|
"w.`evaluate_at`,\n" +
|
"w.`photo_path_list`,\n" +
|
"count(wu.id)star_num,\n" +
|
"w.`detail`,\n" +
|
"w.form,\n" +
|
"w.reject_reason,\n" +
|
"su.`name` responsible_name,\n" +
|
"w.score,\n" +
|
"w.create_at \n" +
|
"FROM\n" +
|
"com_act_micro_wish w\n" +
|
"left join com_act_micro_wish_user wu on w.id=wu.micro_wish_id "+
|
"JOIN sys_user u ON w.sponsor_id = u.user_id \n" +
|
"<if test='comActMicroWishVO.sponsorName != null and comActMicroWishVO.sponsorName.trim() != ""'>" +
|
"AND u.name like concat(#{comActMicroWishVO.sponsorName},'%') \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.responsibleName == null or comActMicroWishVO.responsibleName.trim() == ""'>" +
|
"LEFT JOIN sys_user su ON w.responsible_id = su.user_id \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.responsibleName != null and comActMicroWishVO.responsibleName.trim() != ""'>" +
|
" JOIN sys_user su ON w.responsible_id = su.user_id \n" +
|
"AND su.`name` like concat(#{comActMicroWishVO.responsibleName},'%') \n" +
|
" </if> " +
|
" <where>" +
|
"<if test='comActMicroWishVO.communityId != null and comActMicroWishVO.communityId != 0'>" +
|
" and w.community_id=#{comActMicroWishVO.communityId} \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.sponsorPhone != null and comActMicroWishVO.sponsorPhone.trim() != ""'>" +
|
"AND w.sponsor_phone like concat(#{comActMicroWishVO.sponsorPhone},'%') \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.status != null and comActMicroWishVO.status!=0 and comActMicroWishVO.isPageMyWish==null'>" +
|
"AND w.`status` = #{comActMicroWishVO.status} \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.status != null and comActMicroWishVO.status!=0 and comActMicroWishVO.isPageMyWish!=null and comActMicroWishVO.status==1'>" +
|
"AND w.`status` in (1,2) \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.createBegin != null '>" +
|
"AND w.create_at BETWEEN #{comActMicroWishVO.createBegin} \n" +
|
"AND #{comActMicroWishVO.createEnd}" +
|
" </if> " +
|
"<if test='comActMicroWishVO.isApplets != null and comActMicroWishVO.isApplets != 0'>" +
|
"AND w.status in (3,6) \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.userId != null and comActMicroWishVO.userId != 0'>" +
|
"AND w.sponsor_id =#{comActMicroWishVO.userId} \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.backUserId != null and comActMicroWishVO.backUserId != 0 and comActMicroWishVO.status==3 '>" +
|
"AND w.responsible_id =#{comActMicroWishVO.backUserId} \n" +
|
" </if> " +
|
"<if test='comActMicroWishVO.backUserId != null and comActMicroWishVO.backUserId != 0 and comActMicroWishVO.status==0 '>" +
|
"and (w.status in(1,2,4,5,6) or (w.status=3 and w.responsible_id =#{comActMicroWishVO.backUserId}))\n" +
|
" </if> " +
|
" </where>" +
|
" group by w.id \n"+
|
"ORDER BY w.`status` asc, w.create_at desc "+
|
"</script>")
|
IPage<ComActMicroWishVO> pageMicroWish(Page page, @Param("comActMicroWishVO") ComActMicroWishVO comActMicroWishVO);
|
@Select("SELECT\n" +
|
"w.id,\n" +
|
"u.name sponsor_name,\n" +
|
"w.create_at,\n" +
|
"u.image_url,\n" +
|
"w.sponsor_phone,\n" +
|
"w.`status`,\n" +
|
"w.`sponsor_id`,\n" +
|
"w.wish_name,\n" +
|
"count(wu.id)starNum,\n" +
|
"w.detail,\n" +
|
"w.photo_path_list,\n" +
|
"su.`name` responsible_name,\n" +
|
"w.form,\n" +
|
"w.reject_reason,\n" +
|
"w.examine_at,\n" +
|
"w.finish,\n" +
|
"w.finish_photo_path_list,\n" +
|
"w.finish_at,\n" +
|
"w.score,\n" +
|
"w.feedback,\n" +
|
"w.feedback_at,\n" +
|
"w.feedback_photo_path_list,\n" +
|
"w.distribution_at,\n" +
|
"w.evaluate_at,\n" +
|
"w.evaluate \n" +
|
"FROM\n" +
|
"com_act_micro_wish w\n" +
|
"JOIN sys_user u ON w.sponsor_id = u.user_id\n" +
|
"LEFT JOIN sys_user su ON w.responsible_id = su.user_id \n" +
|
"LEFT JOIN com_act_micro_wish_user wu ON w.id = wu.micro_wish_id \n" +
|
"WHERE\n" +
|
"w.id =#{id}"+
|
" group by w.id " +
|
"order by w.create_at desc"
|
)
|
ComActMicroWishVO detailMicroWish(Long id);
|
@Select("SELECT\n" +
|
"'2' type\n" +
|
"FROM\n" +
|
"com_act_micro_wish w \n" +
|
"WHERE\n" +
|
"w.community_id = #{communityId} \n" +
|
"AND w.`status` = 1\n" +
|
"\n" +
|
"union all \n" +
|
"\n" +
|
"SELECT\n" +
|
"'2' type\n" +
|
"FROM\n" +
|
"\tcom_act_micro_wish w \n" +
|
"WHERE\n" +
|
"\tw.community_id = #{communityId} \n" +
|
"\tAND w.`status` = 3 \n" +
|
"\tAND w.form = 1 \n" +
|
"\tAND w.responsible_id = #{userId} \n" +
|
"GROUP BY\n" +
|
"\tw.community_id\n")
|
List<TodoEventsVO> selectNeedToDo(@Param("communityId") Long communityId, @Param("userId") Long userId);
|
}
|