huanghongfa
2020-12-10 f76377ffd111434d90c5aaf5507cd33a982d4aa6
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
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.ComActActivityVO;
import com.panzhihua.common.model.vos.community.ComActDynVO;
import com.panzhihua.service_community.model.dos.ComActDynDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
 
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 社区动态
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-12-07 14:06
 **/
@Mapper
public interface ComActDynDAO extends BaseMapper<ComActDynDO> {
    @Select("<script> " +
            "SELECT \n" +
            "d.id,\n" +
            "d.title,\n" +
            "COUNT(u.id)readNum,\n" +
            "d.`status`,\n" +
            "d.is_topping,\n" +
            "d.publish_at,\n" +
            "d.create_at\n" +
            "FROM\n" +
            "com_act_dyn d\n" +
            "LEFT JOIN com_act_dyn_user u ON d.id = u.dyn_id \n" +
            "WHERE\n" +
            "d.community_id=#{comActDynVO.communityId}\n" +
            "<if test='comActDynVO.title != null and comActDynVO.title.trim() != &quot;&quot;'>" +
            "d.title = #{comActDynVO.title} \n" +
            " </if> " +
            "<if test='comActDynVO.isTopping != null '>" +
            "AND d.is_topping = #{comActDynVO.isTopping} \n" +
            " </if> " +
            "<if test='comActDynVO.status != null '>" +
            "AND d.`status` = #{comActDynVO.status} \n" +
            " </if> " +
            "<if test='comActDynVO.publishAtBegin != null and comActDynVO.publishAtBegin.trim() != &quot;&quot;'>" +
            "AND d.publish_at BETWEEN #{comActDynVO.publishAtBegin} \n" +
            "AND #{comActDynVO.publishAtEnd}" +
            " </if> " +
            " group by d.id  "+
            " order by d.is_topping , d.create_at desc "+
            "</script>")
    IPage<ComActDynVO> pageDynamic(Page page, @Param("comActDynVO") ComActDynVO comActDynVO);
}