From 8c55ab2701c99cec16eff92a26fefdf77fcdd28f Mon Sep 17 00:00:00 2001
From: liujie <liujie>
Date: 星期一, 25 九月 2023 16:17:44 +0800
Subject: [PATCH] app接口修改

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java |   68 +++++++++++++++++++++++++++-------
 1 files changed, 54 insertions(+), 14 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 2e80f90..e381c62 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
@@ -5,6 +5,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dsh.course.entity.*;
 import com.dsh.course.feignclient.account.AppUserClient;
@@ -15,6 +16,7 @@
 import com.dsh.course.feignclient.model.*;
 import com.dsh.course.feignclient.other.StoreClient;
 import com.dsh.course.feignclient.other.model.Store;
+import com.dsh.course.mapper.CoursePackageSchedulingMapper;
 import com.dsh.course.model.*;
 import com.dsh.course.model.dto.DiscountJsonDto;
 import com.dsh.course.model.vo.CourseDetailRequest;
@@ -29,6 +31,7 @@
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.models.auth.In;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
@@ -105,6 +108,9 @@
 
     @Autowired
     private RestTemplate internalRestTemplate;
+
+    @Resource
+    private CoursePackageSchedulingMapper coursePackageSchedulingMapper;
 
 
     private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm");
@@ -439,7 +445,6 @@
         }
     }
 
-
     /**
      * 课后视频课表
      */
@@ -493,7 +498,6 @@
         }
     }
 
-
     @ResponseBody
     @PostMapping("/api/startCource/payCourseInfo")
     @ApiOperation(value = "课后练习-购课详情(用于购课)", tags = {"APP-开始上课"})
@@ -507,7 +511,6 @@
             return ResultUtil.runErr();
         }
     }
-
 
     @ResponseBody
     @PostMapping("/api/startCource/getMyCourseList")
@@ -546,7 +549,6 @@
         }
     }
 
-
     /**
      * 更新课后视频学习状态
      */
@@ -567,7 +569,6 @@
             return ResultUtil.runErr();
         }
     }
-
 
 
     @ResponseBody
@@ -611,7 +612,6 @@
         }catch (Exception e){
             return ResultUtil.runErr();
         }
-
     }
 
 
@@ -929,6 +929,11 @@
                 .eq("code",code));
     }
 
+
+    @PostMapping("/base/coursePack/getCoursePackagePaymentById")
+    public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id){
+        return packagePaymentService.getById(id);
+    }
     @PostMapping("/base/coursePack/delPaymentCoursePackage")
     public boolean delPaymentCoursePackage(@RequestBody Integer payId){
         return packagePaymentService.removeById(payId);
@@ -1051,6 +1056,16 @@
     }
 
 
