From 709e07347ac86c766582518345352af2fa286f22 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期三, 04 六月 2025 09:12:20 +0800
Subject: [PATCH] 修改自动化添加日志代码

---
 lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java |   53 +++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 45 insertions(+), 8 deletions(-)

diff --git a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java
index 5c649d2..5364928 100644
--- a/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java
+++ b/lxzn-module-msi/src/main/java/org/jeecg/modules/msi/webapi/service/impl/MsiWebapiJsonServiceImpl.java
@@ -19,10 +19,9 @@
 import java.sql.Connection;
 import java.sql.SQLException;
 import java.sql.Statement;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 @Service
 public class MsiWebapiJsonServiceImpl extends ServiceImpl<MsiWebapiJsonMapper, MsiWebapiJsonEntity> implements IMsiWebapiJsonService {
@@ -42,8 +41,31 @@
         }
         List<String> listStatus = new ArrayList<>();
         List<String> listParameter = new ArrayList<>();
+
+        // 鐢ㄤ簬璁板綍鍓嶄竴鏉¤褰曠殑鐘舵�佸��
+        String prevRunningStatus = null;
+
         for (MachineEquipentInfo machineInfo : data) {
             System.out.println(machineInfo);
+
+            // 鑾峰彇褰撳墠璁板綍鐨剅unningStatus鍊�
+            String currentRunningStatus = null;
+            for (DetailedListVo item : machineInfo.getItemList()) {
+                if ("runningStatus".equals(item.getItemName())) {
+                    currentRunningStatus = item.getItemValue();
+                    break;
+                }
+            }
+
+            // 濡傛灉褰撳墠鐘舵�佷笌鍓嶄竴鏉$浉鍚岋紝鍒欒烦杩�
+            if (currentRunningStatus != null && currentRunningStatus.equals(prevRunningStatus)) {
+                continue;
+            }
+
+            // 鏇存柊鍓嶄竴鏉¤褰曠殑鐘舵�佸��
+            prevRunningStatus = currentRunningStatus;
+
+            // 鐢熸垚SQL
             String stutus = listSqls(machineInfo);
             if (stutus != null && !stutus.equals("")) {
                 listStatus.add(stutus);
@@ -56,7 +78,9 @@
         // 鎵ц鐘舵�佹暟鎹甋QL
         try {
             executeBatchSql(listStatus);
-            executeBatchSql(listParameter);
+            if (!listParameter.isEmpty()) {
+                executeBatchSql(listParameter);
+            }
             return true;
         } catch (Exception e) {
             log.error("鎵цSQL鎵归噺鎻掑叆澶辫触", e);
@@ -125,10 +149,23 @@
         //EquipmentName
         sql = sql + null + ", ";
         //CollectTime
-        if (machineInfo.getEndTime() != null) {
-            sql = sql + "'" + DateUtils.formattedDate(machineInfo.getEndTime(),DateUtils.STR_DD_MM_YYYY,DateUtils.STR_DATE_TIME_SMALL) + "', ";
+        // 鍋囪 endTime 鏄� "MM/dd/yyyy HH:mm:ss" 鏍煎紡鐨勫瓧绗︿覆
+        if (machineInfo.getEndTime() != null && !machineInfo.getEndTime().isEmpty()) {
+            try {
+                // 1. 灏嗗瓧绗︿覆瑙f瀽涓� Date 瀵硅薄
+                SimpleDateFormat inputFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
+                Date endDate = inputFormat.parse(machineInfo.getEndTime());
+
+                // 2. 灏� Date 鏍煎紡鍖栦负鐩爣 SQL 鏍煎紡锛堝 "yyyy-MM-dd HH:mm:ss"锛�
+                SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                sql = sql + "'" + outputFormat.format(endDate) + "', ";
+            } catch (ParseException e) {
+                // 澶勭悊瑙f瀽澶辫触鐨勬儏鍐碉紙濡傛棩蹇楄褰曟垨鎶涘嚭寮傚父锛�
+                throw new RuntimeException("Invalid end time format: " + machineInfo.getEndTime(), e);
+            }
         } else {
-            sql = sql + "'" + DateUtils.format(DateUtils.getDate(),DateUtils.STR_DATE_TIME) + "', ";
+            // 濡傛灉 endTime 涓� null 鎴栫┖锛屼娇鐢ㄥ綋鍓嶆椂闂�
+            sql = sql + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + "', ";
         }
         //runningStatus
         if (itemMap.containsKey("runningStatus")) {

--
Gitblit v1.9.3