From c115e881f015101269bd4010175ddf448a248731 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Thu, 27 Nov 2025 17:04:17 +0800
Subject: [PATCH] 2025-11-27 zwy Hms接口完成

---
 ard-sample/src/main/java/com/ard/sample/manage/model/param/DeviceHmsQueryParam.java |   35 ++++++++++++++++++++++++++++++++---
 1 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/ard-sample/src/main/java/com/ard/sample/manage/model/param/DeviceHmsQueryParam.java b/ard-sample/src/main/java/com/ard/sample/manage/model/param/DeviceHmsQueryParam.java
index 424d41c..8253725 100644
--- a/ard-sample/src/main/java/com/ard/sample/manage/model/param/DeviceHmsQueryParam.java
+++ b/ard-sample/src/main/java/com/ard/sample/manage/model/param/DeviceHmsQueryParam.java
@@ -5,6 +5,8 @@
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import javax.validation.constraints.Min;
+import java.util.Collections;
 import java.util.Set;
 
 /**
@@ -18,7 +20,8 @@
 @NoArgsConstructor
 public class DeviceHmsQueryParam {
 
-    private Set<String> deviceSn;
+    // 空集合兜底:避免getDeviceSn()返回null
+    private Set<String> deviceSn = Collections.emptySet();
 
     private Long beginTime;
 
@@ -28,11 +31,37 @@
 
     private String message;
 
-    private Long page;
+    // SpringBoot 校验:页码最小为1
+    @Min(value = 1, message = "页码不能小于1")
+    private Long page = 1L;
 
-    private Long pageSize;
+    // 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;
 }

--
Gitblit v1.9.3