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/DeviceConfigVO.java | 211 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 211 insertions(+), 0 deletions(-)
diff --git a/mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceConfigVO.java b/mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceConfigVO.java
new file mode 100644
index 0000000..2480b8a
--- /dev/null
+++ b/mes-processes/mes-plcSend/src/main/java/com/mes/device/vo/DeviceConfigVO.java
@@ -0,0 +1,211 @@
+package com.mes.device.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 璁惧閰嶇疆瑙嗗浘瀵硅薄
+ *
+ * @author mes
+ * @since 2024-10-30
+ */
+public class DeviceConfigVO {
+
+ /**
+ * 璁惧閰嶇疆淇℃伅
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class DeviceInfo {
+ private Long id;
+ private String deviceCode;
+ private String deviceName;
+ private String deviceType;
+ private String deviceModel;
+ private String manufacturer;
+ private String location;
+ private String status;
+ private String deviceStatus;
+ private String plcIp;
+ private Integer plcPort;
+ private String plcType;
+ private String moduleName;
+ private Boolean isPrimary;
+ private Boolean enabled;
+ private String protocol;
+ private String connectionType;
+ private String description;
+ private Boolean isEnabled;
+ private Date lastHeartbeat;
+ private Date createdTime;
+ private Date updatedTime;
+ private String extraParams;
+ private Long projectId;
+ }
+
+ /**
+ * 璁惧鏍戣妭鐐�
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class DeviceTreeNode {
+ private Long id;
+ private String label;
+ private String type;
+ private String icon;
+ private String status;
+ private Boolean disabled;
+ private Boolean isGroup;
+ private List<DeviceTreeNode> children;
+ private Object data;
+ }
+
+ /**
+ * 璁惧鍋ュ悍妫�鏌ョ粨鏋�
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class HealthCheckResult {
+ private Boolean isHealthy;
+ private String overallStatus;
+ private LocalDateTime checkTime;
+ private Integer responseTime;
+ private Integer connectionTimeout;
+ private String lastError;
+ private List<HealthCheckItem> checkItems;
+ private String summary;
+ }
+
+ /**
+ * 鍋ュ悍妫�鏌ラ」鐩�
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class HealthCheckItem {
+ private String itemName;
+ private String status;
+ private String message;
+ private Integer responseTime;
+ private String details;
+ }
+
+ /**
+ * 璁惧鐩戞帶淇℃伅
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class DeviceMonitoring {
+ private Long deviceId;
+ private String deviceName;
+ private String status;
+ private Boolean isOnline;
+ private LocalDateTime lastHeartbeat;
+ private Double cpuUsage;
+ private Double memoryUsage;
+ private Double networkTraffic;
+ private Integer activeConnections;
+ private List<DeviceMetric> metrics;
+ }
+
+ /**
+ * 璁惧鎸囨爣
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class DeviceMetric {
+ private String metricName;
+ private String metricValue;
+ private String metricUnit;
+ private LocalDateTime timestamp;
+ private String status;
+ }
+
+ /**
+ * 璁惧閰嶇疆璇︽儏锛堢敤浜庣紪杈戣〃鍗曪級
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class DeviceConfigDetail {
+ private Long id;
+ private String deviceCode;
+ private String deviceName;
+ private String deviceType;
+ private String deviceModel;
+ private String manufacturer;
+ private String location;
+ private String status;
+ private String ipAddress;
+ private Integer port;
+ private String protocol;
+ private String connectionType;
+ private String username;
+ private String password;
+ private String description;
+ private Boolean isEnabled;
+ private String extraParams;
+ private LocalDateTime createdTime;
+ private LocalDateTime updatedTime;
+ }
+
+ /**
+ * 璁惧杩炴帴娴嬭瘯缁撴灉
+ */
+ @Data
+ @NoArgsConstructor
+ @AllArgsConstructor
+ public static class ConnectionTestResult {
+ private Boolean isSuccess;
+ private String message;
+ private Integer responseTime;
+ private LocalDateTime testTime;
+ private String errorMessage;
+ private List<String> testDetails;
+ }
+
+ /**
+ * 璁惧鎵归噺鎿嶄綔缁撴灉
+ */
+ @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 DevicePerformanceStats {
+ private Long deviceId;
+ private String deviceName;
+ private Double averageCpuUsage;
+ private Double averageMemoryUsage;
+ private Double averageNetworkTraffic;
+ private Integer totalConnections;
+ private Integer totalRequests;
+ private Integer successRequests;
+ private Integer failureRequests;
+ private Double successRate;
+ private LocalDateTime statsTime;
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0