From e76f0739e647fe8a7e0e2618914e2faff554b1b7 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期一, 17 十一月 2025 17:33:23 +0800
Subject: [PATCH] 解决冲突

---
 mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceGroupConfigVO.java |  189 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 189 insertions(+), 0 deletions(-)

diff --git a/mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceGroupConfigVO.java b/mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceGroupConfigVO.java
new file mode 100644
index 0000000..bfa476a
--- /dev/null
+++ b/mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceGroupConfigVO.java
@@ -0,0 +1,189 @@
+package com.mes.device.vo;
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.AllArgsConstructor;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璁惧缁勯厤缃鍥惧璞�
+ * 
+ * @author mes
+ * @since 2024-10-30
+ */
+public class DeviceGroupConfigVO {
+
+    /**
+     * 璁惧缁勯厤缃俊鎭�
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupInfo {
+        private Long id;
+        private String groupCode;
+        private String groupName;
+        private String groupType;
+        private String description;
+        private String status;
+        private Integer deviceCount;
+        private Boolean isEnabled;
+        private String location;
+        private String supervisor;
+        private Date createdTime;
+        private Date updatedTime;
+        private String extraConfig;
+        private Long projectId;
+    }
+
+    /**
+     * 璁惧缁勯厤缃鎯咃紙鐢ㄤ簬缂栬緫琛ㄥ崟锛�
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupConfigDetail {
+        private Long id;
+        private String groupCode;
+        private String groupName;
+        private String groupType;
+        private String description;
+        private String status;
+        private Boolean isEnabled;
+        private String location;
+        private String supervisor;
+        private String contactInfo;
+        private String emergencyContact;
+        private String maintenanceSchedule;
+        private String extraConfig;
+        private Date createdTime;
+        private Date updatedTime;
+    }
+
+    /**
+     * 璁惧缁勭洃鎺т俊鎭�
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupMonitoring {
+        private Long groupId;
+        private String groupName;
+        private String status;
+        private Boolean isOnline;
+        private Integer totalDevices;
+        private Integer onlineDevices;
+        private Integer offlineDevices;
+        private Integer faultDevices;
+        private LocalDateTime lastHeartbeat;
+        private Double groupHealthScore;
+        private List<DeviceStatusInfo> deviceStatuses;
+    }
+
+    /**
+     * 璁惧鐘舵�佷俊鎭�
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class DeviceStatusInfo {
+        private Long deviceId;
+        private String deviceName;
+        private String deviceCode;
+        private String status;
+        private Boolean isOnline;
+        private LocalDateTime lastHeartbeat;
+        private String role;
+    }
+
+    /**
+     * 璁惧缁勬爲鑺傜偣
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupTreeNode {
+        private Long id;
+        private String label;
+        private String type;
+        private String icon;
+        private String status;
+        private Boolean disabled;
+        private List<GroupTreeNode> children;
+        private Object data;
+    }
+
+    /**
+     * 璁惧缁勪换鍔′俊鎭�
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupTaskInfo {
+        private Long taskId;
+        private String taskName;
+        private String taskType;
+        private String status;
+        private Integer priority;
+        private LocalDateTime startTime;
+        private LocalDateTime endTime;
+        private Integer progress;
+        private String assignedDevices;
+        private String executor;
+        private String result;
+    }
+
+    /**
+     * 璁惧缁勬壒閲忔搷浣滅粨鏋�
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class BatchOperationResult {
+        private Integer totalCount;
+        private Integer successCount;
+        private Integer failureCount;
+        private List<String> successIds;
+        private List<String> failureIds;
+        private List<String> errorMessages;
+    }
+
+    /**
+     * 璁惧缁勬�ц兘缁熻
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class GroupPerformanceStats {
+        private Long groupId;
+        private String groupName;
+        private Integer totalDevices;
+        private Integer activeDevices;
+        private Double averageCpuUsage;
+        private Double averageMemoryUsage;
+        private Integer totalTasksCompleted;
+        private Double successRate;
+        private Double availability;
+        private Date statsTime;
+        private List<DevicePerformance> devicePerformances;
+    }
+
+    /**
+     * 璁惧鎬ц兘淇℃伅
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    public static class DevicePerformance {
+        private Long deviceId;
+        private String deviceName;
+        private Double cpuUsage;
+        private Double memoryUsage;
+        private Integer tasksCompleted;
+        private Double successRate;
+        private String status;
+    }
+}
\ No newline at end of file

--
Gitblit v1.8.0