From e3d71e6211ada723d38dbb73479c458465391103 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 19 八月 2025 08:56:41 +0800
Subject: [PATCH] 1、程序化哈格里夫斯(Hargreaves)公式; 2、实现每日定时任务,计算作物蒸腾量,并存储数据库
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java | 22 ++++++++++++++++------
1 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
index df919a9..66ca03c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
@@ -61,6 +61,14 @@
public static void parseAlarmAndState(byte[] bs, int index, AlarmVo vo){
byte b = bs[index] ;
vo.statePump = (byte)(b & 0x1) ;
+
+ //涓庢祴鎺т竴浣撻榾鍏煎
+ if(vo.statePump == 0){
+ vo.statePump = (byte)1;
+ }else{
+ vo.statePump = (byte)0;
+ }
+
vo.alarmWaterRemain = (byte)((b >> 1) & 1) ;
vo.alarm0WaterRemain = (byte)((b >> 2) & 1) ;
vo.alarmExceedYear = (byte)((b >> 3) & 1) ;
@@ -298,7 +306,7 @@
* @param cdData
* @throws Exception
*/
- public static void parseCd93A3(byte[] bs, DataCd93_A3Vo cdData) throws Exception {
+ public static void parseCd93A3(byte[] bs, DataCd93_9D_A3Vo cdData) throws Exception {
int index = ProtocolConstantV206V202404.dataIndex ;
cdData.controllerType = ByteUtil.bytes2Hex(bs, false, index, 1) ;
@@ -320,13 +328,15 @@
index += 8 ;
cdData.orderNo = ByteUtil.BCD2String_BE(bs, index, index + 7) ;
- index += 8 ;
- cdData.startDt = GlParse.parseRtuDt(bs, index) ;
-
if(cdData.clResult == (byte)0x81){
+ //2025-06-11 鐜嬫睙娴峰畨鎺�
//澶辫触浜嗭紝涓嬮潰灏辨病鏈夋暟鎹簡
return ;
}
+
+ index += 8 ;
+ cdData.startDt = GlParse.parseRtuDt(bs, index) ;
+
index += 6 ;
cdData.endDt = GlParse.parseRtuDt(bs, index) ;
@@ -338,7 +348,7 @@
cdData.eleTotalAmount = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
index += 5 ;
- cdData.moneyRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
+ cdData.moneyRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/10000.0D ;
index += 5 ;
cdData.waterRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
@@ -350,7 +360,7 @@
cdData.thisWater = ByteUtil.BCD2Long_LE(bs, index, index + 3)/100.0D ;
index += 4 ;
- cdData.thisMoney = ByteUtil.BCD2Long_LE(bs, index, index + 3)/100.0D ;
+ cdData.thisMoney = ByteUtil.BCD2Long_LE(bs, index, index + 3)/10000.0D ;
index += 4 ;
cdData.thisDuration = ByteUtil.BCD2Int_LE(bs, index, index + 1) ;
--
Gitblit v1.8.0