Browse Source

update:分账更新payment表分账状态

ct 4 ngày trước cách đây
mục cha
commit
8974d9afb9

+ 2 - 7
fs-service/src/main/java/com/fs/his/mapper/FsStorePaymentMapper.java

@@ -74,10 +74,7 @@ public interface FsStorePaymentMapper
             " LEFT JOIN  fs_user u ON u.user_id=sp.user_id LEFT JOIN fs_store s ON s.store_id=sp.store_id " +
             " left join company_user cu on sp.company_user_id=cu.user_id " +
             " left join company c on c.company_id=sp.company_id "+
-            "LEFT JOIN (SELECT t.* FROM ( SELECT sp2.*, ROW_NUMBER() OVER (PARTITION BY sp2.business_code ORDER BY sp2.create_time DESC, sp2.payment_id DESC) as rn " +
-            "FROM fs_store_payment sp2) t WHERE t.rn = 1) " +
-            "latest_sp ON latest_sp.business_code = sp.business_code "+
-            "LEFT JOIN fs_course_play_source_config csc ON csc.appid = sp.app_id" +
+            " left join fs_course_play_source_config csc ON csc.appid = sp.app_id " +
             " where 1=1 " +
             "            <if test=\"maps.payCode != null  and maps.payCode != ''\"> and sp.pay_code = #{maps.payCode}</if>\n" +
             "            <if test=\"maps.coursePlaySourceConfigId != null\"> and csc.id = #{maps.coursePlaySourceConfigId}</if>\n" +
@@ -208,9 +205,6 @@ public interface FsStorePaymentMapper
             "LEFT JOIN company_user cu ON \n" +
             "    ( cu.user_id = fso.company_user_id) OR\n" +
             "    (cu.user_id = fio.company_user_id) " +
-            "LEFT JOIN (SELECT t.* FROM ( SELECT sp2.*, ROW_NUMBER() OVER (PARTITION BY sp2.business_code ORDER BY sp2.create_time DESC, sp2.payment_id DESC) as rn " +
-            "FROM fs_store_payment sp2) t WHERE t.rn = 1) " +
-            "latest_sp ON latest_sp.business_code = sp.business_code "+
             "LEFT JOIN fs_course_play_source_config csc ON csc.appid = sp.app_id" +
             " where 1=1 " +
             "            <if test=\"maps.payCode != null  and maps.payCode != ''\"> and sp.pay_code = #{maps.payCode}</if>\n" +
@@ -236,6 +230,7 @@ public interface FsStorePaymentMapper
             "            <if test=\"maps.refundEndTime != null \">  and DATE(sp.refund_time) &lt;= DATE(#{maps.refundEndTime})</if>\n" +
             "            <if test=\"maps.payBeginTime != null \">  and DATE(sp.pay_time) &gt;= DATE(#{maps.payBeginTime})</if>\n" +
             "            <if test=\"maps.payEndTime != null \">  and DATE(sp.pay_time) &lt;= DATE(#{maps.payEndTime})</if>\n" +
+            "            <if test=\"maps.appId != null\"> and csc.appid = #{maps.appId}</if>\n" +
             " ORDER BY payment_id desc  "+
             "</script>"})
     List<FsStorePaymentExcelVO> selectFsStorePaymentExcelVO(@Param("maps") FsStorePaymentParam fsStorePayment);

+ 23 - 1
fs-service/src/main/java/com/fs/huifuPay/sdk/opps/core/utils/HuiFuUtils.java

@@ -26,13 +26,14 @@ import com.fs.huifuPay.service.HuiFuService;
 import com.fs.system.domain.SysConfig;
 import com.fs.system.mapper.SysConfigMapper;
 import com.google.gson.Gson;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.util.*;
 
-
+@Slf4j
 public class HuiFuUtils {
     private static ICompanyDivConfigService companyDivConfigService = SpringUtils.getBean(ICompanyDivConfigService.class);
     private static ICompanyDivItemService companyDivItemService = SpringUtils.getBean(ICompanyDivItemService.class);
@@ -193,6 +194,24 @@ public class HuiFuUtils {
         if (companyDivItem != null) {
             companyDivItem.setIsPay(1);
             companyDivItemService.updateCompanyDivItem(companyDivItem);
+            try {
+                //查询是否分账payment
+                FsStorePayment fsStorePayment = fsStorePaymentMapper.selectFsStorePaymentByPaymentCode(payCode);
+                if (fsStorePayment == null) {
+                    FsStorePaymentScrm fsStorePaymentScrm = fsStorePaymentScrmMapper.selectFsStorePaymentByPaymentCode(payCode);
+                    if (fsStorePaymentScrm != null) {
+                        fsStorePaymentScrm.setShareStatus(1);
+                        fsStorePaymentScrm.setShareMoney(fsStorePaymentScrm.getPayMoney());
+                        fsStorePaymentScrmMapper.updateFsStorePayment(fsStorePaymentScrm);
+                    }
+                } else {
+                    fsStorePayment.setShareStatus(1);
+                    fsStorePayment.setShareMoney(fsStorePayment.getPayMoney());
+                    fsStorePaymentMapper.updateFsStorePayment(fsStorePayment);
+                }
+            } catch (Exception e) {
+                log.error("更新payment表分账状态失败{}", e.getMessage());
+            }
         }
     }
 
@@ -359,6 +378,9 @@ public class HuiFuUtils {
                         break;
                 }
                 confirmOrder.setOrgReqSeqId(orgReqSeqId);
+                if (payTime == null) {
+                    return;
+                }
                 confirmOrder.setOrgReqDate(DateUtils.parseDateToStr("yyyyMMdd", payTime));
                 confirmOrder.setAppId(appId);
                 HuiFuQueryOrderResult huiFuResult = huiFuService.delayTransConfirm(confirmOrder);