无关风月
2024-09-26 3cb61867769d091f7e20ade8701b6593b82141ad
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -133,10 +133,24 @@
    private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm");
    @Autowired
    private ICoursePackageOrderStudentService coursePackageOrderStudentService;
    @Autowired
    private ALiSendSms aLiSendSms;
    @Resource
    private AppUserClient appuClient;
    @Autowired
    private CourseCounsumService courseCounsumService;
    @Autowired
    private TCoursePackagePaymentService coursePackagePaymentService;
    /**
@@ -180,13 +194,15 @@
        coursePackageOrder.setStudentIds(String.valueOf(packagePayment.getStudentId()));
        coursePackageOrder.setCoursePackageId(packagePayment.getCoursePackageId());
        coursePackageOrder.setClassHours(packagePayment.getClassHours());
        coursePackageOrder.setLaveClassHours(packagePayment.getClassHours());
        coursePackageOrder.setOriginalPrice(packagePayment.getOriginalPrice());
        coursePackageOrder.setCashPayment(packagePayment.getCashPayment());
        coursePackageOrder.setPlayPaiCoin(packagePayment.getPlayPaiCoin());
        coursePackageOrder.setCode(packagePayment.getCode());
        coursePackageOrder.setPayStatus(1);
        coursePackageOrder.setStatus(1);
        coursePackageOrder.setState(1);
        coursePackageOrder.setInsertTime(new Date());
        coursePackageOrder.setOrderType(1);
        coursePackageOrder.setSalesName(packagePayment.getSalesName());
        coursePackageOrderService.save(coursePackageOrder);
        // 生成排课数据
@@ -471,7 +487,8 @@
                }
            }
            TAppUser appUser = appUserClient.queryAppUser1(re.getAppUserId());
            Student student = studentClient.queryStudentById(re.getStudentId());
            String[] split = re.getStudentIds().split(",");
            Student student = studentClient.queryStudentById(Integer.valueOf(split[0]));
            re.setPayStudent(student.getName());
            re.setPayUser(appUser.getName());
            re.setPhone(appUser.getPhone());
@@ -586,7 +603,6 @@
                            storeVo.setLon(store.getLon());
                            storeVo.setCoursePrice(ToolUtil.isEmpty(paymentConfig.getCashPayment()) ? (double) paymentConfig.getPlayPaiCoin() : paymentConfig.getCashPayment());
                            storeVo.setStatus(1);
                            // 2.0
                            storeVo.setAllNum(tCoursePackagePayment.getTotalClassHours());
                            storeVo.setLastNum(tCoursePackagePayment.getLaveClassHours());
                            storeVo.setUseNum(tCoursePackagePayment.getTotalClassHours() - tCoursePackagePayment.getLaveClassHours());
@@ -674,7 +690,7 @@
                PurchaseRecordVo recordVo = new PurchaseRecordVo();
                recordVo.setPurchaseAmount("+" + cspackage.getClassHours());
                recordVo.setPurchaseTime(format.format(cspackage.getInsertTime()));
                recordVo.setPurchaseType("购买课包");
                recordVo.setPurchaseType("报名运动营");
                purchaseRecordVos.add(recordVo);
            });
        }
@@ -682,11 +698,7 @@
    }
    @Autowired
    private CourseCounsumService courseCounsumService;
    @Autowired
    private TCoursePackagePaymentService coursePackagePaymentService;
    @PostMapping("/base/coursePack/getRecord")
    public List<PurchaseRecordVo> getRecord(@RequestBody RecordTimeRequest recordTimeRequest) {
@@ -760,7 +772,6 @@
        return lisco;
    }
    @PostMapping("/base/coursePack/continuingCourse")
    public StudentOfCourseVo getStudentCourse(@RequestBody GetStudentCourse getStudentCourse) {
        StudentOfCourseVo courseVo = new StudentOfCourseVo();
@@ -769,7 +780,6 @@
                .eq("coursePackageId", getStudentCourse.getCourseId())
                .eq("studentId", getStudentCourse.getStuId()));
        if (tCoursePackagePayments.size() > 0) {
            List<CourseHoursType> typeList = new ArrayList<>();
            tCoursePackagePayments.forEach(cou -> {
                CourseHoursType hoursType = new CourseHoursType();
@@ -780,7 +790,6 @@
            TCoursePackagePayment tCoursePackagePayment = tCoursePackagePayments.get(0);
            courseVo.setCoursePackageId(tCoursePackagePayment.getCoursePackageId());
            courseVo.setTypeList(typeList);
            TCoursePackage coursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId());
            courseVo.setPackageImg(coursePackage.getCoverDrawing());
            courseVo.setCourseName(coursePackage.getName());
@@ -1032,7 +1041,7 @@
        }
    }
    // 2.0
    @ResponseBody
    @PostMapping("/api/startCource/payCourse")
    @ApiOperation(value = "课后练习-确认购课", tags = {"APP-开始上课"})
@@ -1163,15 +1172,16 @@
    })
    public ResultUtil continuationOperation(ClasspaymentRequest request) {
        try {
            Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
            if (null == userIdFormRedis) {
            Integer userId = tokenUtil.getUserIdFormRedis();
            System.err.println("续课参数"+request);
            if (null == userId) {
                return ResultUtil.tokenErr();
            }
            Integer couponId = request.getConponId();
            Long couponId = request.getConponId();
            if (couponId == null || couponId == 0) {
                request.setConponId(null);
            }
            return packagePaymentService.ContinuationOrpaymentCourse(userIdFormRedis, request);
            return packagePaymentService.ContinuationOrpaymentCourse(userId, request);
        } catch (Exception e) {
            return ResultUtil.runErr();
        }
@@ -1298,21 +1308,16 @@
    @PostMapping("/coursePackagePayment/paymentDeductionClassHour")
    public void paymentDeductionClassHour(@RequestBody PaymentDeductionClassHour paymentDeductionClassHour) {
        try {
            // 2.0 用id进行查询
//            TCoursePackagePayment coursePackagePayment = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("id", paymentDeductionClassHour.getCourseId()).eq("payStatus", 2)
//                    .eq("status", 1).eq("state", 1).gt("laveClassHours", 0));
//            Integer classHour = paymentDeductionClassHour.getClassHour();
//            for (TCoursePackagePayment coursePackagePayment : list) {
            CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(paymentDeductionClassHour.getCourseId());
//            if (paymentDeductionClassHour.getClassHour() > coursePackageOrderStudent.getLaveClassHours()) {
//                return ResultUtil.error("当前课包课时数不足");
//            }
            TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
            coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() - paymentDeductionClassHour.getClassHour());
            coursePackageOrderStudentService.updateById(coursePackageOrderStudent);
            Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours();
            if(3 >= laveClassHours){
                AppUser appUser = appuClient.queryAppUser(coursePackageOrderStudent.getAppUserId());
                //发送短信提醒
                aLiSendSms.sendSms(appUser.getPhone(), "SMS_463646317", "");
            }
            //判断剩余课时是否已经全部进行排课,如果排课需要删除已经排好的记录
            List<CoursePackageScheduling> list1 = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>()
                    .eq("studentId", coursePackageOrderStudent.getStudentId()).eq("status", 1)
@@ -1332,131 +1337,14 @@
                }
            }
//            if (coursePackagePayment.getLaveClassHours().compareTo(classHour) >= 0) {
//                coursePackagePayment.setLaveClassHours(coursePackagePayment.getLaveClassHours() - classHour);
//                coursePackagePayment.setAppUserId(null);
//                packagePaymentService.updateById(coursePackagePayment);
//
//                CourseCounsum courseCounsum = new CourseCounsum();
//                courseCounsum.setPaymentId(coursePackagePayment.getId());
//                courseCounsum.setChangeType(0);
//                courseCounsum.setNum(classHour);
//                courseCounsum.setInsertTime(new Date());
//                courseCounsum.setReason("报名赛事");
//                courseCounsumService.save(courseCounsum);
//
//
//                List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackagePayment.getStudentId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId()));
//                List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList());
//                coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id", collect));
//                coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", paymentDeductionClassHour.getId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId()));
//
//
//                TCoursePackage tCoursePackage = packageService.getById(coursePackagePayment.getCoursePackageId());
//                String classWeeks = tCoursePackage.getClassWeeks();
//                List<Integer> week = week(classWeeks);
//
//                TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", coursePackagePayment.getCoursePackageId()).eq("studentId", coursePackagePayment.getStudentId()));
//
//                Date today = new Date();
//                Calendar calendar = Calendar.getInstance();
//                calendar.add(Calendar.DATE, -1);
//                today = calendar.getTime();
//
//
//                Integer laveClassHours = pay.getLaveClassHours();
//                Integer codeTime = tCoursePackage.getCodeTime();
//                Integer can = laveClassHours / codeTime;
//
//                int count = 0;
//                String[] split = tCoursePackage.getClassStartTime().split(",");
//                String[] split1 = tCoursePackage.getClassEndTime().split(",");
//                SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//                SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
//
//                Date[] dates = generateDateArray(14, today);
//                for (Date date : dates) {
//                    if (count == can) {
//                        break;
//                    }
//                    int wei = cn.hutool.core.date.DateUtil.dayOfWeek(date);
//                    if (week.contains(wei)) {
//                        for (int i1 = 0; i1 < split.length; i1++) {
//                            if (count == can) {
//                                break;
//                            }
//                            CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
//                            coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
//                            Date parse = format1.parse(format.format(date) + " " + split[i1]);
//                            Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
//                            coursePackageScheduling.setClassDate(parse);
//                            coursePackageScheduling.setEndDate(parse1);
//                            coursePackageScheduling.setStatus(1);
//                            coursePackageSchedulingService.save(coursePackageScheduling);
//                            CoursePackageStudent student1 = new CoursePackageStudent();
//                            student1.setAppUserId(pay.getAppUserId());
//                            student1.setStudentId(pay.getStudentId());
//                            student1.setCoursePackageId(pay.getCoursePackageId());
//                            student1.setCoursePackagePaymentId(pay.getId());
//                            student1.setCoursePackageSchedulingId(coursePackageScheduling.getId());
//                            student1.setSignInOrNot(1);
//                            student1.setReservationStatus(1);
//                            student1.setInsertTime(new Date());
//                            studentService.save(student1);
//                            count++;
//                        }
//                    }
//                }
//
//
//                // 2.0 少于3课时 推送
//                if (coursePackagePayment.getLaveClassHours() <= 3) {
//                    Integer appUserId = coursePackagePayment.getAppUserId();
//
//                    //调用推送
//                    HttpHeaders headers = new HttpHeaders();
//                    // 以表单的方式提交
//                    headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
//                    String s1 = appUserId + "_" + "Three";
//                    //定时修改排课状态
//                    String s = internalRestTemplate.getForObject("http://mb-cloud-gateway/netty/sendMsgToClient?id=" + s1, String.class);
//                    JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class);
//                    if (jsonObject1.getIntValue("code") != 200) {
//                        System.err.println(jsonObject1.getString("msg"));
//                    }
//                }
//
//                CancelledClasses cancelledClasses = new CancelledClasses();
//                cancelledClasses.setType(2);
//                cancelledClasses.setVoucher(paymentDeductionClassHour.getCode());
//                cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId());
//                cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId());
//                cancelledClasses.setCancelledClassesNumber(classHour);
//                cancelledClasses.setInsertTime(new Date());
//                cancelledClassesService.save(cancelledClasses);
//
//            } else {
//                CancelledClasses cancelledClasses = new CancelledClasses();
//                cancelledClasses.setType(2);
//                cancelledClasses.setVoucher(paymentDeductionClassHour.getCode());
//                cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId());
//                cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId());
//                cancelledClasses.setCancelledClassesNumber(coursePackagePayment.getLaveClassHours());
//                cancelledClasses.setInsertTime(new Date());
//                cancelledClassesService.save(cancelledClasses);
//
//                coursePackagePayment.setLaveClassHours(0);
//                packagePaymentService.updateById(coursePackagePayment);
//
//                classHour -= cancelledClasses.getCancelledClassesNumber();
//            }
//                }
            CourseCounsum courseCounsum = new CourseCounsum();
            courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
            courseCounsum.setChangeType(0);
            courseCounsum.setNum(paymentDeductionClassHour.getClassHour());
            courseCounsum.setInsertTime(new Date());
            courseCounsum.setReason("赛事报名");
            courseCounsum.setAppUserId(coursePackageOrderStudent.getAppUserId());
            courseCounsumService.save(courseCounsum);
        } catch (Exception e) {
            e.printStackTrace();
@@ -1619,7 +1507,6 @@
            appUser.setPlayPaiCoins(appUser.getPlayPaiCoins() - paymentConfig.getPlayPaiCoin());
            auClitn.updateAppUser(appUser);
            // 2.0
            TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord();
            tCourseInfoRecord.setUserId(userIdFormRedis);
            tCourseInfoRecord.setCourseId(coursePackage.getCoursePackageId());
@@ -1634,7 +1521,7 @@
            courseCounsum.setChangeType(1);
            courseCounsum.setNum(packagePayment.getClassHours());
            courseCounsum.setInsertTime(new Date());
            courseCounsum.setReason("购买课包");
            courseCounsum.setReason("报名运动营");
            courseCounsumService.save(courseCounsum);
        } catch (Exception e) {
@@ -1668,7 +1555,6 @@
        boolean id = packagePaymentService.update(packagePayment, new QueryWrapper<TCoursePackagePayment>()
                .eq("id", packagePayment.getId()));
        if (id) {
            // 2.0
            TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord();
            tCourseInfoRecord.setNum(packagePayment.getTotalClassHours());
            tCourseInfoRecord.setName("续课");
@@ -1692,9 +1578,9 @@
    }
    @PostMapping("/base/coursePack/savePaymentCoursePackage")
    public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment) {
        return packagePaymentService.save(packagePayment);
    public Long savePaymentCoursePackage(@RequestBody CoursePackageOrder coursePackageOrder) {
        coursePackageOrderService.save(coursePackageOrder);
        return coursePackageOrder.getId();
    }
@@ -1812,7 +1698,6 @@
                // 其他星期减一即可得到1-6的数字表示
                dayOfWeek -= 1;
            }
            // todo
            if (weeks.contains(String.valueOf(dayOfWeek))){
                // 限时折扣判断是否在有效期
                try {
@@ -1962,7 +1847,6 @@
                        coursePackageScheduling.setAppUserId(userId);
                        coursePackageScheduling.setStudentId(sId);
                        coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackageOrder.getId().toString());
                        Date parse = format1.parse(format.format(time) + " " + split[j]);
                        Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                        coursePackageScheduling.setClassDate(parse);
@@ -2023,7 +1907,6 @@
                        coursePackageScheduling.setAppUserId(userId);
                        coursePackageScheduling.setStudentId(sId);
                        coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackageOrder.getId().toString());
                        Date parse = format1.parse(format.format(time) + " " + split[j]);
                        Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                        coursePackageScheduling.setClassDate(parse);
@@ -2100,7 +1983,6 @@
                        }
                        CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                        coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackagePayment.getId().toString());
                        Date parse = format1.parse(format.format(date) + " " + split[i1]);
                        Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
                        coursePackageScheduling.setClassDate(parse);
@@ -2164,7 +2046,6 @@
                        }
                        CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                        coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackagePayment.getId().toString());
                        Date parse = format1.parse(format.format(date) + " " + split[i1]);
                        Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
                        coursePackageScheduling.setClassDate(parse);
@@ -2186,7 +2067,6 @@
                }
            }
        }
        // 2.0
        TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord();
        tCourseInfoRecord.setUserId(userId);
        tCourseInfoRecord.setCourseId(courseId);
@@ -2200,12 +2080,7 @@
    @ResponseBody
    @PostMapping("/base/coursePack/obtainStudentClassDetails")
    public List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody WeeksOfCourseRest stuId) {
//        try {
        return coursePackageOrderStudentService.obtainStuClassDetails(stuId.getStuId(), stuId.getAppUserId(), stuId.getPageNum());
//        }catch (Exception e){
//            e.printStackTrace();
//            throw new RuntimeException();
//        }
    }
@@ -2223,16 +2098,16 @@
    }
    // 2.0 送课时
    @PostMapping("/base/coursePack/sendHours")
    public Integer sendHours(@RequestBody String s) throws ParseException {
        String[] split2 = s.split("_");
        TCoursePackagePayment byId = packagePaymentService.getById(Long.valueOf(split2[0]));
        byId.setTotalClassHours(byId.getTotalClassHours() + Integer.valueOf(split2[2]));
        boolean b = packagePaymentService.updateHoursById(byId, Integer.valueOf(split2[2]));
        CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(Long.valueOf(split2[0]));
        coursePackageOrderStudent.setTotalClassHours(coursePackageOrderStudent.getTotalClassHours() + Integer.valueOf(split2[2]));
        coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() + Integer.valueOf(split2[2]));
        coursePackageOrderStudentService.updateById(coursePackageOrderStudent);
        CourseCounsum courseCounsum = new CourseCounsum();
        courseCounsum.setPaymentId(byId.getId());
        courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
        courseCounsum.setChangeType(1);
        courseCounsum.setNum(Integer.valueOf(split2[2]));
        courseCounsum.setInsertTime(new Date());
@@ -2240,17 +2115,17 @@
        courseCounsumService.save(courseCounsum);
        List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", byId.getStudentId()).eq("coursePackageId", byId.getCoursePackageId()));
        List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackageOrderStudent.getStudentId()).eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()));
        List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList());
        coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id", collect));
        coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", byId.getStudentId()).eq("coursePackageId", byId.getCoursePackageId()));
        coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackageOrderStudent.getStudentId()).eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()));
        TCoursePackage tCoursePackage = packageService.getById(byId.getCoursePackageId());
        TCoursePackage tCoursePackage = packageService.getById(coursePackageOrderStudent.getCoursePackageId());
        String classWeeks = tCoursePackage.getClassWeeks();
        List<Integer> week = week(classWeeks);
        TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", byId.getCoursePackageId()).eq("studentId", byId.getStudentId()));
        TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()).eq("studentId", coursePackageOrderStudent.getStudentId()));
        Date today = new Date();
@@ -2277,7 +2152,6 @@
                    }
                    CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                    coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                    coursePackageScheduling.setCoursePackagePaymentIds(pay.getId().toString());
                    Date parse = format1.parse(format.format(date) + " " + split[i1]);
                    Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
                    coursePackageScheduling.setClassDate(parse);
@@ -2298,14 +2172,7 @@
                }
            }
        }
        if (b) {
            return 1;
        } else {
            return 0;
        }
        return 1;
    }
@@ -2386,6 +2253,13 @@
        }
        coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours()-coursePackage.getNeedNum());
        orderStudentService.updateById(coursePackageOrderStudent);
        Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours();
        if(3 >= laveClassHours){
            AppUser appUser = appuClient.queryAppUser(coursePackageOrderStudent.getAppUserId());
            //发送短信提醒
            aLiSendSms.sendSms(appUser.getPhone(), "SMS_463646317", "");
        }
        CourseCounsum courseCounsum = new CourseCounsum();
        courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
        courseCounsum.setChangeType(0);
@@ -2419,7 +2293,6 @@
        packagePaymentService.updateById(coursePackagePayment);
    }
    /**
     * 修改数据
     *
@@ -2449,7 +2322,7 @@
     */
    @ResponseBody
    @PostMapping("/api/startCource/reverse")
    @ApiOperation(value = "上课主页-预约操作--2.0改请假操作", tags = {"APP-开始上课"})
    @ApiOperation(value = "上课主页-预约操作--改请假操作", tags = {"APP-开始上课"})
    @ApiImplicitParams({
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
            @ApiImplicitParam(value = "课包id", name = "courseID", required = true, dataType = "String"),
@@ -2507,14 +2380,28 @@
    @PostMapping("/base/coursePack/getConsumes")
    List<CourseCounsum> getConsumes(@RequestBody BillingDataRequestVo requestVo) {
        Integer[] integers = {2, 3};
        QueryWrapper<CourseCounsum> courseCounsumQueryWrapper = new QueryWrapper<CourseCounsum>().in("changeType", integers).eq("appUserId", requestVo.getAppUserId());
        QueryWrapper<CourseCounsum> courseCounsumQueryWrapper = new QueryWrapper<CourseCounsum>()
                .in("changeType", integers).eq("appUserId", requestVo.getAppUserId());
        if (requestVo.getMonthEnd() != null) {
            courseCounsumQueryWrapper.ge("insertTime", requestVo.getMonthStart());
            courseCounsumQueryWrapper.le("insertTime", requestVo.getMonthEnd());
        }
        return courseCounsumService.list(courseCounsumQueryWrapper);
    }
    @ResponseBody
    @PostMapping("/base/coursePack/getCoursePackageOrder")
    public List<CoursePackageOrder> getCoursePackageOrder(@RequestBody BillingDataRequestVo requestVo){
        QueryWrapper<CoursePackageOrder> wrapper = new QueryWrapper<CoursePackageOrder>().eq("appUserId", requestVo.getAppUserId())
                .in("payType", Arrays.asList(1, 2, 5, 6)).eq("payStatus", 2).eq("state", 1).eq("orderType", 1);
        return coursePackageOrderService.list(wrapper);
    }
    @ResponseBody
@@ -2603,6 +2490,7 @@
                        .eq(CoursePackageScheduling::getCoursePackageId, tCoursePackage.getId())
                        .like(CoursePackageScheduling::getClassDate, courseDetailReq.getTime())
                );
                if (list3.isEmpty()) {
                    detailsListVo.setType(2);
                    objects.add(detailsListVo);
@@ -2682,6 +2570,10 @@
                objects.add(detailsListVo);
            }
            //课程暂停
            if(tCoursePackage.getState() == 4){
                detailsListVo.setType(4);
            }
        }
        map.put("data", objects);
