mitao
2025-02-21 31573d6180d15ef65ed0df9c2732495f40b12663
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
package com.panzhihua.service_community.dao;
 
import java.util.List;
import java.util.Map;
 
import com.panzhihua.common.model.vos.community.ActivitySignInRecordVO;
import com.panzhihua.common.model.vos.community.ComActActSignExcelVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
 
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.dtos.community.bigscreen.work.ScreenActActivityPeopleListDTO;
import com.panzhihua.common.model.vos.community.ActivitySignVO;
import com.panzhihua.common.model.vos.community.screen.work.ActActivityPeopleListVO;
import com.panzhihua.service_community.model.dos.ComActActSignDO;
 
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 社区活动报名记录
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-12-07 14:09
 **/
@Mapper
public interface ComActActSignDAO extends BaseMapper<ComActActSignDO> {
    // 居民 党员 志愿者 1 2 3
//    @Select("<script> " + "SELECT " + "u.user_id id, " + "u.image_url, " + "u.name, " + "u.nick_name, "
//        + "case WHEN u.is_partymember = 1 THEN '党员' WHEN a.is_volunteer = 1 THEN '志愿者' ELSE '居民' END identity, "
//        + "u.phone, " + "u.tags, " + "a.create_at,  " + "a.is_volunteer, a.status , a.times ,a.reason,a.award,t.limit " + "FROM " + "com_act_act_sign a "
//        + "JOIN sys_user u ON a.user_id = u.user_id  left join com_act_activity t on a.activity_id = t.id" + "WHERE " + "a.activity_id = #{activitySignVO.activityId}  "
//        + "<if test='activitySignVO.phone != null and activitySignVO.phone != &quot;&quot;'>"
//        + "AND u.phone = #{activitySignVO.phone}  " + " </if> "
//        + "<if test='activitySignVO.status != null'>"
//        + "AND a.status = #{activitySignVO.status}  " + " </if> "
//        + "<if test='activitySignVO.tags != null and activitySignVO.tags != &quot;&quot;'>"
//        + "AND u.tags like concat('%',#{activitySignVO.tags},'%')   " + " </if> "
//        + "<if test='activitySignVO.name != null and activitySignVO.name != &quot;&quot;'>"
//        + "AND u.`name` = #{activitySignVO.name}  " + " </if> "
//        + "<if test='activitySignVO.identity != null and activitySignVO.identity != &quot;&quot; and activitySignVO.identity==1'>"
//        + "AND u.is_partymember = 0 and a.is_volunteer=0  " + " </if> "
//        + "<if test='activitySignVO.identity != null and activitySignVO.identity != &quot;&quot; and activitySignVO.identity==2'>"
//        + "AND u.is_partymember = 1    " + " </if> "
//        + "<if test='activitySignVO.identity != null and activitySignVO.identity != &quot;&quot; and activitySignVO.identity==3'>"
//        + "AND a.is_volunteer=1   " + " </if> " + "<if test='activitySignVO.type != null and activitySignVO.type != 0'>"
//        + "AND a.is_volunteer=#{activitySignVO.type}-1   " + " </if> " + " order by a.create_at desc " + "</script>")
    IPage<ActivitySignVO> listActivitySign(Page page, @Param("activitySignVO") ActivitySignVO activitySignVO);
 
