From e8e73529983bf656d8aa6627215045f56cc27103 Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期一, 24 二月 2025 11:01:00 +0800 Subject: [PATCH] Merge branch 'dev' into dev_ly --- cnas-personnel/src/main/java/com/ruoyi/personnel/controller/PersonTrainingController.java | 246 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 246 insertions(+), 0 deletions(-) diff --git a/cnas-personnel/src/main/java/com/ruoyi/personnel/controller/PersonTrainingController.java b/cnas-personnel/src/main/java/com/ruoyi/personnel/controller/PersonTrainingController.java new file mode 100644 index 0000000..203d834 --- /dev/null +++ b/cnas-personnel/src/main/java/com/ruoyi/personnel/controller/PersonTrainingController.java @@ -0,0 +1,246 @@ +package com.ruoyi.personnel.controller; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.domain.Result; +import com.ruoyi.common.numgen.NumberGenerator; +import com.ruoyi.personnel.dto.PersonTrainingDetailedDto; +import com.ruoyi.personnel.dto.PersonTrainingDto; +import com.ruoyi.personnel.dto.PersonTrainingRecordDto; +import com.ruoyi.personnel.dto.PersonTrainingRecordSubmitDto; +import com.ruoyi.personnel.mapper.PersonTrainingDetailedFileMapper; +import com.ruoyi.personnel.pojo.PersonTraining; +import com.ruoyi.personnel.pojo.PersonTrainingDetailed; +import com.ruoyi.personnel.pojo.PersonTrainingDetailedFile; +import com.ruoyi.personnel.pojo.PersonTrainingRecord; +import com.ruoyi.personnel.service.PersonTrainingDetailedService; +import com.ruoyi.personnel.service.PersonTrainingRecordService; +import com.ruoyi.personnel.service.PersonTrainingService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * <p> + * 鍩硅璁″垝 鍓嶇鎺у埗鍣� + * </p> + * + * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃 + * @since 2024-10-11 01:11:49 + */ +@Api(tags = "浜哄憳 - 鍩硅璁″垝") +@RestController +@RequestMapping("/personTraining") +public class PersonTrainingController { + + @Autowired + private PersonTrainingService personTrainingService; + + @Autowired + private PersonTrainingDetailedService personTrainingDetailedService; + + @Autowired + private PersonTrainingRecordService personTrainingRecordService; + + @Autowired + private PersonTrainingDetailedFileMapper personTrainingDetailedFileMapper; + + @Autowired + private NumberGenerator<PersonTrainingDetailed> numberGenerator; + + @ApiOperation(value = "鍩硅璁″垝 瀵煎叆") + @PostMapping("personTrainingImport") + public Result<?> personTrainingImport(@RequestPart("file") MultipartFile file, PersonTraining training) { + personTrainingService.personTrainingImport(file, training); + return Result.success(); + } + + @ApiOperation(value = "鍩硅璁″垝 鍒犻櫎") + @DeleteMapping("personTrainingDelete") + public Result<?> personTrainingDelete(@RequestParam("id") Integer id) { + personTrainingService.personTrainingDelete(id); + return Result.success(); + } + + @ApiOperation(value = "鍩硅璁″垝 鏌ヨ") + @GetMapping("personTrainingSelect") + public Result<IPage<PersonTrainingDto>> personTrainingSelect(Page page, String compilerName, String departmentId) { + IPage<PersonTrainingDto> iPage = personTrainingService.personTrainingSelect(page, compilerName, departmentId); + return Result.success(iPage); + } + + @ApiOperation(value = "骞村害鍩硅璁″垝 瀹℃牳") + @PostMapping("reviewAnnualPersonnelTraining") + public Result<?> reviewAnnualPersonnelTraining(@RequestBody PersonTraining training) { + personTrainingService.reviewAnnualPersonnelTraining(training); + return Result.success(); + } + + @ApiOperation(value = "鍩硅璁″垝 鎵瑰噯") + @PostMapping("approveAnnualPersonnelTraining") + public Result<?> approveAnnualPersonnelTraining(@RequestBody PersonTraining training) { + personTrainingService.approveAnnualPersonnelTraining(training); + return Result.success(); + } + + + @ApiOperation(value = "骞村害璁″垝鏄庣粏琛� 鏂板/缂栬緫") + @PostMapping("addOrUpdatePersonTrainingDetailed") + public Result<?> addOrUpdatePersonTrainingDetailed(@RequestBody PersonTrainingDetailed personTrainingDetailed) { + if (ObjectUtils.isEmpty(personTrainingDetailed.getId())) { + personTrainingDetailed.setState(3); + } + personTrainingDetailedService.saveOrUpdate(personTrainingDetailed); + return Result.success(); + } + + + @ApiOperation(value = "骞村害璁″垝鏄庣粏琛� 鎵归噺鍒犻櫎") + @DeleteMapping("deleteAnnualPlanDetailTable") + public Result<?> deleteAnnualPlanDetailTable(String ids) { + personTrainingDetailedService.deleteAnnualPlanDetailTable(ids); + return Result.success(); + } + + + @ApiOperation(value = "骞村害璁″垝鏄庣粏琛� 鏌ヨ") + @GetMapping("queryTheAnnualPlanDetailsTable") + public Result<IPage<PersonTrainingDetailedDto>> queryTheAnnualPlanDetailsTable(Page page, + String trainingLecturerName, String courseCode, + String trainingDate, Integer id, Integer userId) { + IPage<PersonTrainingDetailedDto> iPage = personTrainingDetailedService.queryTheAnnualPlanDetailsTable(page, + trainingLecturerName, courseCode, trainingDate, id, userId); + return Result.success(iPage); + } + + + @ApiOperation(value = "鍩硅涓庤�冩牳璁板綍 鏌ヨ") + @GetMapping("trainingAndAssessmentRecordsPage") + public Result<List<PersonTrainingRecordDto>> trainingAndAssessmentRecordsPage(Integer trainingDetailedId, + String userName) { + List<PersonTrainingRecordDto> list = personTrainingRecordService.trainingAndAssessmentRecordsPage(trainingDetailedId, userName); + return Result.success(list); + } + + + @ApiOperation(value = "鍩硅涓庤�冩牳璁板綍 鏂板浜哄憳") + @PostMapping("newPersonnelAddedToTrainingRecords") + public Result<?> newPersonnelAddedToTrainingRecords(@RequestBody List<PersonTrainingRecord> personTrainingRecord) { + personTrainingRecordService.saveBatch(personTrainingRecord); + return Result.success(); + } + + + @ApiOperation(value = "鍩硅涓庤�冩牳璁板綍 璁ら") + @PostMapping("claimOfTrainingAndAssessmentRecords") + public Result<?> claimOfTrainingAndAssessmentRecords(@RequestParam("claimAndClaim") Boolean claimAndClaim, + @RequestParam("courseId") Integer courseId) { + personTrainingRecordService.claimOfTrainingAndAssessmentRecords(claimAndClaim, courseId); + return Result.success(); + } + + + @ApiOperation(value = "鍩硅涓庤�冩牳璁板綍 鎻愪氦/鎾ら攢") + @PostMapping("trainingAndAssessmentRecordsAdded") + public Result<?> trainingAndAssessmentRecordsAdded(@RequestBody PersonTrainingRecordSubmitDto personTrainingRecordSubmitDto) { + personTrainingRecordService.trainingAndAssessmentRecordsAdded(personTrainingRecordSubmitDto); + return Result.success(); + } + + @ApiOperation(value = "鍩硅涓庤�冩牳璁板綍 璇勪环") + @PostMapping("trainingAndAssessmentRecordsEvaluate") + public Result<?> trainingAndAssessmentRecordsEvaluate(@RequestBody PersonTrainingRecordSubmitDto personTrainingRecordSubmitDto) { + personTrainingDetailedService.update(Wrappers.<PersonTrainingDetailed>lambdaUpdate() + .eq(PersonTrainingDetailed::getId, personTrainingRecordSubmitDto.getTrainingDetailedId()) + .set(PersonTrainingDetailed::getComprehensiveAssessment, personTrainingRecordSubmitDto.getComprehensiveAssessment()) + .set(PersonTrainingDetailed::getAssessmentDate, personTrainingRecordSubmitDto.getAssessmentDate()) + .set(PersonTrainingDetailed::getState, personTrainingRecordSubmitDto.getState())); + return Result.success(); + } + + + @ApiOperation(value = "鍩硅涓庤�冩牳璁板綍 鍒犻櫎") + @DeleteMapping("deleteTrainingAndAssessmentRecords") + public Result<?> deleteTrainingAndAssessmentRecords(String ids) { + personTrainingRecordService.deleteTrainingAndAssessmentRecords(ids); + return Result.success(); + } + + @PostMapping("outOfFocusPreservation") + public Result<?> outOfFocusPreservation(@RequestBody PersonTrainingRecord personTrainingRecord) { + personTrainingRecordService.updateById(personTrainingRecord); + return Result.success(); + } + + /** + * 瀵煎嚭浜哄憳鍩硅璁″垝 + * @return + */ + + @ApiOperation(value = "瀵煎嚭浜哄憳鍩硅璁″垝") + @GetMapping("/exportPersonTraining") + public void exportPersonTraining(Integer id, HttpServletResponse response){ + personTrainingService.exportPersonTraining(id, response); + } + + /** + * 瀵煎嚭浜哄憳鍩硅涓庤�冩牳璁板綍 + * @return + */ + @ApiOperation(value = "瀵煎嚭浜哄憳鍩硅涓庤�冩牳璁板綍") + @GetMapping("/exportPersonTrainingRecord") + public void exportPersonTrainingRecord(Integer id, HttpServletResponse response){ + personTrainingService.exportPersonTrainingRecord(id, response); + } + + /** + * 浜哄憳鍩硅璇︽儏闄勪欢鏂板 + * @param trainingDetailedId + * @param file + * @return + */ + @ApiOperation(value = "浜哄憳鍩硅璇︽儏闄勪欢鏂板") + @PostMapping("/uploadTrainingDetailedFile") + public Result<?> uploadTrainingDetailedFile(Integer trainingDetailedId, MultipartFile file) { + return Result.success(personTrainingService.uploadTrainingDetailedFile(trainingDetailedId, file)); + } + + + /** + * 浜哄憳鍩硅璇︽儏闄勪欢鍒楄〃 + * @return + */ + @ApiOperation(value = "浜哄憳鍩硅璇︽儏闄勪欢鍒楄〃") + @GetMapping("/getTrainingDetailedFileList") + public Result<List<PersonTrainingDetailedFile>> getTrainingDetailedFileList(Integer trainingDetailedId){ + return Result.success(personTrainingDetailedFileMapper.selectList(Wrappers.<PersonTrainingDetailedFile>lambdaQuery() + .eq(PersonTrainingDetailedFile::getTrainingDetailedId, trainingDetailedId))); + } + + /** + * 浜哄憳鍩硅璇︽儏闄勪欢鍒犻櫎 + * @return + */ + @ApiOperation(value = "浜哄憳鍩硅璇︽儏闄勪欢鍒犻櫎") + @DeleteMapping("/delTrainingDetailedFileList") + public Result delTrainingDetailedFileList(Integer detailedFileId){ + return Result.success(personTrainingDetailedFileMapper.deleteById(detailedFileId)); + } + + /** + * 鏌ヨ浠婂勾浜哄憳鍩硅淇℃伅 + * @return + */ + @ApiOperation(value = "鏌ヨ浠婂勾浜哄憳鍩硅淇℃伅") + @GetMapping("/getThisYearTrainingDetailed") + public Result<List<PersonTrainingDetailed>> getThisYearTrainingDetailed(){ + return Result.success(personTrainingService.getThisYearTrainingDetailed()); + } +} -- Gitblit v1.9.3