From aab84ddd913e36628edab6407e9e5f54a6dd43ea Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 14 十二月 2022 20:33:35 +0800
Subject: [PATCH] 优化线上缴费退费功能

---
 service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java |   39 ++++++++++++++++++++++++++++++++++++++-
 1 files changed, 38 insertions(+), 1 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java
index 3faa67c..602a6df 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/returnPayFee/UpdateReturnPayFeeCmd.java
@@ -25,11 +25,13 @@
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.dto.RoomDto;
 import com.java110.dto.account.AccountDto;
+import com.java110.dto.communitySpacePerson.CommunitySpacePersonDto;
 import com.java110.dto.fee.FeeDetailDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.feeDiscount.FeeDiscountDto;
 import com.java110.dto.feeDiscount.FeeDiscountRuleDto;
 import com.java110.dto.feeDiscount.FeeDiscountSpecDto;
+import com.java110.dto.onlinePay.OnlinePayDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.owner.OwnerRoomRelDto;
 import com.java110.dto.payFeeConfigDiscount.PayFeeConfigDiscountDto;
@@ -37,6 +39,7 @@
 import com.java110.dto.returnPayFee.ReturnPayFeeDto;
 import com.java110.intf.acct.IAccountDetailInnerServiceSMO;
 import com.java110.intf.acct.IAccountInnerServiceSMO;
+import com.java110.intf.acct.IOnlinePayV1InnerServiceSMO;
 import com.java110.intf.community.IRoomInnerServiceSMO;
 import com.java110.intf.fee.*;
 import com.java110.intf.user.IOwnerCarInnerServiceSMO;
@@ -45,6 +48,7 @@
 import com.java110.po.accountDetail.AccountDetailPo;
 import com.java110.po.fee.PayFeeDetailPo;
 import com.java110.po.fee.PayFeePo;
+import com.java110.po.onlinePay.OnlinePayPo;
 import com.java110.po.payFeeDetailDiscount.PayFeeDetailDiscountPo;
 import com.java110.po.returnPayFee.ReturnPayFeePo;
 import com.java110.utils.exception.CmdException;
@@ -63,7 +67,7 @@
 import java.util.List;
 
 /**
- * 绫昏〃杩帮細鏇存柊
+ * 绫昏〃杩帮細閫�璐瑰鏍告帴鍙�
  * 鏈嶅姟缂栫爜锛歳eturnPayFee.updateReturnPayFee
  * 璇锋眰璺姴锛�/app/returnPayFee.UpdateReturnPayFee
  * add by 鍚村鏂� at 2022-02-21 12:20:03 mail: 928255095@qq.com
@@ -125,6 +129,9 @@
     @Autowired
     private IAccountDetailInnerServiceSMO accountDetailInnerServiceSMOImpl;
 
+    @Autowired
+    private IOnlinePayV1InnerServiceSMO onlinePayV1InnerServiceSMOImpl;
+
     private static final String SPEC_RATE = "89002020980015"; //璧犻�佹湀浠�
 
     private static final String SPEC_MONTH = "89002020980014"; //鏈堜唤
@@ -168,6 +175,7 @@
             reqJson.put("state", "1300");
             reqJson.put("startTime", DateUtil.getFormatTimeString(feeDetailDto.getStartTime(), DateUtil.DATE_FORMATE_STRING_A));
             reqJson.put("endTime", DateUtil.getFormatTimeString(feeDetailDto.getEndTime(), DateUtil.DATE_FORMATE_STRING_A));
+            reqJson.put("payOrderId",feeDetailDto.getPayOrderId());
             addFeeDetail(reqJson);
 
             reqJson.put("state", "1100");
@@ -335,6 +343,9 @@
                     }
                 }
             }
+            //鎻愪氦绾夸笂閫�璐�
+            returnOnlinePayMoney(feeDetailDto);
+
         }
         //涓嶉�氳繃
         if ("1200".equals(reqJson.getString("state"))) {
@@ -442,4 +453,30 @@
         }
     }
 
+    /**
+     * 鍙戣捣閫�娆�
+     *
+     * @param feeDetailDto
+     */
+    private void returnOnlinePayMoney(FeeDetailDto feeDetailDto) {
+
+        if(StringUtil.isEmpty(feeDetailDto.getPayOrderId())){
+            return;
+        }
+
+        OnlinePayDto onlinePayDto = new OnlinePayDto();
+        onlinePayDto.setOrderId(feeDetailDto.getPayOrderId());
+        List<OnlinePayDto> onlinePayDtos = onlinePayV1InnerServiceSMOImpl.queryOnlinePays(onlinePayDto);
+        if (onlinePayDtos == null || onlinePayDtos.size() < 1) {
+            return;
+        }
+
+        OnlinePayPo onlinePayPo = new OnlinePayPo();
+        onlinePayPo.setOrderId(onlinePayDtos.get(0).getOrderId());
+        onlinePayPo.setPayId(onlinePayDtos.get(0).getPayId());
+        onlinePayPo.setState(OnlinePayDto.STATE_WT);
+        onlinePayPo.setRefundFee(feeDetailDto.getReceivedAmount());
+        onlinePayV1InnerServiceSMOImpl.updateOnlinePay(onlinePayPo);
+    }
+
 }

--
Gitblit v1.8.0