From ee9cb0da4a43bcf523ebb157678f64a2895fba1a Mon Sep 17 00:00:00 2001 From: nickchange <126672920+nickchange@users.noreply.github.com> Date: 星期二, 10 十月 2023 15:30:38 +0800 Subject: [PATCH] 10.10 --- cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java | 369 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 344 insertions(+), 25 deletions(-) diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java index 8433f71..ee637bb 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java +++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java @@ -1,6 +1,7 @@ package com.dsh.course.controller; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -9,6 +10,7 @@ import com.dsh.course.feignclient.account.AppUserClient; import com.dsh.course.feignclient.account.StudentClient; import com.dsh.course.feignclient.account.model.Student; +import com.dsh.course.mapper.CoursePackageSchedulingMapper; import com.dsh.course.model.dto.ToClassDto; import com.dsh.course.service.*; import com.dsh.course.util.ResultUtil; @@ -23,10 +25,9 @@ import javax.annotation.Resource; import javax.swing.text.html.parser.Entity; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; import java.util.stream.Collectors; @Api @@ -38,6 +39,54 @@ CoursePackageStudentService studentService ; @Autowired TCoursePackagePaymentService paymentService; + @Autowired + private CourseCounsumService counsumService; + + //获取退费记录 + @RequestMapping("/getRefund") + @ResponseBody + public List<MoneyBack> getRefund() { + // 查询已通过申请的退费记录 + return counsumService.getRefund(); + } + + + @Resource + private CoursePackageSchedulingMapper coursePackageSchedulingService; + + + + + @RequestMapping("/getStudentTotal") + @ResponseBody + public List<Map<String, Object>> get(@RequestBody StudentQeryDto studentQeryDto) { + System.out.println("-====studentQeryDto========="+studentQeryDto); + List<Map<String, Object>> pays = paymentService.getStudentTotal(studentQeryDto); + System.out.println("=========pays======"+pays); + + return pays; + + } + + + @RequestMapping("/bypac") + @ResponseBody + public List<Map<String, Object>> bypac(@RequestBody PacQueryDto pacQueryDto) { + + + + + + System.out.println("-====studentQeryDto========="+pacQueryDto); + List<Map<String, Object>> pays = paymentService.bypac(pacQueryDto); + System.out.println("=========pays======"+pays); + + return pays; + + } + + + //获取学员课时数信息 @RequestMapping("/getInfo") @ResponseBody @@ -159,7 +208,7 @@ List<TCoursePackage> list = packageService.list(new QueryWrapper<TCoursePackage>() .select("id", "name") .eq("storeId", storeId) - .eq("type","1") + .eq("type","1").ne("id",id) ); List<SelectDto> selectDtos = new ArrayList<>(); for (TCoursePackage t :list){ @@ -175,8 +224,7 @@ return selectDtos; } - @Autowired - private CourseCounsumService counsumService; + @RequestMapping("/queryCounsum") @ResponseBody public List<CourseCounsum> queryCounsum(@RequestBody ConsumeQuery consumeQuery){ @@ -373,23 +421,6 @@ counsumService.save(courseCounsum1); }else { - CourseCounsum courseCounsum = new CourseCounsum(); - courseCounsum.setInsertTime(new Date()); - courseCounsum.setReason("赠课"); - courseCounsum.setNum(orinPay.getLaveClassHours()); - courseCounsum.setChangeType(0); - courseCounsum.setPaymentId(orinPay.getId()); - counsumService.save(courseCounsum); - - - orinPay.setTotalClassHours(0); - orinPay.setLaveClassHours(0); - orinPay.setAppUserId(null); - orinPay.setStudentId(6); - paymentService.updateById(orinPay); - - - @@ -405,6 +436,28 @@ to.setStatus(1); to.setInsertTime(new Date()); paymentService.save(to); + + + + orinPay.setTotalClassHours(0); + orinPay.setLaveClassHours(0); + orinPay.setAppUserId(null); + orinPay.setStatus(6); + paymentService.updateById(orinPay); + + + + + CourseCounsum courseCounsum = new CourseCounsum(); + courseCounsum.setInsertTime(new Date()); + courseCounsum.setReason("赠课"); + courseCounsum.setNum(orinPay.getLaveClassHours()); + courseCounsum.setChangeType(0); + courseCounsum.setPaymentId(orinPay.getId()); + counsumService.save(courseCounsum); + + + CourseCounsum courseCounsum1 = new CourseCounsum(); @@ -451,6 +504,7 @@ payment.setLaveClassHours(laveClassHoursnew); payment.setTotalClassHours(totalClassHoursnew); payment.setAppUserId(null); + payment.setStatus(3); paymentService.updateById(payment); @@ -466,7 +520,126 @@ holi.setLaveClassHours(toHoliDto.getClassNum()); holi.setState(1); holi.setInsertTime(new Date()); + holi.setPayStatus(2); paymentService.save(holi); + + TCoursePackage tCoursePackage = packageService.getById(toHoliDto.getClassId()); + String classWeeks = tCoursePackage.getClassWeeks(); + List<Integer> week = week(classWeeks); + + 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"); + // 本周周几 + int i = DateUtil.dayOfWeek(new Date())-1; + for (Integer integer : week) { + if(integer<i){ + // 找下一周的时间 + Calendar instance = Calendar.getInstance(); + instance.add(Calendar.DATE,7-(i-integer)); + Date time = instance.getTime(); + + for (int i1 = 0; i1 < split.length; i1++) { + + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + try { + Date parse = format1.parse(format.format(time) + " " + split[i1]); + Date parse1 = format1.parse(format.format(time) + " " + split1[i1]); + coursePackageScheduling.setClassDate(parse); + coursePackageScheduling.setEndDate(parse1); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.insert(coursePackageScheduling); + + CoursePackageStudent student1 = new CoursePackageStudent(); + student1.setAppUserId(student.getAppUserId()); + student1.setStudentId(student.getId()); + student1.setCoursePackageId(tCoursePackage.getId()); + student1.setCoursePackagePaymentId(holi.getId()); + student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); + student1.setSignInOrNot(1); + student1.setReservationStatus(1); + student1.setInsertTime(new Date()); + studentService.save(student1); + } catch (ParseException e) { + e.printStackTrace(); + } + + } + + }else if(integer>i) { + Calendar instance = Calendar.getInstance(); + instance.add(Calendar.DATE,integer-i); + Date time1 = instance.getTime(); + List<Date> list = new ArrayList<>(); + list.add(time1); + instance.add(Calendar.DATE,7); + Date time2 = instance.getTime(); + list.add(time2); + for (Date time : list) { + for (int i1 = 0; i1 < split.length; i1++) { + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + try { + Date parse = format1.parse(format.format(time) + " " + split[i1]); + Date parse1 = format1.parse(format.format(time) + " " + split1[i1]); + coursePackageScheduling.setClassDate(parse); + coursePackageScheduling.setEndDate(parse1); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.insert(coursePackageScheduling); + + CoursePackageStudent student1 = new CoursePackageStudent(); + student1.setAppUserId(student.getAppUserId()); + student1.setStudentId(student.getId()); + student1.setCoursePackageId(tCoursePackage.getId()); + student1.setCoursePackagePaymentId(holi.getId()); + student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); + student1.setSignInOrNot(1); + student1.setReservationStatus(1); + student1.setInsertTime(new Date()); + studentService.save(student1); + } catch (ParseException e) { + e.printStackTrace(); + } + } + } + + }else { + Calendar instance = Calendar.getInstance(); + instance.add(Calendar.DATE,7); + Date time = instance.getTime(); + + for (int i1 = 0; i1 < split.length; i1++) { + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + try { + Date parse = format1.parse(format.format(time) + " " + split[i1]); + Date parse1 = format1.parse(format.format(time) + " " + split1[i1]); + coursePackageScheduling.setClassDate(parse); + coursePackageScheduling.setEndDate(parse1); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.insert(coursePackageScheduling); + + CoursePackageStudent student1 = new CoursePackageStudent(); + student1.setAppUserId(student.getAppUserId()); + student1.setStudentId(student.getId()); + student1.setCoursePackageId(tCoursePackage.getId()); + student1.setCoursePackagePaymentId(holi.getId()); + student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); + student1.setSignInOrNot(1); + student1.setReservationStatus(1); + student1.setInsertTime(new Date()); + studentService.save(student1); + } catch (ParseException e) { + e.printStackTrace(); + } + } + } + } + + + System.out.println("保存成功=============》="+holi); @@ -481,7 +654,36 @@ - + } + private List<Integer> week(String week){ + String[] split = week.split(";"); + ArrayList<Integer> integers = new ArrayList<>(); + for (String s : split) { + switch (s){ + case "周一": + integers.add(1); + break; + case "周二": + integers.add(2); + break; + case "周三": + integers.add(3); + break; + case "周四": + integers.add(4); + break; + case "周五": + integers.add(5); + break; + case "周六": + integers.add(6); + break; + case "周日": + integers.add(7); + break; + } + } + return integers; } @RequestMapping(value = "/toTrans",produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = "application/json;charset=UTF-8") @@ -528,10 +730,127 @@ holi.setLaveClassHours(laveClassHours); holi.setState(1); holi.setInsertTime(new Date()); + holi.setPayStatus(2); paymentService.save(holi); System.out.println("保存成功=============》="+holi); + TCoursePackage tCoursePackage = packageService.getById(toHoliDto.getClassId()); + String classWeeks = tCoursePackage.getClassWeeks(); + List<Integer> week = week(classWeeks); + + 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"); + // 本周周几 + int i = DateUtil.dayOfWeek(new Date())-1; + for (Integer integer : week) { + if(integer<i){ + // 找下一周的时间 + Calendar instance = Calendar.getInstance(); + instance.add(Calendar.DATE,7-(i-integer)); + Date time = instance.getTime(); + + for (int i1 = 0; i1 < split.length; i1++) { + + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + try { + Date parse = format1.parse(format.format(time) + " " + split[i1]); + Date parse1 = format1.parse(format.format(time) + " " + split1[i1]); + coursePackageScheduling.setClassDate(parse); + coursePackageScheduling.setEndDate(parse1); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.insert(coursePackageScheduling); + + CoursePackageStudent student1 = new CoursePackageStudent(); + student1.setAppUserId(student.getAppUserId()); + student1.setStudentId(student.getId()); + student1.setCoursePackageId(tCoursePackage.getId()); + student1.setCoursePackagePaymentId(holi.getId()); + student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); + student1.setSignInOrNot(1); + student1.setReservationStatus(1); + student1.setInsertTime(new Date()); + studentService.save(student1); + } catch (ParseException e) { + e.printStackTrace(); + } + + } + + }else if(integer>i) { + Calendar instance = Calendar.getInstance(); + instance.add(Calendar.DATE,integer-i); + Date time1 = instance.getTime(); + List<Date> list = new ArrayList<>(); + list.add(time1); + instance.add(Calendar.DATE,7); + Date time2 = instance.getTime(); + list.add(time2); + for (Date time : list) { + for (int i1 = 0; i1 < split.length; i1++) { + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + try { + Date parse = format1.parse(format.format(time) + " " + split[i1]); + Date parse1 = format1.parse(format.format(time) + " " + split1[i1]); + coursePackageScheduling.setClassDate(parse); + coursePackageScheduling.setEndDate(parse1); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.insert(coursePackageScheduling); + + CoursePackageStudent student1 = new CoursePackageStudent(); + student1.setAppUserId(student.getAppUserId()); + student1.setStudentId(student.getId()); + student1.setCoursePackageId(tCoursePackage.getId()); + student1.setCoursePackagePaymentId(holi.getId()); + student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); + student1.setSignInOrNot(1); + student1.setReservationStatus(1); + student1.setInsertTime(new Date()); + studentService.save(student1); + } catch (ParseException e) { + e.printStackTrace(); + } + } + } + + }else { + Calendar instance = Calendar.getInstance(); + instance.add(Calendar.DATE,7); + Date time = instance.getTime(); + + for (int i1 = 0; i1 < split.length; i1++) { + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + try { + Date parse = format1.parse(format.format(time) + " " + split[i1]); + Date parse1 = format1.parse(format.format(time) + " " + split1[i1]); + coursePackageScheduling.setClassDate(parse); + coursePackageScheduling.setEndDate(parse1); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.insert(coursePackageScheduling); + + CoursePackageStudent student1 = new CoursePackageStudent(); + student1.setAppUserId(student.getAppUserId()); + student1.setStudentId(student.getId()); + student1.setCoursePackageId(tCoursePackage.getId()); + student1.setCoursePackagePaymentId(holi.getId()); + student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); + student1.setSignInOrNot(1); + student1.setReservationStatus(1); + student1.setInsertTime(new Date()); + studentService.save(student1); + } catch (ParseException e) { + e.printStackTrace(); + } + } + } + } + + } -- Gitblit v1.7.1