From 21fde820e495c08cfa0ba277685468baa5bf9118 Mon Sep 17 00:00:00 2001
From: 懒羊羊 <15939171744@163.com>
Date: 星期三, 13 十二月 2023 10:27:42 +0800
Subject: [PATCH] OPC

---
 guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/DOP020/impl/DOP020ServerInterfaceImpl.java |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/DOP020/impl/DOP020ServerInterfaceImpl.java b/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/DOP020/impl/DOP020ServerInterfaceImpl.java
index 9f4fb8d..766d579 100644
--- a/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/DOP020/impl/DOP020ServerInterfaceImpl.java
+++ b/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/DOP020/impl/DOP020ServerInterfaceImpl.java
@@ -22,7 +22,9 @@
 import org.openscada.opc.lib.da.Group;
 import org.openscada.opc.lib.da.Item;
 
+import java.text.SimpleDateFormat;
 import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
 import java.time.temporal.ChronoUnit;
 import java.util.Date;
 import java.util.List;
@@ -86,7 +88,6 @@
             }
         }
     }
-
     public void handleOilState(){
         GreaseManageParam param = new GreaseManageParam();
         GreaseManageService greaseManageService = opc.greaseManageService;
@@ -94,20 +95,27 @@
         List<GreaseManageResult> list = greaseManageService.findListBySpec(param);
         if(list.size()>0) {
             String duaDate = list.get(0).getDuaDate();
-            LocalDate date1 = LocalDate.parse(duaDate); // 绗竴涓棩鏈�
-            LocalDate date2 = LocalDate.now(); // 褰撳墠鏃ユ湡锛堟垨鑰呮寚瀹氬叾浠栨棩鏈燂級
 
-            long daysBetween = ChronoUnit.DAYS.between(date1, date2);
-
+            SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
+            String currentDate = format.format(new Date());
+            long  daysBetween = getRemainder(currentDate,duaDate);
             if(daysBetween>0){
-                OPCUnit.write(opc.getOP050_OIL_STATE(), "false"); //鍐欐补鑴傜姸鎬�
+                OPCUnit.write(opc.getDOP020_OIL_STATE(), "false"); //鍐欐补鑴傜姸鎬�
             }else{
-                OPCUnit.write(opc.getOP050_OIL_STATE(), "true"); //鍐欐补鑴傜姸鎬�
+                OPCUnit.write(opc.getDOP020_OIL_STATE(), "true"); //鍐欐补鑴傜姸鎬�
             }
-            logger.info("鍒版湡鏃ユ湡锛�"+date1+"褰撳墠鏃ユ湡锛�"+date1+"鍓╀綑澶╂暟锛氾細"+daysBetween);
+            logger.info("鍒版湡鏃ユ湡锛�"+duaDate+"褰撳墠鏃ユ湡锛�"+currentDate+"鍓╀綑澶╂暟锛氾細"+daysBetween);
         }
     }
 
+    public static long getRemainder(String currentDate,String tableDate){
+        DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyyMMdd");
+        LocalDate localDate1 = LocalDate.parse(currentDate, dateFormatter);
+        LocalDate localDate2 = LocalDate.parse(tableDate, dateFormatter);
+        long days = ChronoUnit.DAYS.between(localDate1, localDate2);
+        return days;
+    }
+
     //PC璇诲伐鍗�
     public void handleOrder() {
         IN_TIME = DateTool.getLocalTimeForDate();

--
Gitblit v1.9.3