liusuyi
2025-12-27 fbced0c4dd4950a184f8471ef71995aa93dafd50
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
package com.ard.sample.manage.model.param;
 
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
 
import javax.validation.constraints.Min;
import java.util.Collections;
import java.util.Set;
 
/**
 * @author sean
 * @version 1.1
 * @date 2022/7/8
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DeviceHmsQueryParam {
 
    // 空集合兜底:避免getDeviceSn()返回null
    private Set<String> deviceSn = Collections.emptySet();
 
    private Long beginTime;
 
    private Long endTime;
 
    private String language;
 
    private String message;
 
    // SpringBoot 校验:页码最小为1
    @Min(value = 1, message = "页码不能小于1")
    private Long page = 1L;
 
    // SpringBoot 校验:页大小最小为0(0表示返回全部)
    @Min(value = 0, message = "页大小不能小于0(0表示返回全部数据)")
    private Long pageSize = 10L;
 
    private Integer level;
 
    private Long updateTime;
 
    // Builder模式兼容空集合
    public static class DeviceHmsQueryParamBuilder {
        private Set<String> deviceSn = Collections.emptySet();
    }
//    private Set<String> deviceSn;
//
//    private Long beginTime;
//
//    private Long endTime;
//
//    private String language;
//
//    private String message;
//
//    private Long page;
//
//    private Long pageSize;
//
//    private Integer level;
//
//    private Long updateTime;
}