From 2b3defc58765bdd126901b809448868a5f8feb3c Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期三, 29 五月 2024 15:12:56 +0800
Subject: [PATCH] 2024-05-29 朱宝民
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_97_Down.java | 58 ++++++++++++++++++++++++++++++++++------------------------
1 files changed, 34 insertions(+), 24 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_97_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_97_Down.java
index 636e274..8bf0468 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_97_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_97_Down.java
@@ -1,11 +1,15 @@
package com.dy.common.mw.protocol.p206V1_0_0.parse;
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
import com.dy.common.mw.protocol.*;
import com.dy.common.mw.protocol.p206V1_0_0.CodeV1_0_1;
import com.dy.common.mw.protocol.p206V1_0_0.CommonV1_0_1;
import com.dy.common.mw.protocol.p206V1_0_0.ParseParamsForDownV1_0_1;
import com.dy.common.mw.protocol.p206V1_0_0.ProtocolConstantV206V1_0_0;
+import com.dy.common.mw.protocol.p206V1_0_0.downVos.Com97Vo;
import com.dy.common.mw.protocol.p206V1_0_0.parse.global.GlCreate;
+import com.dy.common.mw.protocol.p206V202404.downVos.ComCd87Vo;
import com.dy.common.util.ByteUtil;
import com.dy.common.util.ByteUtilUnsigned;
@@ -28,7 +32,7 @@
MidResultToRtu midRs = new MidResultToRtu() ;
midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
- midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃锛堢數淇″钩鍙拌澶嘔MEI锛�
+ midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
midRs.downBuffer = bs ;//涓嬭鍛戒护鏁版嵁
@@ -73,30 +77,36 @@
ByteUtil.hex2Bytes(para.commandCode, bsHead, index) ;
- /*
- 鍙傛暟鏍煎紡锛� 铏氭嫙鍗″彿,鐢靛瓙閽卞寘浣欓,姘翠环
- */
- String param = (String)para.param ;
- if(param == null || param.trim().equals("")){
- throw new Exception("鏈彁渚涘懡浠ゅ弬鏁版暟鎹紝涓嶈兘鏋勯�犲姛鑳界爜涓�" + CodeV1_0_1.cd_97 + "鐨勪笅琛屽懡浠�") ;
- }else{
- String[] params = ((String)para.param).split(",") ;
- if(params == null || params.length != 3){
- throw new Exception("鍛戒护鍙傛暟鏁版嵁涓嶆纭紝涓嶈兘鏋勯�犲姛鑳界爜涓�" + CodeV1_0_1.cd_97 + "鐨勪笅琛屽懡浠�") ;
- }else{
- byte index1 = 0 ;
- byte[] bs = new byte[11] ;
- ByteUtil.string2BCD_LE(bs, params[0], 0) ;
-
- Integer money = (Double.valueOf(Double.parseDouble(params[1]) * 100)).intValue() ;
- ByteUtilUnsigned.int2Bytes_LE(bs, money, 4);
-
- Short price = (Double.valueOf(Double.parseDouble(params[2]) * 100)).shortValue() ;
- ByteUtilUnsigned.short2Bytes_LE(bs, price, 8);
-
- bytes = ByteUtil.bytesMerge(bsHead, bs) ;
- }
+ JSONObject obj = (JSONObject)para.param;
+ String json = obj.toJSONString();
+ Com97Vo cvo = JSON.parseObject(json, Com97Vo.class) ;
+ if(cvo == null){
+ throw new Exception("json杞珻om97Vo涓簄ull") ;
}
+ if(cvo.icCardNo == null){
+ throw new Exception("铏氭嫙IC鍗$紪鍙蜂笉鑳戒负绌�") ;
+ }
+ if(cvo.money == null){
+ throw new Exception("鍓╀綑閲戦涓嶈兘涓虹┖") ;
+ }
+ if(cvo.price == null){
+ throw new Exception("姘翠环涓嶈兘涓虹┖") ;
+ }
+ String icCardNo = null ;
+ if(cvo.icCardNo.length() > 10){
+ icCardNo = cvo.icCardNo.substring(cvo.icCardNo.length() - 10) ;
+ }
+
+ byte[] bs = new byte[11] ;
+ ByteUtil.string2BCD_LE(bs, icCardNo, 0) ;
+
+ Integer money = Double.valueOf(cvo.money * 100.0D).intValue() ;
+ ByteUtilUnsigned.int2Bytes_LE(bs, money, 4);
+
+ Short price = Double.valueOf(cvo.price * 100.0D).shortValue() ;
+ ByteUtilUnsigned.short2Bytes_LE(bs, price, 8);
+
+ bytes = ByteUtil.bytesMerge(bsHead, bs) ;
GlCreate.createLen(bytes);//闀垮害鏀惧瓧鑺傛暟缁勪腑
--
Gitblit v1.8.0