qin преди 2 години
родител
ревизия
a2fce83e42

+ 1 - 1
src/main/java/com/poteviohealth/ym/ipos/controller/feign/IposFeignController.java

@@ -225,7 +225,7 @@ public class IposFeignController extends BaseFeignController {
             ptyys.setMerchantId(splitInfo.getOperatorMerchantId());
             ptyys.setDivAmt(ptyysAmount.toString());
             details.add(ptyys);
-            VaultsResponse vaultsResponse = splitService.delayConfirm(records.getSplitId());
+            VaultsResponse vaultsResponse = splitService.delayConfirm(records,details);
             if(!vaultsResponse.validate()){
                 records.setComment(vaultsResponse.getMessage());
             }

+ 7 - 2
src/main/java/com/poteviohealth/ym/ipos/service/ISplitService.java

@@ -5,8 +5,12 @@ import com.poteviohealth.ym.ipos.model.back.BaseBack;
 import com.poteviohealth.ym.ipos.model.payment.PayRefundQuery;
 import com.poteviohealth.ym.ipos.model.split.PayConfirmRefund;
 import com.poteviohealth.ym.ipos.model.split.SettlementQuery;
+import com.poteviohealth.ym.ipos.model.split.SplitRecords;
+import com.poteviohealth.ym.ipos.model.split.SplitRecordsDetail;
 import com.poteviohealth.ym.ipos.model.split.back.SettlementQueryBack;
 
+import java.util.List;
+
 /**
  * 分账接口
  * @author Qin
@@ -15,10 +19,11 @@ public interface ISplitService {
 
     /**
      * 延时交易确认
-     * @param splitId
+     * @param records
+     * @param details
      * @return
      */
-    VaultsResponse delayConfirm(Long splitId);
+    VaultsResponse delayConfirm(SplitRecords records, List<SplitRecordsDetail> details);
 
     /**
      * 延时交易确认查询

+ 5 - 17
src/main/java/com/poteviohealth/ym/ipos/service/impl/SplitServiceImpl.java

@@ -1,6 +1,5 @@
 package com.poteviohealth.ym.ipos.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.google.common.collect.Lists;
 import com.poteviohealth.cgp.common.model.VaultsResponse;
 import com.poteviohealth.ym.ipos.model.back.BaseBack;
@@ -10,14 +9,11 @@ import com.poteviohealth.ym.ipos.model.split.back.PayConfirmBack;
 import com.poteviohealth.ym.ipos.model.split.back.PayConfirmQueryBack;
 import com.poteviohealth.ym.ipos.model.split.back.SettlementQueryBack;
 import com.poteviohealth.ym.ipos.model.split.detail.*;
-import com.poteviohealth.ym.ipos.service.ISplitRecordsDetailService;
-import com.poteviohealth.ym.ipos.service.ISplitRecordsService;
 import com.poteviohealth.ym.ipos.service.ISplitService;
 import com.poteviohealth.ym.ipos.utils.YmUtil;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
 import java.util.List;
 
 /**
@@ -29,28 +25,20 @@ public class SplitServiceImpl implements ISplitService {
 
     @Value("${pay.field.code}")
     private String code;
-    @Resource
-    private ISplitRecordsService splitRecordsService;
-    @Resource
-    private ISplitRecordsDetailService splitRecordsDetailService;
 
     @Override
-    public VaultsResponse delayConfirm(Long splitId) {
-        QueryWrapper queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("split_id",splitId);
-        SplitRecords splitRecords = splitRecordsService.getOne(queryWrapper);
+    public VaultsResponse delayConfirm(SplitRecords records, List<SplitRecordsDetail> details) {
         PayConfirm payConfirm = new PayConfirm();
         payConfirm.setPos_id(code);
-        payConfirm.setPos_seq(splitId.toString());
-        payConfirm.setStore_id(splitRecords.getOperatorId().toString());
+        payConfirm.setPos_seq(records.getSplitId().toString());
+        payConfirm.setStore_id(records.getOperatorId().toString());
         PayConfirmDetail detail = new PayConfirmDetail();
-        detail.setOrg_pos_seq(splitRecords.getPayId().toString());
+        detail.setOrg_pos_seq(records.getPayId().toString());
         ExtendParamsConfirm extendParamsConfirm = new ExtendParamsConfirm();
         SplitInfoConfirm splitInfoConfirm = new SplitInfoConfirm();
         List<SplitListConfirm> list = Lists.newArrayList();
         String amt = "";
-        List<SplitRecordsDetail> detailList = splitRecordsDetailService.list(queryWrapper);
-        for (SplitRecordsDetail recordsDetail : detailList) {
+        for (SplitRecordsDetail recordsDetail : details) {
             if(recordsDetail.getSourceId().equals(0)){
                 amt = recordsDetail.getDivAmt();
                 continue;