From 1ba46471b7831f057991ad92573463488504b20e Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期三, 13 十一月 2024 17:41:14 +0800
Subject: [PATCH] 优化未关阀记录接口2
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java | 27 +++++++++++++++++----------
1 files changed, 17 insertions(+), 10 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java
index d6051ea..26eb4b6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java
@@ -1,10 +1,10 @@
package com.dy.common.mw.protocol.p206V202404.parse;
import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
import com.dy.common.mw.protocol.*;
import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.ParseParamsForDownV202404;
-import com.dy.common.mw.protocol.p206V202404.downVos.ComCd22Vo;
import com.dy.common.mw.protocol.p206V202404.downVos.ComCd92_A2Vo;
import com.dy.common.mw.protocol.p206V202404.parse.global.GlCreate;
import com.dy.common.util.ByteUtil;
@@ -23,9 +23,12 @@
MidResultToRtu midRs = new MidResultToRtu() ;
midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+ midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
+ midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
+ midRs.downCodeName = CodeV202404.getCodeName(para.commandCode) ;//涓嬭鍛戒护鍔熻兘鐮佸悕绉�;
midRs.downBuffer = bs ;//涓嬭鍛戒护鏁版嵁
midRs.downBufHex = ByteUtil.bytes2Hex(bs, true) ;//涓嬭鍛戒护鏁版嵁鍗佸叚杩涘埗褰㈠紡
midRs.hasResponse = true ;//鏄惁鏈夊簲绛�
@@ -49,7 +52,8 @@
public byte[] doParse(ParseParamsForDownV202404 para) throws Exception {
byte[] bytes = GlCreate.createStart2Cd(para.rtuAddr, para.commandCode);
if(para.param != null){
- String json = (String)para.param;
+ JSONObject obj = (JSONObject)para.param;
+ String json = obj.toJSONString();
ComCd92_A2Vo cvo = JSON.parseObject(json, ComCd92_A2Vo.class) ;
if(cvo == null){
throw new Exception("json杞珻omCd92_A2Vo涓簄ull") ;
@@ -77,12 +81,12 @@
if(!NumUtil.isPlusIntNumber(cvo.orderNo)){
throw new Exception("璁㈠崟鍙峰繀椤绘槸16浣嶆暟瀛�") ;
}
- if(cvo.orderNo.length() != 12){
+ if(cvo.orderNo.length() != 16){
throw new Exception("璁㈠崟鍙峰繀椤绘槸16浣嶆暟瀛�") ;
}
- byte[] bs = new byte[39] ;
+ byte[] bs = new byte[45] ;
int index = 0 ;
bs[index] = (byte)(Integer.parseInt(cvo.controllerType, 16));
@@ -100,7 +104,7 @@
GlCreate.createIcCardNo(cvo.icCardNo, bs, index);
index += 8 ;
- if(cvo.waterRemain != null){
+ if(cvo.waterRemain == null){
cvo.waterRemain = 0.0 ;
}
String strTemp = "" + Double.valueOf(cvo.waterRemain * 100).intValue() ;
@@ -110,15 +114,15 @@
for(int i = 0 ; i < bTempLen; i++){
bs[index++] = bTemp[i] ;
count ++ ;
- if(count >= 4){
+ if(count >= 5){
break ;
}
}
- for(; count < 4; count++){
+ for(; count < 5; count++){
bs[index++] = 0 ;
}
- if(cvo.moneyRemain != null){
+ if(cvo.moneyRemain == null){
cvo.moneyRemain = 0.0 ;
}
strTemp = "" + (Double.valueOf(cvo.moneyRemain * 100)).intValue() ;
@@ -137,7 +141,7 @@
}
- if(cvo.waterPrice != null){
+ if(cvo.waterPrice == null){
cvo.waterPrice = 0.0 ;
}
strTemp = "" + (Double.valueOf(cvo.waterPrice * 100)).intValue() ;
@@ -156,7 +160,7 @@
}
- if(cvo.elePrice != null){
+ if(cvo.elePrice == null){
cvo.elePrice = 0.0 ;
}
strTemp = "" + (Double.valueOf(cvo.elePrice * 100)).intValue() ;
@@ -178,6 +182,9 @@
ByteUtil.string2BCD_BE(bs, cvo.orderNo, index) ;
index += 8 ;
+ GlCreate.createDt(bs, index);
+
+ index += 6 ;
GlCreate.createPw(bs, index);
index += 2 ;
--
Gitblit v1.8.0