Преглед изворни кода

1、修改账单删除之后的异常提示

Bingo пре 3 година
родитељ
комит
e0fef18078

+ 0 - 16
pom.xml

@@ -47,22 +47,6 @@
             <version>3.2.0</version>
         </dependency>
 
-<!--        &lt;!&ndash;    集成easypoi组件 .导出excel http://easypoi.mydoc.io/ &ndash;&gt;-->
-<!--        <dependency>-->
-<!--            <groupId>cn.afterturn</groupId>-->
-<!--            <artifactId>easypoi-base</artifactId>-->
-<!--            <version>3.2.0</version>-->
-<!--        </dependency>-->
-<!--        <dependency>-->
-<!--            <groupId>cn.afterturn</groupId>-->
-<!--            <artifactId>easypoi-web</artifactId>-->
-<!--            <version>3.2.0</version>-->
-<!--        </dependency>-->
-<!--        <dependency>-->
-<!--            <groupId>cn.afterturn</groupId>-->
-<!--            <artifactId>easypoi-annotation</artifactId>-->
-<!--            <version>3.2.0</version>-->
-<!--        </dependency>-->
 
         <!-- jwt -->
         <dependency>

+ 2 - 1
src/main/java/com/chuanghai/smartschool/tuitionpayment/common/exception/BizCodeEnume.java

