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/OP050/impl/OP050ServerInterfaceImpl.java | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) diff --git a/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/OP050/impl/OP050ServerInterfaceImpl.java b/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/OP050/impl/OP050ServerInterfaceImpl.java index 6109024..8cca803 100644 --- a/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/OP050/impl/OP050ServerInterfaceImpl.java +++ b/guns-vip-main/src/main/java/cn/stylefeng/guns/plcserver/server/OP050/impl/OP050ServerInterfaceImpl.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; @@ -97,20 +99,26 @@ 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"); //鍐欐补鑴傜姸鎬� }else{ OPCUnit.write(opc.getOP050_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