@@ -2726,18 +2618,18 @@
            ids.add(-1);
        }
        List<TCoursePackagePayment> list1 = packagePaymentService.listOne(ids);
        List<Integer> collect = list1.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
        if (collect.size() == 0) {
            collect.add(-1);
        }
        List<TCoursePackage> list2 = tcpService.list(new LambdaQueryWrapper<TCoursePackage>().in(TCoursePackage::getId, collect));
        for (TCoursePackagePayment tCoursePackagePayment : list1) {
            for (TCoursePackage tCoursePackage : list2) {
                if (tCoursePackagePayment.getCoursePackageId().equals(tCoursePackage.getId())) {
                    tCoursePackagePayment.setType(tCoursePackage.getType());
                }
            }
        }
//        List<Integer> collect = list1.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
//        if (collect.size() == 0) {
//            collect.add(-1);
//        }
//        List<TCoursePackage> list2 = tcpService.list(new LambdaQueryWrapper<TCoursePackage>().in(TCoursePackage::getId, collect));
//        for (TCoursePackagePayment tCoursePackagePayment : list1) {
//            for (TCoursePackage tCoursePackage : list2) {
//                if (tCoursePackagePayment.getCoursePackageId().equals(tCoursePackage.getId())) {
//                    tCoursePackagePayment.setType(tCoursePackage.getType());
//                }
//            }
//        }
        List<Map<String, Object>> mapList = new ArrayList<>();
