From 643d431548ddb65a904a45d024fe04ea3ec49276 Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期二, 11 七月 2023 17:58:45 +0800
Subject: [PATCH] 开始上课的支付功能

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java |   75 +++++++++++++++++++++++++++++++++----
 1 files changed, 67 insertions(+), 8 deletions(-)

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 795f430..39fbb54 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
@@ -3,23 +3,19 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.dsh.course.entity.*;
+import com.dsh.course.feignclient.account.AppUserClient;
+import com.dsh.course.feignclient.account.model.AppUser;
 import com.dsh.course.feignclient.model.*;
 import com.dsh.course.model.BaseVo;
 import com.dsh.course.model.dto.DiscountJsonDto;
 import com.dsh.course.model.vo.CourseDetailRequest;
 import com.dsh.course.model.vo.RegisterCourseVo;
-import com.dsh.course.model.vo.request.ClasspaymentRequest;
-import com.dsh.course.model.vo.request.CourseOfAfterRequest;
-import com.dsh.course.model.vo.request.CourseWithDetailsRequest;
-import com.dsh.course.model.vo.request.UpdateCourseVideoStatusRequest;
+import com.dsh.course.model.vo.request.*;
 import com.dsh.course.model.vo.response.AppUserVideoResponse;
 import com.dsh.course.model.vo.response.CourseDetailsResponse;
 import com.dsh.course.model.vo.response.CourseOfVideoResponse;
 import com.dsh.course.service.*;
-import com.dsh.course.util.DateUtil;
-import com.dsh.course.util.ResultUtil;
-import com.dsh.course.util.StrUtils;
-import com.dsh.course.util.TokenUtil;
+import com.dsh.course.util.*;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import io.swagger.annotations.Api;
@@ -67,6 +63,9 @@
     private CancelledClassesService cacService;
 
     @Autowired
+    private ICoursePackagePaymentConfigService icppcService;
+
+    @Autowired
     private UserVideoDetailsService uvdsService;
 
     @Autowired
@@ -82,6 +81,9 @@
 
     @Autowired
     private CancelledClassesService cancelledClassesService;
+
+    @Autowired
+    private AppUserClient appuClient;
 
     private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm");
 
@@ -620,4 +622,61 @@
             e.printStackTrace();
         }
     }
+
+
+    /**
+     * 课包续费玩湃币支付
+     * @param
+     */
+    @PostMapping("/coursePackagePayment/courseRenewPlayPaiPay")
+    public int paymentWanpaiRenewCourse(@RequestBody PlayPaiGoldCoursePackage coursePackage){
+        try {
+            Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+            if (null == userIdFormRedis){
+                return 2;
+            }
+            CoursePackagePaymentConfig paymentConfig = icppcService.getById(coursePackage.getCoursePayConfigId());
+            AppUser appUser = appuClient.queryAppUser(userIdFormRedis);
+            if (appUser.getPlayPaiCoins() < paymentConfig.getPlayPaiCoin()){
+                return 3;
+            }
+            TCoursePackagePayment packagePayment = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>()
+                    .eq("code",coursePackage.getCode() ));
+            packagePayment.setPayStatus(2);
+            packagePayment.setPayUserId(userIdFormRedis);
+            packagePayment.setClassHours(paymentConfig.getClassHours());
+            packagePayment.setPlayPaiCoin(paymentConfig.getPlayPaiCoin());
+            packagePayment.setTotalClassHours(paymentConfig.getClassHours());
+            packagePayment.setLaveClassHours(paymentConfig.getClassHours());
+            packagePaymentService.updateById(packagePayment);
+
+            appUser.setPlayPaiCoins(appUser.getPlayPaiCoins()-paymentConfig.getPlayPaiCoin());
+            appuClient.updateAppUser(appUser);
+        } catch (Exception e) {
+            return 4;
+        }
+        return 1;
+    }
+
+    @PostMapping("/base/coursePack/getPaymentCoursePackage")
+    public TCoursePackagePayment getCoursePackagePaymentByCode(@RequestBody String code){
+        return packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>()
+                .eq("code",code));
+    }
+
+    @PostMapping("/base/coursePack/delPaymentCoursePackage")
+    public boolean delPaymentCoursePackage(@RequestBody Integer payId){
+        return packagePaymentService.removeById(payId);
+    }
+    @PostMapping("/base/coursePack/updatePaymentCoursePackage")
+    public boolean updatePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment){
+        return packagePaymentService.update(packagePayment,new QueryWrapper<TCoursePackagePayment>()
+                .eq("id",packagePayment.getId()));
+    }
+
+    @PostMapping("/base/coursePack/savePaymentCoursePackage")
+    public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment){
+        return packagePaymentService.save(packagePayment);
+    }
+
 }

--
Gitblit v1.7.1