From 1370d46d24c8ab9b6dc27305a17661ee6a706b60 Mon Sep 17 00:00:00 2001 From: lisy <linlangsur163@163.com> Date: 星期三, 05 七月 2023 15:17:14 +0800 Subject: [PATCH] account模块:教练实体类、课时续课详情 --- cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 135 ++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 121 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 6ba4f0a..9ecf7ad 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 @@ -3,17 +3,24 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.course.entity.TCoursePackage; +import com.dsh.course.entity.TCoursePackageDiscount; import com.dsh.course.entity.TCoursePackagePayment; import com.dsh.course.feignclient.model.*; +import com.dsh.course.model.dto.DiscountJsonDto; +import com.dsh.course.service.TCoursePackageDiscountService; import com.dsh.course.service.TCoursePackagePaymentService; import com.dsh.course.service.TCoursePackageService; import com.dsh.course.util.DateUtil; +import com.dsh.course.util.StrUtils; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import io.swagger.annotations.Api; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; @@ -35,6 +42,9 @@ @Autowired private TCoursePackageService tcpService; + @Autowired + private TCoursePackageDiscountService tcpdService; + private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm"); /** @@ -42,10 +52,10 @@ * @param stuId 学员id * @return 课包列表 */ - @PostMapping("/coursePack/queryPayment") - public List<StuCourseResp> getStuCoursePackagePayment(@RequestBody Integer stuId,@RequestBody Integer appUserId){ + @PostMapping("/base/coursePack/queryPayment") + public List<StuCourseResp> getStuCoursePackagePayment(@RequestParam("stuId") Integer stuId,@RequestParam("appUserId") Integer appUserId){ List<StuCourseResp> resps = new ArrayList<>(); - List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,stuId,appUserId); + List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,null,stuId,appUserId); if (byUserId.size() > 0 ){ for (TCoursePackagePayment tCoursePackagePayment : byUserId) { TCoursePackage tCoursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId()); @@ -65,7 +75,7 @@ * * 获取发布的 课包列表 */ - @PostMapping("/coursePack/storeOfCourse") + @PostMapping("/base/coursePack/storeOfCourse") public List<CourseOfStoreVo> getStuCourseWithStores(){ List<CourseOfStoreVo> courseOfStoreVos = tcpService.queryStoreOfCourse(); if (courseOfStoreVos.size() > 0){ @@ -87,10 +97,10 @@ * * 课程名称列表 */ - @PostMapping("/coursePack/sessionNames") - public List<StuSessionDetailsVo> getStuSessionList(@RequestBody Date startTime, @RequestBody Date endTime, @RequestBody Integer stuId, @RequestBody Integer appUserId){ + @PostMapping("/base/coursePack/sessionNames") + public List<StuSessionDetailsVo> getStuSessionList(@RequestParam("startTime") Date startTime, @RequestParam("endTime") Date endTime, @RequestParam("stuId") Integer stuId, @RequestParam("appUserId") Integer appUserId){ List<StuSessionDetailsVo> detailsVos = new ArrayList<>(); - List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(startTime,endTime,stuId,appUserId); + List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(startTime,endTime,null,stuId,appUserId); if (byUserId.size() > 0){ List<Integer> collect = byUserId.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList()); List<TCoursePackage> list = tcpService.list(new QueryWrapper<TCoursePackage>() @@ -107,10 +117,10 @@ return detailsVos; } - @PostMapping("/coursePack/paymentCourse") - public List<PurchaseRecordVo> queryCourseDetails(@RequestBody Date startTime, @RequestBody Date endTime,@RequestBody Integer stuId, @RequestBody Integer appUserId) { + @PostMapping("/base/coursePack/paymentCourse") + public List<PurchaseRecordVo> queryCourseDetails(@RequestParam("startTime") Date startTime, @RequestParam("endTime") Date endTime,@RequestParam("stuId") Integer stuId, @RequestParam("appUserId") Integer appUserId) { List<PurchaseRecordVo> purchaseRecordVos = new ArrayList<>(); - List<TCoursePackagePayment> coursePackage = packagePaymentService.queryAllCoursePackage(startTime,endTime,stuId, appUserId); + List<TCoursePackagePayment> coursePackage = packagePaymentService.queryAllCoursePackage(startTime,endTime,null,stuId, appUserId); if (coursePackage.size() > 0 ){ coursePackage.forEach( cspackage -> { PurchaseRecordVo recordVo = new PurchaseRecordVo(); @@ -125,16 +135,15 @@ - @PostMapping("/coursePack/stuOfCourses") - public StuWithCoursesListVo getStuOfCoursesDetails(@RequestBody Integer stuId, @RequestBody Integer appUserId){ + @PostMapping("/base/coursePack/stuOfCourses") + public StuWithCoursesListVo getStuOfCoursesDetails(@RequestParam("stuId") Integer stuId, @RequestParam("appUserId") Integer appUserId){ StuWithCoursesListVo lisco = new StuWithCoursesListVo(); Integer totalNu = 0; Integer dedutNu = 0; Integer remainNu = 0; - List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,stuId,appUserId); + List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,null,stuId,appUserId); if (byUserId.size() > 0 ){ for (TCoursePackagePayment tCoursePackagePayment : byUserId) { - StuWithCoursesListVo resp = new StuWithCoursesListVo(); totalNu = totalNu + tCoursePackagePayment.getTotalClassHours(); dedutNu = dedutNu + tCoursePackagePayment.getLaveClassHours(); remainNu = remainNu + (tCoursePackagePayment.getTotalClassHours()-tCoursePackagePayment.getLaveClassHours()); @@ -146,4 +155,102 @@ return lisco; } + + + @PostMapping("/base/coursePack/continuingCourse") + public StudentOfCourseVo getStudentCourse(@RequestParam("courseId") Integer courseId,@RequestParam("stuId") Integer stuId,@RequestParam("appUserId") Integer appUserId){ + StudentOfCourseVo courseVo = new StudentOfCourseVo(); + List<TCoursePackagePayment> tCoursePackagePayments = packagePaymentService.queryAllCoursePackage(null,null,courseId,stuId,appUserId); + if (tCoursePackagePayments.size() > 0 ){ + + List<CourseHoursType> typeList = new ArrayList<>(); + tCoursePackagePayments.forEach(cou -> { + CourseHoursType hoursType = new CourseHoursType(); + hoursType.setCourseConfigId(cou.getId()); + hoursType.setCourseHourNums(cou.getClassHours()); + typeList.add(hoursType); + }); + 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()); + courseVo.setCoachId(coursePackage.getCoachId()); + String classWeeks = coursePackage.getClassWeeks(); + List<Integer> integers = StrUtils.dealStrToList(classWeeks); + if (integers.size() > 0){ + StringBuilder courWeeks = new StringBuilder("每"); + for (Integer integer : integers) { + switch (integer){ + case 1: + courWeeks.append("周一、"); + break; + case 2: + courWeeks.append("周二、"); + break; + case 3: + courWeeks.append("周三、"); + break; + case 4: + courWeeks.append("周四、"); + break; + case 5: + courWeeks.append("周五、"); + break; + case 6: + courWeeks.append("周六、"); + break; + case 7: + courWeeks.append("周末、"); + break; + default: + break; + } + } + if (courWeeks.length() > 0 && courWeeks.charAt(courWeeks.length() - 1) == ','){ + courWeeks.deleteCharAt(courWeeks.length() - 1); + } + courseVo.setCourseWeek(courWeeks.toString()); + } + + courseVo.setCourseTime(coursePackage.getClassStartTime()+"-"+coursePackage.getClassEndTime()); + String payType = tCoursePackagePayment.getPayType(); + BigDecimal cashPayment = tCoursePackagePayment.getCashPayment(); + double cashPaymentValue = cashPayment.doubleValue(); + Integer playPaiCoin = tCoursePackagePayment.getPlayPaiCoin(); + TCoursePackageDiscount coursePackageDiscount = tcpdService.getOne(new QueryWrapper<TCoursePackageDiscount>() + .eq("coursePackageId",coursePackage.getId() ) + .eq("type",1) + .eq("auditStatus",2)); + ObjectMapper objectMapper = new ObjectMapper(); + String content = coursePackageDiscount.getContent(); + double discountMember = 0.0; + DiscountJsonDto discountJsonDto = null; + try { + discountJsonDto = objectMapper.readValue(content, DiscountJsonDto.class); + discountMember = discountJsonDto.getDiscountMember(); + } catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + switch (payType) { + case "1;2": + courseVo.setAmount(cashPaymentValue); + courseVo.setVipAmount(discountMember); + courseVo.setWpGold(playPaiCoin); + break; + case "1": + courseVo.setAmount(cashPaymentValue); + courseVo.setVipAmount(discountMember); + break; + case "2": + courseVo.setWpGold(playPaiCoin); + break; + } + courseVo.setStoreId(coursePackage.getStoreId()); + } + + return courseVo; + } } -- Gitblit v1.7.1