From d0fe90adfae626158a431b038395caa908e48e8c Mon Sep 17 00:00:00 2001 From: java <linlangsur163@163.com> Date: 星期五, 30 六月 2023 11:34:05 +0800 Subject: [PATCH] 课程信息:课时详情的数据处理 --- cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 101 +++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 91 insertions(+), 10 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 b240beb..6ba4f0a 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 @@ -1,23 +1,24 @@ package com.dsh.course.controller; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.course.entity.TCoursePackage; import com.dsh.course.entity.TCoursePackagePayment; -import com.dsh.course.feignclient.model.CourseOfStoreVo; -import com.dsh.course.feignclient.model.StuCourseResp; +import com.dsh.course.feignclient.model.*; +import com.dsh.course.service.TCoursePackagePaymentService; import com.dsh.course.service.TCoursePackageService; -import com.dsh.course.servs.CoursePackagePaymentRepository; +import com.dsh.course.util.DateUtil; 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.CrossOrigin; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.stream.Collectors; @Api @CrossOrigin @@ -27,11 +28,14 @@ private Logger logger = LoggerFactory.getLogger("business-log"); + @Autowired - private CoursePackagePaymentRepository coursePackagePaymentRepository; + private TCoursePackagePaymentService packagePaymentService; @Autowired private TCoursePackageService tcpService; + + private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm"); /** * 获取 没有学员信息的图片配置 @@ -39,9 +43,9 @@ * @return 课包列表 */ @PostMapping("/coursePack/queryPayment") - public List<StuCourseResp> getStuCoursePackagePayment(Integer stuId){ + public List<StuCourseResp> getStuCoursePackagePayment(@RequestBody Integer stuId,@RequestBody Integer appUserId){ List<StuCourseResp> resps = new ArrayList<>(); - List<TCoursePackagePayment> byUserId = coursePackagePaymentRepository.findByUserId(stuId); + List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,stuId,appUserId); if (byUserId.size() > 0 ){ for (TCoursePackagePayment tCoursePackagePayment : byUserId) { TCoursePackage tCoursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId()); @@ -51,6 +55,7 @@ resp.setTotalCourseNums(tCoursePackagePayment.getTotalClassHours()); resp.setResidueNums(tCoursePackagePayment.getLaveClassHours()); resp.setDeductionNums(tCoursePackagePayment.getTotalClassHours()-tCoursePackagePayment.getLaveClassHours()); + resps.add(resp); } } return resps; @@ -62,7 +67,83 @@ */ @PostMapping("/coursePack/storeOfCourse") public List<CourseOfStoreVo> getStuCourseWithStores(){ + List<CourseOfStoreVo> courseOfStoreVos = tcpService.queryStoreOfCourse(); + if (courseOfStoreVos.size() > 0){ + for (CourseOfStoreVo courseOfStoreVo : courseOfStoreVos) { + String[] split = courseOfStoreVo.getClassWeeks().split(";"); + List<Integer> integers = new ArrayList<>(); + for (String s : split) { + int num = Integer.parseInt(s); + integers.add(num); + } + courseOfStoreVo.setClassWeekList(integers); + } + } return tcpService.queryStoreOfCourse(); } + + /** + * + * 课程名称列表 + */ + @PostMapping("/coursePack/sessionNames") + public List<StuSessionDetailsVo> getStuSessionList(@RequestBody Date startTime, @RequestBody Date endTime, @RequestBody Integer stuId, @RequestBody Integer appUserId){ + List<StuSessionDetailsVo> detailsVos = new ArrayList<>(); + List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(startTime,endTime,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>() + .in("id", collect)); + list.forEach(vo -> { + StuSessionDetailsVo detVo = new StuSessionDetailsVo(); + detVo.setSessionid(vo.getId()); + detVo.setSessionName(vo.getName()); + String afterDayDate = DateUtil.getAfterDayDate2(vo.getInsertTime(),vo.getValidDays() + ""); + detVo.setPeriodOfValidity(afterDayDate); + detailsVos.add(detVo); + }); + } + return detailsVos; + } + + @PostMapping("/coursePack/paymentCourse") + public List<PurchaseRecordVo> queryCourseDetails(@RequestBody Date startTime, @RequestBody Date endTime,@RequestBody Integer stuId, @RequestBody Integer appUserId) { + List<PurchaseRecordVo> purchaseRecordVos = new ArrayList<>(); + List<TCoursePackagePayment> coursePackage = packagePaymentService.queryAllCoursePackage(startTime,endTime,stuId, appUserId); + if (coursePackage.size() > 0 ){ + coursePackage.forEach( cspackage -> { + PurchaseRecordVo recordVo = new PurchaseRecordVo(); + recordVo.setPurchaseAmount("+"+cspackage.getClassHours()); + recordVo.setPurchaseTime(format.format(cspackage.getInsertTime())); + recordVo.setPurchaseType("购买课包"); + purchaseRecordVos.add(recordVo); + }); + } + return purchaseRecordVos; + } + + + + @PostMapping("/coursePack/stuOfCourses") + public StuWithCoursesListVo getStuOfCoursesDetails(@RequestBody Integer stuId, @RequestBody Integer appUserId){ + StuWithCoursesListVo lisco = new StuWithCoursesListVo(); + Integer totalNu = 0; + Integer dedutNu = 0; + Integer remainNu = 0; + List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(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()); + } + lisco.setTotalNums(totalNu); + lisco.setDeductedNums(remainNu); + lisco.setRemainingNums(dedutNu); + } + return lisco; + } + } -- Gitblit v1.7.1