Bläddra i källkod

确认付款超出限额显示

LiFei 3 år sedan
förälder
incheckning
313175c106

+ 27 - 5
happy-cloud-wisdom/happy-cloud-wisdom-biz/src/main/java/org/jeecg/modules/hlwpayment/service/impl/HlwPaymentDetailServiceImpl.java

@@ -471,7 +471,11 @@ public class HlwPaymentDetailServiceImpl extends ServiceImpl<HlwPaymentDetailMap
         // 付款单
         HlwPayment hlwPayment = hlwPaymentService.getById(paymentId);
         if (hlwPayment.getStatus() != null) {
-            return Result.error("该付款单状态已变更,请刷新后重试!");
+            Result result = new Result();
+            result.setSuccess(false);
+            result.setCode(610);
+            result.setMessage("该付款单状态已变更,请刷新后重试!");
+            return result;
         }
         Double totalPayment = jsonObject.getDouble("totalPayment");
         //判断付款账户金额是否够支付
@@ -492,7 +496,11 @@ public class HlwPaymentDetailServiceImpl extends ServiceImpl<HlwPaymentDetailMap
         HlwCompanyAccount hlwCompanyAccount = hlwCompanyAccountService.getOne(queryWrapper1);
         //-1小于;0等于;1:大于
         if (hlwCompanyAccount.getBalance().compareTo(totalPayment) == -1) {
-            return Result.error("当前余额不足,请充值后再试,如果已经充值可刷新余额显示!");
+            Result result = new Result();
+            result.setSuccess(false);
+            result.setCode(610);
+            result.setMessage("当前余额不足,请充值后再试,如果已经充值可刷新余额显示!");
+            return result;
         }
         // 服务商
         HlwSubcontractor hlwSubcontractor = hlwSubcontractorService.getById(hlwPayment.getSubcontractorId());
@@ -504,6 +512,8 @@ public class HlwPaymentDetailServiceImpl extends ServiceImpl<HlwPaymentDetailMap
         QueryWrapper<HlwPaymentDetail> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("payment_id", paymentId);
         List<HlwPaymentDetail> list = this.list(queryWrapper);
+        // 错误信息集合
+        List errorList = new ArrayList<>();
         /**
          * 2、拦截日限额
          */
@@ -514,7 +524,12 @@ public class HlwPaymentDetailServiceImpl extends ServiceImpl<HlwPaymentDetailMap
             // 比较double大小
             BigDecimal data = BigDecimal.valueOf(currentUserDailyAmount);
             if (bigDailyLimit.compareTo(data) == -1) {
-                return Result.error("超出日限额");
+                Map<String, Object> map = new HashMap<>();
+                map.put("userName", hlwPaymentDetail.getUserName());
+                map.put("idcardNumber", hlwPaymentDetail.getIdcardNumber());
+                map.put("reason", "超出日限额上限");
+                errorList.add(map);
+                continue;
             }
             /**
              * 3、拦截月限额
@@ -525,10 +540,17 @@ public class HlwPaymentDetailServiceImpl extends ServiceImpl<HlwPaymentDetailMap
             // 比较double大小
             BigDecimal data1 = BigDecimal.valueOf(currentUserMonthlyAmount);
             if (bigMonthlyLimit.compareTo(data1) == -1) {
-                return Result.error("超出月限额");
+                Map<String, Object> map = new HashMap<>();
+                map.put("userName", hlwPaymentDetail.getUserName());
+                map.put("idcardNumber", hlwPaymentDetail.getIdcardNumber());
+                map.put("reason", "超出月限额上限");
+                errorList.add(map);
             }
         }
-
+        if (errorList != null && errorList.size() > 0) {
+            JSONArray jsonArray = new JSONArray(errorList);
+            return Result.error(jsonArray.toString());
+        }
         hlwPayment.setStatus(1);
         hlwPaymentService.updateById(hlwPayment);
         // 付款明细