@@ -48,7 +48,8 @@ public enum BizCodeEnume {
     ERROR_DE(10027,"AES加密失败"),
     DORM_EXIST(10028,"宿舍已缴费"),
     ORDER_IS_PAY(10029,"该订单的部分项目已支付,请前往首页重新支付"),
-    ORDER_IS_PAYING(10029,"该订单正在支付,请勿重复支付");
+    ORDER_IS_PAYING(10029,"该订单正在支付,请勿重复支付"),
+    ORDER_IS_ERROR(10030,"账单已过期无法支付,是否删除");
 
     private int code;
     private String msg;

+ 18 - 0
src/main/java/com/chuanghai/smartschool/tuitionpayment/controller/PayOrderController.java

@@ -71,6 +71,24 @@ public class PayOrderController {
         return CommonResult.ok().setResult(resultVOList);
     }
 
+
+    /**
+     * 将payOrder订单删除备份到peyOrderDelete表中
+     * @param payInfoId 账单ID
+     * @param payDetail 支付详情
+     */
+    @PostMapping("removeOrder")
+    public CommonResult removeOrderToOrderDelete(@RequestHeader("card_number") String cardNumber,
+                                                 String payInfoId,
+                                                 String payDetail){
+        Boolean falg = payOrderService.removeOrderToOrderDelete(payInfoId, payDetail);
+        if (falg) {
+            return CommonResult.ok();
+        }else {
+            return CommonResult.fail();
+        }
+    }
+
     /**
      * 用于接收创建支付订单的参数便于后续支付明细分流
      *

+ 2 - 0
src/main/java/com/chuanghai/smartschool/tuitionpayment/service/PayOrderService.java

@@ -74,5 +74,7 @@ public interface PayOrderService extends IService<PayOrderEntity> {
     void queryByOrderRestore(Long orderId);
 
     List<YearVo> queryWaterOrderYear(String cardNumber, String payStatu);
+
+    Boolean removeOrderToOrderDelete(String payinfoId, String payDetail);
 }
 

+ 35 - 6
src/main/java/com/chuanghai/smartschool/tuitionpayment/service/impl/PayOrderServiceImpl.java

@@ -229,6 +229,15 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
         PayOrderReceiveVO payOrderReceiveVO1 = new PayOrderReceiveVO();
         //备份支付参数
         BeanUtils.copyProperties(payOrderReceiveVO, payOrderReceiveVO1);
+        if (!payOrderReceiveVO.getItemName().equals("水费缴纳")) {
+            //如果未查找到缴费账单则提示无法继续支付
+            PayableInfoEntity infoEntity = payableInfoService.getById(payOrderReceiveVO.getId());
+            if (StringUtils.isEmpty(infoEntity)) {
+                throw new RRException(BizCodeEnume.ORDER_IS_ERROR);
+            }
+        }
+
+
         String payDetail = payOrderReceiveVO.getPayDetail();
         String itemName = payOrderReceiveVO.getItemName();
         String payOrderLoan = payOrderReceiveVO.getPayOrderLoan();
@@ -316,7 +325,6 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
                 payAmountCCB = payAmountCCB.add(new BigDecimal(payAmountStr).setScale(2, BigDecimal.ROUND_HALF_UP));
             }
         }
-
         if (!payOrderReceiveVO.getPayDetail().isEmpty()) {
             if (!payOrderLoan.isEmpty()) {
                 payAmountCCB = payAmountCCB.subtract(new BigDecimal(payOrderLoan)).setScale(2, BigDecimal.ROUND_HALF_UP);
@@ -378,6 +386,24 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
     }
 
 
+    @Override
+    public Boolean removeOrderToOrderDelete(String payinfoId, String payDetail) {
+        QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
+        wrapper.eq("payinfo_id", payinfoId)
+                .eq("status", "1")
+                .eq("pay_detail", payDetail);
+        PayOrderEntity payOrderEntity = payOrderService.getOne(wrapper);
+        PayOrderDeleteEntity payOrderDeleteEntity = new PayOrderDeleteEntity();
+        BeanUtils.copyProperties(payOrderEntity, payOrderDeleteEntity);
+        boolean b = payOrderService.removeById(payOrderEntity.getId());
+
+        log.info("账单已删除,将订单备份到订单删除表【{}】", payOrderEntity);
+
+        payOrderDeleteEntity.setId(null);
+        payOrderDeleteService.save(payOrderDeleteEntity);
+        return b;
+    }
+
     /**
      * 创建缴费订单
      *
@@ -386,6 +412,8 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
      */
     @Override
     public List<CreateOrderResultVO> createOrder(String cardNumber, PayOrderReceiveVO payOrderReceiveVO) {
+
+
         List<OrderReceiveTO> orderReceiveTOS = receiveOrder(cardNumber, payOrderReceiveVO);
         List<CreateOrderResultVO> createOrderResultVOList = new ArrayList<>();
         //记录遍历的次数
@@ -448,12 +476,12 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
                     //将删除的水费缴费信息记录到删除记录表中
                     PayableInfoWaterEntity payableInfoWaterEntity = payableInfoWaterService.getOne(wrapper);
                     payableInfoWaterEntity.setPayItemType("2");
-                    log.info("水费缴纳订单重复提交支付:=====>>【{}】",payableInfoWaterEntity);
+                    log.info("水费缴纳订单重复提交支付:=====>>【{}】", payableInfoWaterEntity);
                     payableInfoWaterService.updateById(payableInfoWaterEntity);
 //                    PayableInfoWaterDeleteEntity payableInfoWaterDeleteEntity = new PayableInfoWaterDeleteEntity();
 //                    BeanUtils.copyProperties(payableInfoWaterEntity, payableInfoWaterDeleteEntity);
 //                    payableInfoWaterDeleteService.save(payableInfoWaterDeleteEntity);
-                   // payableInfoWaterService.remove(wrapper);
+                    // payableInfoWaterService.remove(wrapper);
                     throw new RRException(BizCodeEnume.DORM_EXIST, "宿舍【" + dorm + " " + payYear + "】已缴费,请勿重复缴费");
 
                 }
@@ -1276,9 +1304,9 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
     @Override
     public List<YearVo> queryWaterOrderYear(String cardNumber, String payStatu) {
         QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
-        wrapper.eq("pay_item","水费缴纳")
-        .eq("payer_card_number",cardNumber)
-        .eq("status",payStatu);
+        wrapper.eq("pay_item", "水费缴纳")
+                .eq("payer_card_number", cardNumber)
+                .eq("status", payStatu);
         List<PayOrderEntity> list = this.list(wrapper);
         List<YearVo> yearList = new ArrayList<>();
         for (int m = 0; m < list.size(); m++) {
@@ -1294,4 +1322,5 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
         return uniqueStr;
     }
 
+
 }

+ 4 - 4
src/main/resources/application.yml

@@ -5,11 +5,11 @@ server:
 spring:
   datasource:
     username: root
-    password: Chuanghai_2022.
-    url: jdbc:mysql://172.16.20.64:3306/tuition_payment?characterEncoding=utf-8&useSSL=FALSE&useAffectedRows=TRUE&allowMultiQueries=true&serverTimezone=GMT%2B8
+#    password: Chuanghai_2022.
+#    url: jdbc:mysql://172.16.20.64:3306/tuition_payment?characterEncoding=utf-8&useSSL=FALSE&useAffectedRows=TRUE&allowMultiQueries=true&serverTimezone=GMT%2B8
     driver-class-name: com.mysql.cj.jdbc.Driver
-#    password: root
-#    url: jdbc:mysql://127.0.0.1:3306/tuition_payment?characterEncoding=utf-8&useSSL=FALSE&useAffectedRows=TRUE&allowMultiQueries=true&serverTimezone=GMT%2B8
+    password: root
+    url: jdbc:mysql://127.0.0.1:3306/tuition_payment?characterEncoding=utf-8&useSSL=FALSE&useAffectedRows=TRUE&allowMultiQueries=true&serverTimezone=GMT%2B8
 
   #配置文件传输的大小
   servlet: