From 852681bc9257e9eaae64d027a9bc6d88f93f35b4 Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期六, 23 九月 2023 09:51:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java |   66 +++++++++++++++++++++++++++++++--
 1 files changed, 62 insertions(+), 4 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
index 1da3976..3d66997 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
@@ -3,8 +3,13 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.dsh.account.dto.CreateHistoryDto;
+import com.dsh.account.dto.GetHistoryDto;
+import com.dsh.account.dto.StudentSearch;
+import com.dsh.account.dto.TStudentDto;
 import com.dsh.account.entity.Coach;
 import com.dsh.account.entity.TAppUser;
+import com.dsh.account.entity.TCourseInfoRecord;
 import com.dsh.account.entity.TStudent;
 import com.dsh.account.feignclient.activity.IntroduceRewardsClient;
 import com.dsh.account.feignclient.activity.UserConponClient;
@@ -38,6 +43,7 @@
 import com.dsh.account.model.vo.sourceDetail.CourseDetailsOfContinuationResp;
 import com.dsh.account.model.vo.sourceDetail.RecordTimeRequest;
 import com.dsh.account.model.vo.userBenefitDetail.Goods;
+import com.dsh.account.service.TCourseInfoRecordService;
 import com.dsh.account.service.TStudentService;
 import com.dsh.account.util.*;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -111,6 +117,9 @@
 
     @Resource
     private CourseListClient culisClient;
+
+    @Autowired
+    private TCourseInfoRecordService courseInfoRecordService;
 
 
 
@@ -241,6 +250,7 @@
         getStuSourseList.setStartTime(startTime);
         getStuSourseList.setEndTime(endTime);
         getStuSourseList.setAppUserId(appUserId);
+        // 报名赛事
         List<PurchaseRecordVo> stuSourseList = dcttClient.getStuSourseList(getStuSourseList);
         purchaseRecordVoList.addAll(stuSourseList);
 
@@ -257,6 +267,7 @@
         getStuSessionList.setEndTime(endTime);
         getStuSessionList.setStuId(timeRequest.getStuId());
         getStuSessionList.setAppUserId(appUserId);
+        // 购买课包
         List<PurchaseRecordVo> purchaseRecordVos = sessionNameClient.queryCourseDetails(getStuSessionList);
         purchaseRecordVoList.addAll(purchaseRecordVos);
         List<TAppUser> tAppUsers = tauMapper.selectList(new QueryWrapper<TAppUser>()
@@ -268,9 +279,30 @@
             request.setStartTime(startTime);
             request.setEndTime(endTime);
             request.setUserIds(userIds);
+            // 介绍有礼
             List<PurchaseRecordVo> purchaseRecordVos1 = idrClient.queryAppUsersofIntroduce(request);
             purchaseRecordVoList.addAll(purchaseRecordVos1);
         }
+
+        LambdaQueryWrapper<TCourseInfoRecord> eq = new LambdaQueryWrapper<TCourseInfoRecord>().eq(TCourseInfoRecord::getUserId, appUserId);
+        if(timeRequest.getType()!=null){
+            eq.eq(TCourseInfoRecord::getType,timeRequest.getType());
+        }
+        // 2.0其他记录
+        List<TCourseInfoRecord> list = courseInfoRecordService.list(eq);
+        List<PurchaseRecordVo> list1=new ArrayList<>();
+        for (TCourseInfoRecord tCourseInfoRecord : list) {
+            PurchaseRecordVo purchaseRecordVo = new PurchaseRecordVo();
+            purchaseRecordVo.setPurchaseTime(new SimpleDateFormat("MM-dd HH:mm").format(tCourseInfoRecord.getTime()));
+            purchaseRecordVo.setPurchaseType(tCourseInfoRecord.getName());
+            if(tCourseInfoRecord.getType()==1){
+                purchaseRecordVo.setPurchaseAmount("+"+tCourseInfoRecord.getNum());
+            }else {
+                purchaseRecordVo.setPurchaseAmount("-"+tCourseInfoRecord.getNum());
+            }
+            list1.add(purchaseRecordVo);
+        }
+        purchaseRecordVoList.addAll(list1);
 
         if (purchaseRecordVoList.size() > 0 ){
             purchaseRecordVoList = purchaseRecordVoList.stream()
@@ -439,12 +471,14 @@
         packagePayment.setInsertTime(new Date());
         couPayClient.savePaymentCoursePackage(packagePayment);
 
+        Integer hour = couPayClient.getClassHour(request.getCourseConfigId());
+
         try {
             switch (request.getPayType()) {
                 case 1:
-                    return WeChatPayment(code,request.getPayAmount());
+                    return WeChatPayment(code,request.getPayAmount(),hour);
                 case 2:
-                    return AlipayPayment(code,request.getPayAmount());
+                    return AlipayPayment(code,request.getPayAmount(),hour);
                 case 3:
                     int i = PlaypaiGoldPayment(code,request);
                     switch (i){
@@ -467,7 +501,7 @@
     }
 
 
-    public ResultUtil WeChatPayment(String code,BigDecimal amount) throws Exception {
+    public ResultUtil WeChatPayment(String code,BigDecimal amount,Integer hour) throws Exception {
         ResultUtil weixinpay = payMoneyUtil.weixinpay("课包续费", "", code, amount.toString(),
                 "/base/coursePackage/wechatPaymentCallback", "APP", "");
         if(weixinpay.getCode() == 200){
@@ -506,6 +540,8 @@
                                 }
                                 if("SUCCESS".equals(s)){
                                     coursePackagePayment.setPayStatus(2);
+                                    coursePackagePayment.setTotalClassHours(hour);
+                                    coursePackagePayment.setLaveClassHours(hour);
                                     coursePackagePayment.setOrderNumber(transaction_id);
                                     couPayClient.updatePaymentCoursePackage(coursePackagePayment);
                                     break;
@@ -524,7 +560,7 @@
         return weixinpay;
     }
 
-    public ResultUtil AlipayPayment(String code,BigDecimal amount){
+    public ResultUtil AlipayPayment(String code,BigDecimal amount,Integer hour){
         ResultUtil alipay = payMoneyUtil.alipay("课包续费", "课包续费", "", code, amount.toString(),
                 "/base/coursePackage/alipayPaymentCallback");
         if(alipay.getCode() == 200){
@@ -560,6 +596,8 @@
                                 }
                                 if("TRADE_SUCCESS".equals(s)){
                                     coursePackagePayment.setPayStatus(2);
+                                    coursePackagePayment.setTotalClassHours(hour);
+                                    coursePackagePayment.setLaveClassHours(hour);
                                     coursePackagePayment.setOrderNumber(tradeNo);
                                     couPayClient.updatePaymentCoursePackage(coursePackagePayment);
                                     break;
@@ -778,5 +816,25 @@
         return ResultUtil.success();
     }
 
+    @Override
+    public List<TStudentDto> listAll(StudentSearch search) {
+        return this.baseMapper.selectAll(search);
+    }
+
+    @Override
+    public TStudentDto listOne(Integer id) {
+        return this.baseMapper.selectWebOne(id);
+    }
+
+    @Override
+    public void createHistory(CreateHistoryDto createHistoryDto) {
+         this.baseMapper.createHistory(createHistoryDto);
+    }
+
+    @Override
+    public List<GetHistoryDto> getHistory() {
+        return this.baseMapper.getHistory();
+    }
+
 
 }

--
Gitblit v1.7.1