@@ -2746,7 +2638,7 @@
            map.put("name", tCoursePackageType.getName());
            int a = 0;
            for (TCoursePackagePayment tCoursePackagePayment : list1) {
                if (tCoursePackagePayment.getType().equals(tCoursePackageType.getId())) {
                if (null != tCoursePackagePayment.getType() && tCoursePackagePayment.getType().equals(tCoursePackageType.getId())) {
                    a += tCoursePackagePayment.getLaveClassHours();
                }
            }
@@ -3031,10 +2923,7 @@
        weekData.add(count2);
        weekData.add(count1);
        weekData.add(count);
        map.put("weekData", weekData);
        LocalDateTime currentDateTime = LocalDateTime.now();
        List<Integer> amountByDay = new ArrayList<>(Collections.nCopies(7, 0));
        for (CoursePackageStudent coursePackageStudent : list) {
@@ -3209,4 +3098,21 @@
        return map;
    }
    @ResponseBody
    @PostMapping("/coursePackagePayment/queryPaymentCoursePackage")
    public List<Integer> queryPaymentCoursePackage(@RequestBody List<Integer> storeIds){
        if(storeIds.size() == 0){
            return new ArrayList<>();
        }
        List<TCoursePackage> list = coursePackageService.list(new QueryWrapper<TCoursePackage>().eq("auditStatus", 2)
                .ne("status", 4).eq("state", 1).in("storeId", storeIds));
        List<Integer> collect = list.stream().map(TCoursePackage::getId).collect(Collectors.toList());
        if(collect.size() == 0){
            return new ArrayList<>();
        }
        List<CoursePackageOrder> list1 = coursePackageOrderService.list(new QueryWrapper<CoursePackageOrder>().in("coursePackageId", collect).eq("payStatus", 2).eq("status", 1));
        return list1.stream().map(CoursePackageOrder::getAppUserId).collect(Collectors.toList());
    }
}