puzhibing
2023-12-04 2e2be7f7475b5e583b0cffd89c6d18db52c247a6
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -123,9 +123,9 @@
    @Override
    public List<CoursePackageListVo> queryCourseList(Integer uid, CoursePackageList coursePackageList) throws Exception {
        AppUser appUser = appUserClient.queryAppUser(uid);
        Map<String, String> geocode = gdMapGeocodingUtil.geocode(coursePackageList.getLon(), coursePackageList.getLat());
        String provinceCode = geocode.get("provinceCode");
        String cityCode = geocode.get("cityCode");
//        Map<String, String> geocode = gdMapGeocodingUtil.geocode(coursePackageList.getLon(), coursePackageList.getLat());
//        String provinceCode = geocode.get("provinceCode");
//        String cityCode = geocode.get("cityCode");
//        QueryWrapper<TCoursePackage> wrapper = new QueryWrapper<TCoursePackage>().in("status", Arrays.asList(1, 2))
//                .eq("auditStatus", 2).eq("state", 1).eq("provinceCode", provinceCode).eq("cityCode", cityCode);
@@ -581,7 +581,7 @@
     * @throws Exception
     */
    @Override
    public CoursePackageInfo queryCourseInfo(Integer uid, Integer id, String lon, String lat) throws Exception {
    public CoursePackageInfo queryCourseInfo(Integer uid, Integer id, String lon, String lat, Integer stuId) throws Exception {
        AppUser appUser = appUserClient.queryAppUser(uid);
        TCoursePackage coursePackage = this.getById(id);
        CoursePackageInfo coursePackageInfo = new CoursePackageInfo();
@@ -783,8 +783,13 @@
        });
        coursePackageInfo.setList(list);
        Student student = studentClient.queryDefaultStudent(uid);
        StudentVo studentVo = new StudentVo();
        Student student = null;
        if(null != stuId){
            student = studentClient.queryStudentById(stuId);
        }else{
            student = studentClient.queryDefaultStudent(uid);
        }
        if (null != student) {
            studentVo.setId(student.getId());
            studentVo.setPhone(student.getPhone());
@@ -808,7 +813,7 @@
    @Override
    public ResultUtil paymentCourse(Integer uid, PaymentCourseVo paymentCourseVo) throws Exception {
        AppUser appUser = appUserClient.queryAppUser(uid);
        CoursePackageInfo coursePackageInfo = queryCourseInfo(uid, paymentCourseVo.getId(), null, null);
        CoursePackageInfo coursePackageInfo = queryCourseInfo(uid, paymentCourseVo.getId(), null, null, null);
        //校验是否已经报满
        Integer integer = coursePackagePaymentService.queryCountNumber(paymentCourseVo.getId());
        TCoursePackage course = coursePackageService.getById(paymentCourseVo.getId());
@@ -1180,7 +1185,7 @@
                //增加学员课时有效期
                Student student = studentClient.queryStudentById(Integer.valueOf(id));
                CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getOne(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", id)
                        .eq("coursePackageId", coursePackageOrder.getCoursePackageId()).eq("status", 1).eq("state", 1));
                        .eq("coursePackageId", coursePackageOrder.getCoursePackageId()).eq("state", 1));
                if (null == coursePackageOrderStudent) {
                    coursePackageOrderStudent = new CoursePackageOrderStudent();
                    coursePackageOrderStudent.setAppUserId(coursePackageOrder.getAppUserId());
@@ -1212,10 +1217,31 @@
                    //开始排课
                    addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent, student.getValidity());
                    //课时记录
                    CourseCounsum courseCounsum = new CourseCounsum();
                    courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
                    courseCounsum.setChangeType(1);
                    courseCounsum.setNum(coursePackagePaymentConfig.getClassHours());
                    courseCounsum.setInsertTime(new Date());
                    courseCounsum.setReason("购买课包");
                    courseCounsumService.save(courseCounsum);
                    //账单记录
                    if(coursePackageOrder.getPayType() != 3){
                        CourseCounsum courseCounsum1 = new CourseCounsum();
                        courseCounsum1.setPaymentId(coursePackageOrder.getId());
                        courseCounsum1.setChangeType(3);
                        courseCounsum1.setInsertTime(new Date());
                        courseCounsum1.setReason("报名课程;"+coursePackageOrder.getCashPayment());
                        courseCounsum1.setAppUserId(coursePackageOrder.getAppUserId());
                        courseCounsumService.save(courseCounsum1);
                    }
                } else {
                    Date useTime = coursePackageOrderStudent.getUseTime();
                    coursePackageOrderStudent.setTotalClassHours(coursePackageOrderStudent.getTotalClassHours() + coursePackagePaymentConfig.getClassHours());
                    coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() + coursePackagePaymentConfig.getClassHours());
                    coursePackageOrderStudent.setStatus(1);
                    Integer validDays = coursePackage.getValidDays();
                    Calendar calendar = Calendar.getInstance();
                    calendar.setTime(useTime.compareTo(new Date()) < 0 ? new Date() : useTime);
@@ -1236,14 +1262,29 @@
                    if (useTime.compareTo(new Date()) < 0) {
                        addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent, student.getValidity());
                    }
                    //课时记录
                    CourseCounsum courseCounsum = new CourseCounsum();
                    courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
                    courseCounsum.setChangeType(1);
                    courseCounsum.setNum(coursePackagePaymentConfig.getClassHours());
                    courseCounsum.setInsertTime(new Date());
                    courseCounsum.setReason("续课");
                    courseCounsumService.save(courseCounsum);
                    //账单记录
                    if(coursePackageOrder.getPayType() != 3){
                        CourseCounsum courseCounsum1 = new CourseCounsum();
                        courseCounsum1.setPaymentId(coursePackageOrder.getId());
                        courseCounsum1.setChangeType(3);
                        courseCounsum1.setInsertTime(new Date());
                        courseCounsum1.setReason("续课;"+coursePackageOrder.getCashPayment());
                        courseCounsum1.setAppUserId(coursePackageOrder.getAppUserId());
                        courseCounsumService.save(courseCounsum1);
                    }
                }
                CourseCounsum courseCounsum = new CourseCounsum();
                courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
                courseCounsum.setChangeType(1);
                courseCounsum.setNum(coursePackagePaymentConfig.getClassHours());
                courseCounsum.setInsertTime(new Date());
                courseCounsum.setReason("购买课包");
                courseCounsumService.save(courseCounsum);
            }