xiangpei
2025-05-30 32affb9328997ab51b2c88f7f034c16a1e7ed6d0
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
package cn.lili.modules.im.entity.dto;
 
import cn.hutool.core.text.CharSequenceUtil;
import cn.lili.modules.im.entity.dos.ImTalk;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
 
/**
 * @author paulG
 * @since 2023/2/6
 **/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class IMTalkQueryParams {
 
    @ApiModelProperty("用户1 id")
    private String userId1;
 
    @ApiModelProperty("用户2 id")
    private String userId2;
 
    @ApiModelProperty("用户1 name")
    private String name1;
 
    @ApiModelProperty("用户2 name")
    private String name2;
 
    @ApiModelProperty("关键字")
    private String userName;
 
 
    public QueryWrapper<ImTalk> queryWrapper() {
        QueryWrapper<ImTalk> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(CharSequenceUtil.isNotEmpty(userId1), "user_id1", this.userId1);
        queryWrapper.eq(CharSequenceUtil.isNotEmpty(userId2), "user_id2", this.userId2);
        queryWrapper.eq(CharSequenceUtil.isNotEmpty(name1), "name1", this.name1);
        queryWrapper.eq(CharSequenceUtil.isNotEmpty(name2), "name2", this.name2);
        queryWrapper.nested(CharSequenceUtil.isNotEmpty(userName), i -> i.like("name1", userName).or().like("name2", userName));
        return queryWrapper;
    }
}