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 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 deviceSn = Collections.emptySet(); } // private Set 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; }