Parcourir la source

支持扫码枪退费功能

wuxw il y a 2 ans
Parent
commit
e774cbe55d

+ 2 - 0
service-acct/src/main/java/com/java110/acct/cmd/payment/CheckPayFinishCmd.java

@@ -68,6 +68,8 @@ public class CheckPayFinishCmd extends Cmd {
         String appId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.APP_ID);
         String appId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.APP_ID);
         String userId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.USER_ID);
         String userId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.USER_ID);
         //JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, "fee.payFee", JSONObject.class, userId);
         //JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, "fee.payFee", JSONObject.class, userId);
+        reqJson.put("payOrderId",orderId);
+
         JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, reqJson.getString("subServiceCode"), JSONObject.class, userId);
         JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, reqJson.getString("subServiceCode"), JSONObject.class, userId);
         cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(paramOut));
         cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(paramOut));
     }
     }

+ 2 - 0
service-acct/src/main/java/com/java110/acct/cmd/payment/QrCodePaymentCmd.java

@@ -124,6 +124,8 @@ public class QrCodePaymentCmd extends Cmd {
         String appId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.APP_ID);
         String appId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.APP_ID);
         String userId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.USER_ID);
         String userId = cmdDataFlowContext.getReqHeaders().get(CommonConstant.USER_ID);
         //JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, "fee.payFee", JSONObject.class, userId);
         //JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, "fee.payFee", JSONObject.class, userId);
+        reqJson.put("payOrderId",orderId);
+
         JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, reqJson.getString("subServiceCode"), JSONObject.class, userId);
         JSONObject paramOut = CallApiServiceFactory.postForApi(appId, reqJson, reqJson.getString("subServiceCode"), JSONObject.class, userId);
         cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(paramOut));
         cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(paramOut));
     }
     }

+ 11 - 2
service-fee/src/main/java/com/java110/fee/cmd/fee/PayBatchFeeCmd.java

