浏览代码

预交金优化

lihong 2 月之前
父节点
当前提交
8e9d068c32
共有 1 个文件被更改,包括 13 次插入4 次删除
  1. 13 4
      src/main/java/thyyxxk/webserver/service/zygl/ZyDepositFileService.java

+ 13 - 4
src/main/java/thyyxxk/webserver/service/zygl/ZyDepositFileService.java

@@ -107,8 +107,20 @@ public class ZyDepositFileService {
         }
         else{
             AssertUtil.isnotBlank(zyDepositFile.getReceiptNo(),"退费,收据号不能为空");
+            AssertUtil.isnotBlank(zyDepositFile.getDepoType(),"退费,支付方式不能为空");
             ZyDepositFile tempZyDepositFile =  queryZyDepositFileByReceiptNo(zyDepositFile.getReceiptNo());
             AssertUtil.isnotBlank(tempZyDepositFile, "当前退费的收据号不存在");
+            if(YesOrNo.YES.getCode().equals(zyDepositFile.getRefundType())){
+                if(!Constants.JHZF.equals(zyDepositFile.getDepoType()) && !Constants.YLK.equals(zyDepositFile.getDepoType())){
+                    throw new BizException(ExceptionEnum.LOGICAL_ERROR, "原路退费只能选择聚合支付或银联卡");
+                }
+                AssertUtil.isnotBlank(tempZyDepositFile.getAgtordnum(),"原缴费记录流水号为空,不能原路退费,请选择普通退费");
+                AssertUtil.isnotBlank(tempZyDepositFile.getPsordnum(),"原缴费记录订单号为空,不能原路退费,请选择普通退费");
+                zyDepositFile.setPsordnum(tempZyDepositFile.getPsordnum());
+                zyDepositFile.setAgtordnum(tempZyDepositFile.getAgtordnum());
+                zyDepositFile.setTraceNo(tempZyDepositFile.getTraceNo());
+                zyDepositFile.setParChannel(tempZyDepositFile.getParChannel());
+            }
             BigDecimal sum = querySumDepoAmountByReceiptNo(zyDepositFile.getReceiptNo());
             if(BigDecimal.ZERO.compareTo(sum) == 0){
                 modifyReportFlag(zyDepositFile.getReceiptNo());
@@ -120,10 +132,7 @@ public class ZyDepositFileService {
             zyDepositFile.setPrinted(tempZyDepositFile.getPrinted());
             zyDepositFile.setReportFlag(YesOrNo.YES.getCode().toString());
             zyDepositFile.setReportFlag(YesOrNo.YES.getCode().toString());
-            zyDepositFile.setDepoType(tempZyDepositFile.getDepoType());
-            if (!(Arrays.asList(Constants.BRZZJF_CODE, Constants.HLWYY_CODE).contains(zyDepositFile.getOpIdCode()) || (YesOrNo.YES.getCode().equals(zyDepositFile.getRefundType()) && Arrays.asList(Constants.BYJZ, Constants.YLK, Constants.JHZF).contains(zyDepositFile.getDepoType())))) {
-                zyDepositFile.setDepoType(Constants.ZY_CASH);
-            }
+            zyDepositFile.setDepoType(zyDepositFile.getDepoType());
             zyDepositFileMapper.updateReportFlag(zyDepositFile.getReceiptNo());
         }
         zyDepositFile.setOpIdCode(TokenUtil.getInstance().getTokenUserId());