From 2747405034852bb757d678c4cd1e2cecbe9b0a92 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Wed, 19 Feb 2025 16:26:12 +0800 Subject: [PATCH] 1 --- .../mapper/DlDriveSchoolStudentMapper.java | 11 ++++ .../yudao/module/course/entity/Process.java | 4 ++ .../jx/mapper/DriveSchoolCarMapper.java | 11 ++++ .../controller/admin/TrainController.java | 65 +++++++++++++++++++ .../base/DlDriveSchoolStudentMapper.xml | 22 +++++++ .../mapper/jx/DriveSchoolCarMapper.xml | 3 + 6 files changed, 116 insertions(+) diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolStudentMapper.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolStudentMapper.java index 0c8b320d..c4c57770 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolStudentMapper.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolStudentMapper.java @@ -76,5 +76,16 @@ public interface DlDriveSchoolStudentMapper extends BaseMapper selectStudentListCoach(@Param("coachId")Long coachId, @Param("startTime") String startTime, @Param("endTime")String endTime); + /** + * app首页查询训练学员---指定条件下 + * @author vinjor-M + * @date 15:53 2025/2/19 + * @param coachId 教练ID + * @param startTime 开始时间 + * @param endTime 截止时间 + * @return java.util.List + **/ + IPage selectTrainStudent(@Param("coachId")Long coachId, @Param("startTime") String startTime, @Param("endTime")String endTime, Page page); + } \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/entity/Process.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/entity/Process.java index 735b7812..d3d20724 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/entity/Process.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/entity/Process.java @@ -99,5 +99,9 @@ public class Process extends TenantBaseDO { * 财务审核备注 */ private String financeRemark; + /** + * 课程类型(字典:course_type) + */ + private String courseType; } \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/mapper/DriveSchoolCarMapper.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/mapper/DriveSchoolCarMapper.java index 12bf7af6..a5c3b02b 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/mapper/DriveSchoolCarMapper.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/mapper/DriveSchoolCarMapper.java @@ -44,4 +44,15 @@ public interface DriveSchoolCarMapper extends BaseMapper public int deleteDriveSchoolCarByIds(Long[] ids); DriveSchoolCar selectByCarNo(String carNo); + + /** + * app首页查询训练车辆---指定条件下 + * @author vinjor-M + * @date 15:53 2025/2/19 + * @param coachId 教练ID + * @param startTime 开始时间 + * @param endTime 截止时间 + * @return java.util.List + **/ + IPage selectTrainCar(@Param("coachId")Long coachId, @Param("startTime") String startTime, @Param("endTime")String endTime, Page page); } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/train/controller/admin/TrainController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/train/controller/admin/TrainController.java index c78dace4..a5c4087b 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/train/controller/admin/TrainController.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/train/controller/admin/TrainController.java @@ -1,7 +1,13 @@ package cn.iocoder.yudao.module.train.controller.admin; +import cn.hutool.core.date.DateUtil; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolStudent; +import cn.iocoder.yudao.module.base.mapper.DlDriveSchoolStudentMapper; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolStudentVO; +import cn.iocoder.yudao.module.course.service.ProcessService; +import cn.iocoder.yudao.module.jx.mapper.DriveSchoolCarMapper; import cn.iocoder.yudao.module.train.service.TrainService; import cn.iocoder.yudao.module.train.vo.TrainVO; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -9,6 +15,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import org.apache.commons.lang3.StringUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -24,6 +31,12 @@ public class TrainController { @Resource private TrainService trainService; + @Resource + private ProcessService processService; + @Resource + private DlDriveSchoolStudentMapper studentMapper; + @Resource + private DriveSchoolCarMapper carMapper; @GetMapping("/page") @@ -64,4 +77,56 @@ public class TrainController { } + /** + * 首页数据统计查询接口 -- + * @author vinjor-M + * @date 14:12 2025/2/14 + * @param type 查询类型(car-训练车辆|student-训练学生) + * @param timeType 时间查询类型(all-全部|day-当日|month-当月|more-自定义) + * @param coachId 教练id + * @param startTime 查询时间范围--开始 + * @param endTime 查询时间范围--结束 + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult + **/ + @GetMapping("/indexGetTrainList") + @Operation(summary = "首页数据统计查询接口") + public CommonResult> indexGetTrainList(@RequestParam(value = "type") String type, + @RequestParam(value = "timeType") String timeType, + @RequestParam(value = "coachId",required = false) Long coachId, + @RequestParam(value = "startTime",required = false) String startTime, + @RequestParam(value = "endTime",required = false) String endTime, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + //默认查全部数据 + String startTimeStr = ""; + String endTimeStr = ""; + if("more".equals(timeType)){ + if(StringUtils.isNotEmpty(startTime)){ + startTimeStr = startTime+" 00:00:01"; + } + if(StringUtils.isNotEmpty(endTime)) { + endTimeStr = endTime + " 23:59:59"; + } + }else if("month".equals(timeType)){ + //当月 + startTimeStr = DateUtil.format(DateUtil.beginOfMonth(DateUtil.date()),"yyyy-MM-dd")+" 00:00:01"; + endTimeStr = DateUtil.format(DateUtil.endOfMonth(DateUtil.date()),"yyyy-MM-dd")+" 23:59:59"; + }else if("day".equals(timeType)){ + //当天 + startTimeStr = DateUtil.formatDate(DateUtil.date())+" 00:00:01"; + endTimeStr = DateUtil.formatDate(DateUtil.date())+" 23:59:59"; + } + if("car".equals(type)){ + Page page = new Page<>(pageNo,pageSize); + IPage studentPage = studentMapper.selectTrainStudent(coachId,startTimeStr,endTimeStr,page); + studentPage.getRecords().forEach(item->{ + //查每个学生的当前所处的科目 + item.setProcess(processService.selectByUserId(item.getUserId(),item.getCoachId())); + }); + return success(studentPage); + }else if("student".equals(type)){ +// return success(trainService.indexGetTrainList(type,timeType,coachId,startTimeStr,endTimeStr)); + } + return success(null); + } } \ No newline at end of file diff --git a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml index b0168fb6..ed6a4fb9 100644 --- a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml @@ -122,4 +122,26 @@ GROUP BY dss.id + \ No newline at end of file diff --git a/dl-module-jx/src/main/resources/mapper/jx/DriveSchoolCarMapper.xml b/dl-module-jx/src/main/resources/mapper/jx/DriveSchoolCarMapper.xml index 693dc226..03e7a038 100644 --- a/dl-module-jx/src/main/resources/mapper/jx/DriveSchoolCarMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/jx/DriveSchoolCarMapper.xml @@ -97,6 +97,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where deleted = 0 and car_no = #{carNo} +