@@ -171,6 +171,8 @@ public class PayBatchFeeCmd extends Cmd {
         //todo 生成收据编号
         //todo 生成收据编号
         String receiptCode = feeReceiptInnerServiceSMOImpl.generatorReceiptCode(reqJson.getString("communityId"));
         String receiptCode = feeReceiptInnerServiceSMOImpl.generatorReceiptCode(reqJson.getString("communityId"));
 
 
+        String payOrderId = reqJson.getString("payOrderId");
+
 
 
         JSONArray fees = reqJson.getJSONArray("fees");
         JSONArray fees = reqJson.getJSONArray("fees");
         JSONObject paramInObj = null;
         JSONObject paramInObj = null;
@@ -178,7 +180,7 @@ public class PayBatchFeeCmd extends Cmd {
         for (int feeIndex = 0; feeIndex < fees.size(); feeIndex++) {
         for (int feeIndex = 0; feeIndex < fees.size(); feeIndex++) {
             try {
             try {
                 paramInObj = fees.getJSONObject(feeIndex);
                 paramInObj = fees.getJSONObject(feeIndex);
-                doDeal(paramInObj, reqJson.getString("communityId"),receiptCode, cmdDataFlowContext, userDtos.get(0));
+                doDeal(paramInObj, reqJson.getString("communityId"),receiptCode, cmdDataFlowContext, userDtos.get(0),payOrderId);
             } catch (Exception e) {
             } catch (Exception e) {
                 logger.error("处理异常", e);
                 logger.error("处理异常", e);
                 throw new CmdException(e.getMessage());
                 throw new CmdException(e.getMessage());
@@ -192,7 +194,10 @@ public class PayBatchFeeCmd extends Cmd {
         cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(data));
         cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(data));
     }
     }
 
 
-    private void doDeal(JSONObject paramObj, String communityId,String receiptCode, ICmdDataFlowContext cmdDataFlowContext, UserDto userDto) throws Exception {
+    private void doDeal(JSONObject paramObj, String communityId,String receiptCode,
+                        ICmdDataFlowContext cmdDataFlowContext,
+                        UserDto userDto,
+                        String payOrderId) throws Exception {
         paramObj.put("communityId", communityId);
         paramObj.put("communityId", communityId);
         //获取订单ID
         //获取订单ID
         String oId = Java110TransactionalFactory.getOId();
         String oId = Java110TransactionalFactory.getOId();
@@ -209,6 +214,10 @@ public class PayBatchFeeCmd extends Cmd {
                 oId = payFeeDetailPo.getDetailId();
                 oId = payFeeDetailPo.getDetailId();
             }
             }
             payFeeDetailPo.setPayOrderId(oId);
             payFeeDetailPo.setPayOrderId(oId);
+            // todo 如果 扫码枪支付 输入支付订单ID
+            if(!StringUtil.isEmpty(payOrderId)){
+                payFeeDetailPo.setPayOrderId(payOrderId);
+            }
             payFeeDetailPo.setCashierId(userDto.getUserId());
             payFeeDetailPo.setCashierId(userDto.getUserId());
             payFeeDetailPo.setCashierName(userDto.getName());
             payFeeDetailPo.setCashierName(userDto.getName());
             //todo 缓存收据编号
             //todo 缓存收据编号

+ 5 - 0
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeCmd.java

@@ -193,6 +193,7 @@ public class PayFeeCmd extends Cmd {
     @Java110Transactional
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject paramObj) throws CmdException {
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject paramObj) throws CmdException {
         logger.debug("paramObj : {}", paramObj);
         logger.debug("paramObj : {}", paramObj);
+        String payOrderId = paramObj.getString("payOrderId");
 
 
         String userId = cmdDataFlowContext.getReqHeaders().get("user-id");
         String userId = cmdDataFlowContext.getReqHeaders().get("user-id");
         UserDto userDto = new UserDto();
         UserDto userDto = new UserDto();
@@ -236,6 +237,10 @@ public class PayFeeCmd extends Cmd {
             }
             }
 
 
             payFeeDetailPo.setPayOrderId(oId);
             payFeeDetailPo.setPayOrderId(oId);
+            // todo 如果 扫码枪支付 输入支付订单ID
+            if(!StringUtil.isEmpty(payOrderId)){
+                payFeeDetailPo.setPayOrderId(payOrderId);
+            }
             payFeeDetailPo.setCashierId(userDtos.get(0).getUserId());
             payFeeDetailPo.setCashierId(userDtos.get(0).getUserId());
             payFeeDetailPo.setCashierName(userDtos.get(0).getName());
             payFeeDetailPo.setCashierName(userDtos.get(0).getName());
             int flag = payFeeDetailNewV1InnerServiceSMOImpl.savePayFeeDetailNew(payFeeDetailPo);
             int flag = payFeeDetailNewV1InnerServiceSMOImpl.savePayFeeDetailNew(payFeeDetailPo);

+ 16 - 4
service-fee/src/main/java/com/java110/fee/cmd/fee/PayOweFeeCmd.java

@@ -151,6 +151,10 @@ public class PayOweFeeCmd extends Cmd {
         userDto.setUserId(userId);
         userDto.setUserId(userId);
         List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
         List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
         Assert.listOnlyOne(userDtos, "用户未登录");
         Assert.listOnlyOne(userDtos, "用户未登录");
+
+        String payOrderId = paramObj.getString("payOrderId");
+
+
         //添加单元信息
         //添加单元信息
         List<FeeReceiptPo> feeReceiptPos = new ArrayList<>();
         List<FeeReceiptPo> feeReceiptPos = new ArrayList<>();
         List<FeeReceiptDetailPo> feeReceiptDetailPos = new ArrayList<>();
         List<FeeReceiptDetailPo> feeReceiptDetailPos = new ArrayList<>();
@@ -177,7 +181,7 @@ public class PayOweFeeCmd extends Cmd {
             }
             }
 
 
             //todo 去缴费
             //todo 去缴费
-            getFeeReceiptDetailPo(dataFlowContext, feeObj, feeReceiptDetailPos, feeReceiptPos, userDtos.get(0), receiptCode);
+            getFeeReceiptDetailPo(dataFlowContext, feeObj, feeReceiptDetailPos, feeReceiptPos, userDtos.get(0), receiptCode, payOrderId);
         }
         }
 
 
 
 
@@ -199,7 +203,8 @@ public class PayOweFeeCmd extends Cmd {
                                        List<FeeReceiptDetailPo> feeReceiptDetailPos,
                                        List<FeeReceiptDetailPo> feeReceiptDetailPos,
                                        List<FeeReceiptPo> feeReceiptPos,
                                        List<FeeReceiptPo> feeReceiptPos,
                                        UserDto userDto,
                                        UserDto userDto,
-                                       String receiptCode) {
+                                       String receiptCode,
+                                       String payOrderId) {
         int flag = 0;
         int flag = 0;
         if (!paramObj.containsKey("primeRate")) {
         if (!paramObj.containsKey("primeRate")) {
             paramObj.put("primeRate", "6");
             paramObj.put("primeRate", "6");
@@ -215,7 +220,7 @@ public class PayOweFeeCmd extends Cmd {
         }
         }
         paramObj.put("state", "1400");
         paramObj.put("state", "1400");
         // todo 添加交费明细
         // todo 添加交费明细
-        addOweFeeDetail(paramObj, dataFlowContext, feeReceiptDetailPos, feeReceiptPos, userDto, receiptCode);
+        addOweFeeDetail(paramObj, dataFlowContext, feeReceiptDetailPos, feeReceiptPos, userDto, receiptCode,payOrderId);
         modifyOweFee(paramObj, dataFlowContext);
         modifyOweFee(paramObj, dataFlowContext);
 
 
         //修改车辆
         //修改车辆
@@ -339,7 +344,8 @@ public class PayOweFeeCmd extends Cmd {
                                 List<FeeReceiptDetailPo> feeReceiptDetailPos,
                                 List<FeeReceiptDetailPo> feeReceiptDetailPos,
                                 List<FeeReceiptPo> feeReceiptPos,
                                 List<FeeReceiptPo> feeReceiptPos,
                                 UserDto userDto,
                                 UserDto userDto,
-                                String receiptCode) {
+                                String receiptCode,
+                                String payOrderId) {
 
 
         JSONObject businessFeeDetail = new JSONObject();
         JSONObject businessFeeDetail = new JSONObject();
         businessFeeDetail.putAll(paramInJson);
         businessFeeDetail.putAll(paramInJson);
@@ -382,6 +388,12 @@ public class PayOweFeeCmd extends Cmd {
             payFeeDetailPo.setPayOrderId(oId);
             payFeeDetailPo.setPayOrderId(oId);
 
 
         }
         }
+
+        // todo 如果 扫码枪支付 输入支付订单ID
+        if(!StringUtil.isEmpty(payOrderId)){
+            payFeeDetailPo.setPayOrderId(payOrderId);
+        }
+
         payFeeDetailPo.setCashierId(userDto.getUserId());
         payFeeDetailPo.setCashierId(userDto.getUserId());
         payFeeDetailPo.setCashierName(userDto.getName());
         payFeeDetailPo.setCashierName(userDto.getName());
         //todo 缓存收据编号
         //todo 缓存收据编号