    IPage<ActivitySignVO> listActivitySignParty(Page page, @Param("activitySignVO") ActivitySignVO activitySignVO);
 
//@Select("<script> " + "SELECT " + "u.user_id id, " + "u.image_url, " + "u.name, " + "u.nick_name, u.openid, "
//        + "CASE WHEN a.is_volunteer = 1 THEN '志愿者' ELSE '居民' END identity, "
//        + "u.phone, " + "u.tags, " + "a.create_at,  " + "a.is_volunteer, a.status , a.reason, t.limit " + "FROM " + "com_act_act_sign a "
//        + "JOIN sys_user u ON a.user_id = u.user_id  left join com_act_activity t on a.activity_id = t.id " + "WHERE " + "a.activity_id = #{activitySignVO.activityId}  "
//        + "<if test='activitySignVO.phone != null and activitySignVO.phone != &quot;&quot;'>"
//        + "AND u.phone = #{activitySignVO.phone}  " + " </if> "
//        + "<if test='activitySignVO.status != null'>"
//        + "AND a.status = #{activitySignVO.status}  " + " </if> "
//        + "<if test='activitySignVO.name != null and activitySignVO.name != &quot;&quot;'>"
//        + "AND u.`name` = #{activitySignVO.name}  " + " </if> "
//        + "<if test='activitySignVO.identity != null and activitySignVO.identity != &quot;&quot; and activitySignVO.identity==1'>"
//        + "AND u.is_partymember = 0 and a.is_volunteer=0  " + " </if> "
//        + "<if test='activitySignVO.identity != null and activitySignVO.identity != &quot;&quot; and activitySignVO.identity==2'>"
//        + "AND u.is_partymember = 1    " + " </if> "
//        + "<if test='activitySignVO.identity != null and activitySignVO.identity != &quot;&quot; and activitySignVO.identity==3'>"
//        + "AND a.is_volunteer=1   " + " </if> " + "<if test='activitySignVO.type != null and activitySignVO.type != 0'>"
//        + "AND a.is_volunteer=#{activitySignVO.type}-1   " + " </if> " + " order by a.create_at desc " + "</script>")
    List<ActivitySignVO> listActivitySigns(@Param("activitySignVO") ActivitySignVO activitySignVO);
 
    List<ComActActSignExcelVO> getSignLists (@Param("activitySignVO") ActivitySignVO activitySignVO);
 
    @Select("<script> " + "SELECT " + " caas.user_id, " + " su.NAME, " + "CASE WHEN caas.is_volunteer = 1 THEN '志愿者' ELSE '居民' END identity, "
        + " su.phone, " + " caas.create_at  " + "FROM "
        + " com_act_act_sign AS caas "
        + " LEFT JOIN sys_user AS su ON su.user_id = caas.user_id where caas.activity_id = #{activityPeopleListDTO.activityId} "
        + "<if test='activityPeopleListDTO.phone != null and activityPeopleListDTO.phone != &quot;&quot;'>"
        + " and su.phone like concat (#{activityPeopleListDTO.phone},'%') " + " </if> "
        + "<if test='activityPeopleListDTO.cardNo != null and activityPeopleListDTO.cardNo != &quot;&quot;'>"
        + " AND su.id_card = #{activityPeopleListDTO.cardNo}  " + " </if> "
        + "<if test='activityPeopleListDTO.name != null and activityPeopleListDTO.name != &quot;&quot;'>"
        + " AND su.name like concat (#{activityPeopleListDTO.name},'%') " + " </if> " + " </script>")
    IPage<ActActivityPeopleListVO> getActActivityPeopleList(Page page,
        @Param("activityPeopleListDTO") ScreenActActivityPeopleListDTO activityPeopleListDTO);
 
    @Select("select openid from sys_user where user_id = #{userId}")
    Map<String, String> getUserOpenId(@Param("userId") Long userId);
 
    /**
     * 获取需要默认好评的记录
     * @param activityIds 活动id list
     * @return 需要默认好评的记录列表
     */
    List<ComActActSignDO> selectNeedEvaluateSignRecords(@Param("activityIds") List<Long> activityIds);
 
    /**
     * 获取活动报名签到记录
     * @param id 活动主键id
     * @return
     */
    List<ActivitySignInRecordVO> listSignInRecord(@Param("id") Long id);
 
    /**
     * 获取用户活动报名记录
     * @param userId
     * @return
     */
    List<ActivitySignVO> selectList(@Param("userId") Long userId);
}