From b38caa7012b8da89d5ca61d389258d4fd8d9172e Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期三, 09 八月 2023 17:51:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java                    |    1 
 cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java                |    2 
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java                 |  128 ++++--------------------------------------
 cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/TCoursePackagePayment.java   |    2 
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java          |    1 
 cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java                   |    5 +
 cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/MerChandiseClient.java           |    5 +
 cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java             |   24 +++++++
 cloud-server-activity/src/main/java/com/dsh/activity/entity/PointsMerchandise.java                       |    5 +
 cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java |    5 +
 10 files changed, 58 insertions(+), 120 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/MerChandiseClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/MerChandiseClient.java
index 89f7713..630f55c 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/MerChandiseClient.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/MerChandiseClient.java
@@ -53,4 +53,9 @@
 
     @PostMapping("/base/pointMerchars/queryUserHasGoodsNums")
     int queryUserHasGoodsNums(@RequestBody AppUserGoodResp goodResp);
+
+
+    @PostMapping("/base/pointMerchars/deletePaymentRecord")
+    void deletePaymentRecord(@RequestBody String code);
+
 }
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java
index 1478c3d..e347deb 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java
@@ -69,7 +69,10 @@
      * 可使用的门店id
      */
     private Integer storeId;
-
+    /**
+     * 1=正常 2= 删除
+     */
+    private Integer state;
 
 
 }
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/TCoursePackagePayment.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/TCoursePackagePayment.java
index 6e4a13d..2d20dac 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/TCoursePackagePayment.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/TCoursePackagePayment.java
@@ -37,7 +37,7 @@
      */
     private BigDecimal cashPayment;
     /**
-     * 玩湃币价格
+     * 玩湃币价格/积分
      */
     private Integer playPaiCoin;
     /**
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
index 98b8e2f..a76a64c 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -42,6 +42,7 @@
 import org.springframework.data.domain.PageRequest;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -854,6 +855,7 @@
     }
 
     @Override
+    @Transactional
     public ResultUtil productRedemptionOperation(Integer userIdFormRedis, GoodsExchangeVo exchangeType) {
         System.out.println("exchangeType:--->");
         System.out.println(exchangeType);
@@ -888,6 +890,7 @@
             pointsMerchandise.setPointsMerchandiseId(exchangeType.getGoodId());
             pointsMerchandise.setUserId(userIdFormRedis);
             pointsMerchandise.setStatus(1);
+            pointsMerchandise.setState(1);
             if (merchandise.getUseScope() == 3){
                 if (exchangeType.getGoodsType() == 2){
                     CoursePackage coursePackage = cpageClient.queryCoursePackageById(merchandise.getCoursePackageId());
@@ -935,7 +938,6 @@
                                 packagePayment.setPayUserId(userIdFormRedis);
                                 packagePayment.setStatus(1);
                                 packagePayment.setState(1);
-                                packagePayment.setInsertTime(new Date());
                                 packagePayment.setCode(code);
                                 paymentClient.savePaymentCoursePackage(packagePayment);
                             }
@@ -946,7 +948,6 @@
                                 coupon.setCouponId(exchangeType.getGoodId());
                                 coupon.setUserId(userIdFormRedis);
                                 coupon.setStatus(1);
-                                coupon.setInsertTime(new Date());
                                 ucponClient.insertToAppuserCoupon(coupon);
                             }
                             break;
@@ -960,59 +961,6 @@
             case 2:
 //                积分+现金
                 boolean dealt = dealAppUserIntegral(userIdFormRedis,tAppUser,merchandise.getIntegral());
-                if (dealt){
-                    switch (exchangeType.getGoodsType()){
-//                        1实物 2课包 3门票 4优惠券
-                        case 2:
-                            Integer stuNums = 0;
-                            if (ToolUtil.isNotEmpty(exchangeType.getStuIds())){
-                                stuNums = exchangeType.getStuIds().size();
-                            }else {
-                                stuNums = 1;
-                            }
-                            for (int i = 0; i < stuNums; i++) {
-                                List<CoursePackagePaymentConfig> courseConfigList = cpconClient.getCourseConfigList(merchandise.getCoursePackageId());
-                                TCoursePackagePayment packagePayment = new TCoursePackagePayment();
-                                packagePayment.setAppUserId(userIdFormRedis);
-                                packagePayment.setStudentId(exchangeType.getStuIds().get(i));
-                                packagePayment.setCoursePackageId(merchandise.getCoursePackageId());
-                                for (CoursePackagePaymentConfig coursePackagePaymentConfig : courseConfigList) {
-                                    if (Objects.equals(coursePackagePaymentConfig.getId(), merchandise.getCoursePackageConfigId())) {
-                                        packagePayment.setClassHours(coursePackagePaymentConfig.getClassHours());
-                                        packagePayment.setTotalClassHours(coursePackagePaymentConfig.getClassHours());
-                                        packagePayment.setLaveClassHours(coursePackagePaymentConfig.getClassHours());
-                                        packagePayment.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
-                                        break;
-                                    }
-                                }
-                                packagePayment.setPlayPaiCoin(merchandise.getIntegral());
-                                packagePayment.setAbsencesNumber(0);
-                                packagePayment.setPayUserType(1);
-                                packagePayment.setPayStatus(1);
-                                packagePayment.setPayUserId(userIdFormRedis);
-                                packagePayment.setStatus(1);
-                                packagePayment.setState(1);
-                                packagePayment.setInsertTime(new Date());
-                                packagePayment.setCode(code);
-                                paymentClient.savePaymentCoursePackage(packagePayment);
-                            }
-                            break;
-                        case 4:
-                            for (int i = 0; i < goodsNums; i++) {
-                                UserCoupon coupon = new UserCoupon();
-                                coupon.setCouponId(exchangeType.getGoodId());
-                                coupon.setUserId(userIdFormRedis);
-                                coupon.setStatus(1);
-                                coupon.setInsertTime(new Date());
-                                ucponClient.insertToAppuserCoupon(coupon);
-                            }
-                            break;
-                        default:
-                            break;
-                    }
-                }else {
-                    return ResultUtil.error("用户积分不足!");
-                }
                 switch (exchangeType.getPayType()) {
                     case 1:
                         try {
@@ -1035,55 +983,6 @@
                 }
                 break;
             case 3:
-//                现金
-                switch (exchangeType.getGoodsType()){
-                    case 2:
-                        Integer stuNums = 0;
-                        if (ToolUtil.isNotEmpty(exchangeType.getStuIds())){
-                            stuNums = exchangeType.getStuIds().size();
-                        }else {
-                            stuNums = 1;
-                        }
-                        for (int i = 0; i < stuNums; i++) {
-                            List<CoursePackagePaymentConfig> courseConfigList = cpconClient.getCourseConfigList(merchandise.getCoursePackageId());
-                            TCoursePackagePayment packagePayment = new TCoursePackagePayment();
-                            packagePayment.setAppUserId(userIdFormRedis);
-                            packagePayment.setStudentId(exchangeType.getStuIds().get(i));
-                            packagePayment.setCoursePackageId(merchandise.getCoursePackageId());
-                            for (CoursePackagePaymentConfig coursePackagePaymentConfig : courseConfigList) {
-                                if (Objects.equals(coursePackagePaymentConfig.getId(), merchandise.getCoursePackageConfigId())) {
-                                    packagePayment.setClassHours(coursePackagePaymentConfig.getClassHours());
-                                    packagePayment.setTotalClassHours(coursePackagePaymentConfig.getClassHours());
-                                    packagePayment.setLaveClassHours(coursePackagePaymentConfig.getClassHours());
-                                    packagePayment.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
-                                    break;
-                                }
-                            }
-                            packagePayment.setCashPayment(merchandise.getCash());
-                            packagePayment.setAbsencesNumber(0);
-                            packagePayment.setPayUserType(1);
-                            packagePayment.setPayStatus(1);
-                            packagePayment.setPayUserId(userIdFormRedis);
-                            packagePayment.setStatus(1);
-                            packagePayment.setState(1);
-                            packagePayment.setInsertTime(new Date());
-                            packagePayment.setCode(code);
-                            paymentClient.savePaymentCoursePackage(packagePayment);
-                        }
-                        break;
-                    case 4:
-                        for (int i = 0; i < goodsNums; i++) {
-                            UserCoupon coupon = new UserCoupon();
-                            coupon.setCouponId(exchangeType.getGoodId());
-                            coupon.setUserId(userIdFormRedis);
-                            coupon.setStatus(1);
-                            coupon.setInsertTime(new Date());
-                            ucponClient.insertToAppuserCoupon(coupon);
-                        }
-                        break;
-                    default:
-                        break;
-                }
                 switch (exchangeType.getPayType()) {
                     case 1:
                         try {
@@ -1163,11 +1062,10 @@
                                 Map<String, String> data1 = resultUtil.getData();
                                 String s = data1.get("tradeStatus");
                                 String tradeNo = data1.get("tradeNo");
-//                                if("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10){
-//                                    coursePackagePayment.setState(3);
-//                                    couPayClient.delPaymentCoursePackage(coursePackagePayment.getId());
-//                                    break;
-//                                }
+                                if("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10){
+                                    mcClient.deletePaymentRecord(code);
+                                    break;
+                                }
                                 if("TRADE_SUCCESS".equals(s)){
                                     for (UserPointsMerchandise userPointsMerchandise : userPointsMerchandises) {
                                         userPointsMerchandise.setPayStatus(2);
@@ -1183,6 +1081,7 @@
                             }
                         }
                     }catch (Exception e){
+                        mcClient.deletePaymentRecord(code);
                         e.printStackTrace();
                     }
                 }
@@ -1223,11 +1122,10 @@
                                 Map<String, String> data1 = resultUtil.getData();
                                 String s = data1.get("trade_state");
                                 String transaction_id = data1.get("transaction_id");
-//                                if("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10){
-//                                    coursePackagePayment.setState(3);
-//                                    couPayClient.delPaymentCoursePackage(coursePackagePayment.getId());
-//                                    break;
-//                                }
+                                if("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10){
+                                    mcClient.deletePaymentRecord(code);
+                                    break;
+                                }
                                 if("SUCCESS".equals(s)){
                                     for (UserPointsMerchandise userPointsMerchandise : userPointsMerchandises) {
                                         userPointsMerchandise.setPayStatus(2);
@@ -1279,7 +1177,6 @@
                         coupon.setCouponId(userPointsMerchandises.get(0).getPointsMerchandiseId());
                         coupon.setUserId(userPointsMerchandises.get(0).getUserId());
                         coupon.setStatus(1);
-                        coupon.setInsertTime(new Date());
                         ucponClient.insertToAppuserCoupon(coupon);
                         break;
                     default:
@@ -1310,7 +1207,6 @@
                     coupon.setCouponId(userPointsMerchandises.get(0).getPointsMerchandiseId());
                     coupon.setUserId(userPointsMerchandises.get(0).getUserId());
                     coupon.setStatus(1);
-                    coupon.setInsertTime(new Date());
                     ucponClient.insertToAppuserCoupon(coupon);
                     break;
                 default:
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
index 55f41f0..e83e1c8 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
@@ -207,6 +207,7 @@
 
     @PostMapping("/base/coupon/insertToAppuserCoupon")
     public void insertToAppuserCoupon(@RequestBody UserCoupon coupon){
+        coupon.setInsertTime(new Date());
         ucService.save(coupon);
     }
 
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index 0c446a5..24697ee 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -75,6 +75,7 @@
         List<IntegralCommodity> commodity = new ArrayList<>();
         List<PointsMerchandise> merchandises = pmdsService.list(new QueryWrapper<PointsMerchandise>()
                 .eq("state",1)
+                .eq("shelves",1)
                 .gt("endTime",new Date()));
         if (merchandises.size() > 0){
             for (PointsMerchandise merchandise : merchandises) {
@@ -111,7 +112,8 @@
         }
 
         list = pmdsService.list(new QueryWrapper<PointsMerchandise>()
-                .eq("state", 1));
+                .eq("state", 1)
+                .eq("shelves",1));
         if (list.size() > 0 ){
             Iterator<PointsMerchandise> iterator = list.iterator();
             while (iterator.hasNext()) {
@@ -505,4 +507,24 @@
         return count;
     }
 
+
+    /**
+     * 变更兑换商品的的状态
+     * @param code
+     * @return 数量
+     */
+    @ResponseBody
+    @PostMapping("/base/pointMerchars/deletePaymentRecord")
+    public void deletePaymentRecord(@RequestBody String code){
+        List<UserPointsMerchandise> list = upmseService.list(new LambdaQueryWrapper<UserPointsMerchandise>()
+                .eq(UserPointsMerchandise::getCode,code));
+        if (list.size() > 0 ){
+            for (UserPointsMerchandise pointsMerchandise : list) {
+                pointsMerchandise.setState(2);
+                upmseService.updateById(pointsMerchandise);
+            }
+        }
+
+    }
+
 }
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java
index 20c0fd9..b1d407f 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponController.java
@@ -184,7 +184,7 @@
 
     
     
-    
+    @ResponseBody
     @PostMapping("/userCoupon/queryCouponOfStore")
     public List<Integer> getCouponStoreIds(@RequestBody Integer couponId){
         try {
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/PointsMerchandise.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/PointsMerchandise.java
index 382829b..2afd765 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/PointsMerchandise.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/PointsMerchandise.java
@@ -154,6 +154,11 @@
      */
     @TableField("coursePackageConfigId")
     private Integer coursePackageConfigId;
+    /**
+     * 1=上架 2=下架
+     */
+    @TableField("shelves")
+    private Integer shelves;
 
     @Override
     protected Serializable pkVal() {
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java
index e669475..1399bb6 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java
@@ -93,6 +93,11 @@
      */
     @TableField("storeId")
     private Integer storeId;
+    /**
+     * 1=正常 2=删除
+     */
+    @TableField("state")
+    private Integer state;
 
 
     @Override
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
index 498e942..dc6c581 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -791,6 +791,7 @@
 
     @PostMapping("/base/coursePack/savePaymentCoursePackage")
     public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment){
+        packagePayment.setInsertTime(new Date());
         return packagePaymentService.save(packagePayment);
     }
 

--
Gitblit v1.7.1