+    @ResponseBody
+    @PostMapping("/coursePackagePayment/CountqueryByClassId")
+   public   Integer  CountqueryByClassId(@RequestBody Integer id){
+        int coursePackageId = packagePaymentService.count(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", id));
+
+
+        return coursePackageId;
+    }
+
+
     /**
      * 修改数据
      * @param coursePackagePayment
@@ -1081,28 +1096,27 @@
             if(null == appUserId){
                 return ResultUtil.tokenErr();
             }
-            TCoursePackagePayment packagePayment = packagePaymentService.getOne(new LambdaQueryWrapper<TCoursePackagePayment>()
+            List<TCoursePackagePayment> packagePayment = packagePaymentService.list(new LambdaQueryWrapper<TCoursePackagePayment>()
                     .eq(TCoursePackagePayment::getCoursePackageId,courseID )
                     .eq(TCoursePackagePayment::getAppUserId,appUserId)
                     .eq(TCoursePackagePayment::getStudentId,stuId)
             );
 
-            if (ToolUtil.isEmpty(packagePayment)){
+            if (ToolUtil.isEmpty(packagePayment) || packagePayment.size()==0){
                 return ResultUtil.error("该用户未购买该课包");
             }
             List<CoursePackageStudent> coursePackageStudent = cspsService.list(new LambdaQueryWrapper<CoursePackageStudent>()
-                    .eq(CoursePackageStudent::getCoursePackageId,packagePayment.getCoursePackageId())
-                    .eq(CoursePackageStudent::getCoursePackagePaymentId,courseID)
+                    .in(CoursePackageStudent::getCoursePackagePaymentId,packagePayment.stream().map(TCoursePackagePayment::getId).collect(Collectors.toList()))
+                    .eq(CoursePackageStudent::getCoursePackageId,courseID)
                     .eq(CoursePackageStudent::getStudentId,stuId)
                     .eq(CoursePackageStudent::getAppUserId,appUserId)
             );
 
             if (ToolUtil.isNotEmpty(coursePackageStudent)){
                 for (CoursePackageStudent packageStudent : coursePackageStudent) {
-                    if(packageStudent.getReservationStatus()==0){
+                    if(packageStudent.getReservationStatus()==1){
                         packageStudent.setSignInOrNot(2);
-                        packageStudent.setInsertTime(simpleDateFormat.parse(time));
-                        cspsService.updateById(packageStudent);
+                        cspsService.updateSignInOrNotById(packageStudent.getId());
                     }
                 }
 
@@ -1135,6 +1149,8 @@
             map.put("lon",lon);
             map.put("lat",lat);
 
+            String time1 = courseDetailReq.getTime();
+
             // 找出门店的所有课程 排出体验
             List<TCoursePackage> list = tcpService.list(new LambdaQueryWrapper<TCoursePackage>().eq(TCoursePackage::getStoreId, courseDetailReq.getStoreId()).ne(TCoursePackage::getType, 3).like(TCoursePackage::getClassWeeks,week));
             List<Integer> collect = list.stream().map(TCoursePackage::getId).collect(Collectors.toList());
@@ -1144,6 +1160,7 @@
             // 找出购买的课包
             List<TCoursePackagePayment> list1 = packagePaymentService.list(new LambdaQueryWrapper<TCoursePackagePayment>().eq(TCoursePackagePayment::getAppUserId, courseDetailReq.getAppUserId()).eq(TCoursePackagePayment::getStudentId, courseDetailReq.getStuId()).in(TCoursePackagePayment::getCoursePackageId, collect));
             List<Integer> collect1 = list1.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
+            List<Long> ids = list1.stream().map(TCoursePackagePayment::getId).collect(Collectors.toList());
             for (TCoursePackage tCoursePackage : list) {
                 DetailsListVo detailsListVo = new DetailsListVo();
                 detailsListVo.setId(tCoursePackage.getId());
@@ -1165,7 +1182,30 @@
                 }
                 detailsListVo.setNum(tCoursePackage.getNeedNum());
                 if (collect1.contains(tCoursePackage.getId())) {
-                    detailsListVo.setType(1);
+                    // 找出排课记录
+                    List<CoursePackageScheduling> list3 = coursePackageSchedulingMapper.selectList(new LambdaQueryWrapper<CoursePackageScheduling>()
+                            .eq(CoursePackageScheduling::getCoursePackageId, tCoursePackage.getId())
+                            .like(CoursePackageScheduling::getClassDate, courseDetailReq.getTime())
+                    );
+                    List<Long> collect2 = list3.stream().map(CoursePackageScheduling::getId).collect(Collectors.toList());
+                    if(collect2.size()==0){
+                        collect2.add(-1l);
+                    }
+                    List<CoursePackageStudent> list4 = cspsService.list(new LambdaQueryWrapper<CoursePackageStudent>()
+                            .eq(CoursePackageStudent::getAppUserId, courseDetailReq.getAppUserId())
+                            .eq(CoursePackageStudent::getCoursePackageId, tCoursePackage.getId())
+                            .in(CoursePackageStudent::getCoursePackageSchedulingId, collect2).
+                                    in(CoursePackageStudent::getCoursePackagePaymentId, ids)
+                    );
+
+                        detailsListVo.setType(1);
+                    if(list4.size()>0){
+                        Integer signInOrNot = list4.get(0).getSignInOrNot();
+                        if(signInOrNot==2){
+                            detailsListVo.setType(3);
+                        }
+                    }
+
                 } else {
                     detailsListVo.setType(2);
                 }

--
Gitblit v1.7.1