From aec4636e4fb430055feb66751da0e6c05bb864df Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 30 四月 2025 16:25:30 +0800
Subject: [PATCH] fix(irrigatePlan): 修复终止灌溉计划时长设置错误- 将终止计划的默认时长从 9999 修改为 0 - 此修改确保在终止灌溉计划时,不会出现时长设置过长的问题
---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/resource/ResourceUnit.java | 150 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 150 insertions(+), 0 deletions(-)
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/resource/ResourceUnit.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/resource/ResourceUnit.java
new file mode 100644
index 0000000..7660124
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/resource/ResourceUnit.java
@@ -0,0 +1,150 @@
+package com.dy.rtuMw.resource;
+
+import java.io.File;
+import java.text.DecimalFormat;
+import java.util.Date;
+import java.util.TreeMap;
+
+import com.dy.rtuMw.resource.rtuLog.RtuLogNode;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.springframework.context.ApplicationContext;
+
+import com.dy.common.mw.UnitAdapterInterface;
+import com.dy.common.mw.UnitInterface;
+import com.dy.common.mw.UnitCallbackInterface;
+import com.dy.rtuMw.resource.rtuLog.RtuLogManager;
+import com.dy.common.util.DateTime;
+
+public class ResourceUnit implements UnitInterface {
+
+ private static final Logger log = LogManager.getLogger(ResourceUnit.class) ;
+
+ private static final ResourceUnit instance = new ResourceUnit() ;
+
+ //private static SupportUnit supUnit ;
+ public static ResourceUnitAdapter adapter ;
+ public static ResourceUnitConfigVo confVo ;
+
+ public static ApplicationContext springContext ;
+
+ private ResourceUnit(){}
+
+ @SuppressWarnings("unused")
+ public static ResourceUnit getInstance(){
+ return instance ;
+ }
+
+ @Override
+ public void setAdapter(UnitAdapterInterface adapter) throws Exception {
+ if(adapter == null){
+ throw new Exception("璧勬簮妯″潡閫傞厤鍣ㄥ璞′笉鑳戒负绌猴紒") ;
+ }
+ ResourceUnit.adapter = (ResourceUnitAdapter)adapter ;
+ ResourceUnit.confVo = ResourceUnit.adapter.getConfig() ;
+ if(ResourceUnit.confVo == null){
+ throw new Exception("璧勬簮妯″潡閰嶇疆瀵硅薄涓嶈兘涓虹┖锛�") ;
+ }
+ }
+
+ /*
+ * 璁剧疆鏀寔鍗曞厓
+ * @param supUnit
+ public void setSupportUnit(SupportUnit supUnit){
+ ResourceUnit.supUnit = supUnit ;
+ }*/
+
+ /**
+ * 璁剧疆spring涓婁笅鏂�
+ * @param springContext Spring瀹瑰櫒涓婁笅鏂囧璞�
+ */
+ @SuppressWarnings("unused")
+ public void setSpringContext(ApplicationContext springContext) {
+ ResourceUnit.springContext = springContext ;
+ }
+ @Override
+ public void start(UnitCallbackInterface callback) throws Exception {
+ if(ResourceUnit.springContext == null){
+ throw new Exception("Spring涓婁笅鏂囧璞℃湭璁剧疆锛�") ;
+ }
+ callback.call(null) ;
+ System.out.println("璧勬簮妯″潡鎴愬姛鍚姩");
+ }
+
+ @Override
+ public void stop(UnitCallbackInterface callback) {
+ }
+
+ /**
+ * 璁板綍Rtu鏃ュ織
+ * @param node 鏃ュ織闃熷垪涓殑鑺傜偣瀵硅薄
+ */
+ @SuppressWarnings("unused")
+ public void rtuLog(RtuLogNode node){
+ if(node != null && node.rtuAddr != null && node.content != null){
+ try {
+ RtuLogManager.getInstance().pushRtuLog(node);
+ } catch (Exception e) {
+ log.error(e);
+ }
+ }
+ }
+
+
+ /**
+ * 寰楀埌Rtu鎵�鏈夋棩蹇楁枃浠�
+ * @param rtuAddr 鎺у埗鍣ㄥ湴鍧�
+ * @return 鏂囦欢鍒楄〃锛堟枃浠跺悕绉帮紝鏂囦欢澶у皬锛屾枃浠舵渶鍚庝慨鏀规椂闂达級
+ */
+ @SuppressWarnings("unused")
+ public TreeMap<String, String[]> listLogFilesName(String rtuAddr){
+ File f = new File(ResourceUnit.confVo.rtuLogDir) ;
+ TreeMap<String, String[]> map = new TreeMap<>() ;
+ if(f.isDirectory()){
+ File[] fs = f.listFiles() ;
+ if(fs != null && fs.length > 0){
+ String fileName ;
+ for(File ff : fs){
+ if(ff != null){
+ fileName = ff.getName() ;
+ if(fileName.startsWith(rtuAddr)){
+ String[] ss = new String[3] ;
+ ss[0] = ff.getName() ;
+ ss[1] = formatFileSize(ff.length()) ;
+ ss[2] = DateTime.yyyy_MM_dd_HH_mm_ss(new Date(ff.lastModified())) ;
+ map.put(ss[0], ss) ;
+ }
+ }
+ }
+ }
+ }
+ return map ;
+ }
+
+ /**
+ * 寰楀埌涓�涓棩蹇楁枃浠�
+ * @param fileName 鏂囦欢鍚嶇О([rtuAddr].log)
+ */
+ @SuppressWarnings("unused")
+ public File getLogFile(String fileName){
+ return new File(ResourceUnit.confVo.rtuLogDir + fileName);
+ }
+
+ private String formatFileSize(long fileS) {//閫氳繃File鐨� length()鏂规硶鏁板�间紶鍏�
+ DecimalFormat df = new DecimalFormat("#.00");
+ String fileSizeString;
+ if (fileS < 1024) {
+ fileSizeString = df.format((double) fileS) + " B";
+ } else if (fileS < 1048576) {
+ fileSizeString = df.format((double) fileS / 1024) + " K";
+ } else if (fileS < 1073741824) {
+ fileSizeString = df.format((double) fileS / 1048576) + " M";
+ } else {
+ fileSizeString = df.format((double) fileS / 1073741824) + " G";
+ }
+ return fileSizeString;
+ }
+
+
+
+}
--
Gitblit v1.8.0