diff --git a/jsowell-admin/src/test/java/PaymentTestController.java b/jsowell-admin/src/test/java/PaymentTestController.java index f29d8a03f..62420797f 100644 --- a/jsowell-admin/src/test/java/PaymentTestController.java +++ b/jsowell-admin/src/test/java/PaymentTestController.java @@ -211,12 +211,13 @@ public class PaymentTestController { /** * 提现方法 + * */ @Test public void withdraw() { String merchantId = "349"; String orderNo = "drawcash_" + merchantId + "_" + System.currentTimeMillis(); - BigDecimal cashAmt = new BigDecimal("560.17"); + BigDecimal cashAmt = new BigDecimal("256.47"); String adapayMemberId = "ACM88073310"; // String adapayAppId = "app_d0c80cb1-ffc8-48cb-a030-fe9bec823aaa"; // 固定参数, 汇付配置的万车充小程序appId String settleAccountId = "0744607938214272"; diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/PileApplyMergeChargeHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/PileApplyMergeChargeHandler.java index fe172ea31..fd1e56d9c 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/PileApplyMergeChargeHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/PileApplyMergeChargeHandler.java @@ -1,6 +1,7 @@ package com.jsowell.netty.handler.yunkuaichong; import com.google.common.primitives.Bytes; +import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.ykc.YKCDataProtocol; import com.jsowell.common.core.domain.ykc.YKCFrameTypeCode; import com.jsowell.common.util.BytesUtil; @@ -13,6 +14,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.LinkedHashMap; import java.util.Map; /** @@ -116,16 +118,22 @@ public class PileApplyMergeChargeHandler extends AbstractYkcHandler{ .mergeChargeNumber(mergeChargeNumber) .build(); - try { - Map map = orderBasicInfoService.verifyMergeChargeOrder(dto); + Map map = new LinkedHashMap<>(); + String transactionCode = Constants.ILLEGAL_TRANSACTION_CODE; + byte[] authenticationFlagByteArr = Constants.zeroByteArray; // 鉴权成功标识 + byte[] accountBalanceByteArr = Constants.zeroByteArray; // 账户余额 + try { + map = orderBasicInfoService.verifyMergeChargeOrder(dto); + log.info("桩号:{}, 并充订单鉴权成功, 结果map:{}", pileSn, map); } catch (Exception e) { log.error("桩号:{}, 并充订单鉴权失败, ", pileSn, e); } - - String transactionCode = ""; - String accountAmount = ""; - String verifyFlag = ""; + if (map != null) { + transactionCode = (String) map.get("transactionCode"); + accountBalanceByteArr = YKCUtils.getPriceByte(String.valueOf(map.get("accountBalance")), 2); + authenticationFlagByteArr = Constants.oneByteArray; + } // 应答 // 交易流水号 @@ -136,9 +144,9 @@ public class PileApplyMergeChargeHandler extends AbstractYkcHandler{ // 鉴权成功标志 // 失败原因 // 并充序号 + byte[] defeatReasonByteArr = Constants.zeroByteArray; // 失败原因 byte[] msgBodyByteArr = Bytes.concat(BytesUtil.str2Bcd(transactionCode), pileSnByteArr, connectorNumByteArr, cardNumByteArr, - BytesUtil.str2Bcd(accountAmount), BytesUtil.str2Bcd(verifyFlag), mergeChargeNumberByteArr); - + accountBalanceByteArr, authenticationFlagByteArr, defeatReasonByteArr, mergeChargeNumberByteArr); return getResult(ykcDataProtocol, msgBodyByteArr); }