diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/app/ObtainDriveContractController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/app/ObtainDriveContractController.java index dc72cd24..fcc8e41d 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/app/ObtainDriveContractController.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/app/ObtainDriveContractController.java @@ -34,6 +34,7 @@ public class ObtainDriveContractController { * 新增驾校合同 */ @PostMapping + @TenantIgnore public CommonResult add(@RequestBody DriveSchoolContract driveSchoolContract) { return CommonResult.success(driveSchoolContractService.insertDriveSchoolContractNew(driveSchoolContract)); diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/controller/app/ProcessSmallProgramController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/controller/app/ProcessSmallProgramController.java new file mode 100644 index 00000000..cd5918e1 --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/controller/app/ProcessSmallProgramController.java @@ -0,0 +1,62 @@ +package cn.iocoder.yudao.module.course.controller.app; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore; +import cn.iocoder.yudao.module.course.entity.Process; +import cn.iocoder.yudao.module.course.service.ProcessService; +import cn.iocoder.yudao.module.course.vo.ProcessVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "学员课程进度") +@RestController +@RequestMapping("/process") +@Validated +public class ProcessSmallProgramController { + + @Resource + private ProcessService processService; + + + /** + * 学员课程进度分页查询 + * + * @param pageReqVO {@link ProcessVO} + * @param pageNo 分页参数 + * @param pageSize 分页参数 + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult> + * @author PQZ + * @date 15:33 2025/2/17 + **/ + @GetMapping("/page") + @Operation(summary = "学员课程进度分页") + @TenantIgnore + public CommonResult> getDlDriveSchoolCoachPage(ProcessVO pageReqVO, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + Page page = new Page<>(pageNo, pageSize); + return success(processService.pageProcess(page, pageReqVO)); + } + + /** + * 修改学员课程进度 + * + * @param process {@link Process} + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult + */ + @PutMapping("/updateProcess") + @Operation(summary = "修改学员课程进度") + @TenantIgnore + public CommonResult updateProcess(@RequestBody Process process) { + processService.updateProcess(process); + return CommonResult.ok(); + } +} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/ProcessService.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/ProcessService.java index 6fe25d8b..cdde8725 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/ProcessService.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/ProcessService.java @@ -106,4 +106,9 @@ public interface ProcessService extends IService { * @param processes {@link Process} */ void saveProcess(ProcessAddVO request); + + /** + * 修改学院课程进度 + */ + void updateProcess(Process process); } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/impl/ProcessServiceImpl.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/impl/ProcessServiceImpl.java index b5a9482b..ddd493b9 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/impl/ProcessServiceImpl.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/course/service/impl/ProcessServiceImpl.java @@ -21,6 +21,8 @@ import cn.iocoder.yudao.module.payment.service.IFzRecordService; import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -294,6 +296,24 @@ public class ProcessServiceImpl extends ServiceImpl impl } + @Override + public void updateProcess(Process process) { + + update(Wrappers.lambdaUpdate(Process.class) + .eq(Process::getUserId, process.getUserId()) + .eq(Process::getSubject, process.getSubject()) + .eq(Process::getCourseId, process.getCourseId()) + .eq(Process::getDeleted, false) + .set(process.getUserName() != null, Process::getUserName, process.getUserName()) + .set(process.getExamStatus() != null, Process::getExamStatus, process.getExamStatus()) + .set(process.getExamScore() != null, Process::getExamScore, process.getExamScore()) + + .set(process.getRemark() != null, Process::getRemark, process.getRemark()) + .set(process.getExamTime() != null, Process::getExamTime, process.getExamTime()) + .set(process.getImages() != null, Process::getImages, process.getImages())); + + } + private static void verify(List processes) { for (Process process : processes) { // 校验状态 @@ -328,4 +348,4 @@ public class ProcessServiceImpl extends ServiceImpl impl } } -} \ No newline at end of file +} diff --git a/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml b/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml index e305fba4..e54808da 100644 --- a/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml @@ -51,6 +51,7 @@ and dsp.user_name like concat('%', #{entity.userName}, '%') and dsp.name like concat('%', #{entity.courseName}, '%') and dsp.user_id = #{entity.userId} + and dsp.course_id = #{entity.courseId} order by dsp.create_time desc diff --git a/dl-module-jx/src/main/resources/mapper/course/SchoolCourseOrderMapper.xml b/dl-module-jx/src/main/resources/mapper/course/SchoolCourseOrderMapper.xml index 4179cde8..041f85ca 100644 --- a/dl-module-jx/src/main/resources/mapper/course/SchoolCourseOrderMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/course/SchoolCourseOrderMapper.xml @@ -20,6 +20,7 @@ and main.user_name like concat('%', #{entity.userName}, '%') and main.user_id = #{entity.userId} and main.payment_status = #{entity.paymentStatus} + and main.if_end = #{entity.ifEnd}