| | |
| | | package com.ruoyi.safe.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | | import com.ruoyi.framework.aspectj.lang.annotation.Log; |
| | | import com.ruoyi.framework.aspectj.lang.enums.BusinessType; |
| | | import com.ruoyi.framework.web.domain.R; |
| | | import com.ruoyi.safe.dto.SafeTrainingDto; |
| | | import com.ruoyi.safe.pojo.SafeTraining; |
| | |
| | | @RequiredArgsConstructor |
| | | public class SafeTrainingController { |
| | | |
| | | private SafeTrainingService safeTrainingService; |
| | | private SafeTrainingDetailsService safeTrainingDetailsService; |
| | | private final SafeTrainingService safeTrainingService; |
| | | private final SafeTrainingDetailsService safeTrainingDetailsService; |
| | | |
| | | @GetMapping("/page") |
| | | @Operation(summary = "分页查询") |
| | | public R page(Page page, SafeTrainingDto safeTrainingDto) { |
| | | safeTrainingDto.setCurrentUserId(SecurityUtils.getUserId()); |
| | | return R.ok(safeTrainingService.pageSafeTraining(page, safeTrainingDto)); |
| | | } |
| | | |
| | | @Operation(summary = "新增/编辑安全培训考核") |
| | | @Log(title = "安全培训", businessType = BusinessType.INSERT) |
| | | @PostMapping() |
| | | public R addOrUpdate(@RequestBody SafeTraining safeTraining) { |
| | | return R.ok(safeTrainingService.addOrUpdate(safeTraining)); |
| | | } |
| | | |
| | | @Operation(summary = "签到") |
| | | @Log(title = "安全培训", businessType = BusinessType.INSERT) |
| | | @PostMapping ("/sign") |
| | | public R sign(@RequestBody SafeTrainingDetails safeTrainingDetails) { |
| | | if (safeTrainingDetails.getSafeTrainingId() == null || safeTrainingDetails.getUserId() == null) { |
| | | return R.fail("签到信息不完整"); |
| | | } |
| | | long count = safeTrainingDetailsService.count( |
| | | Wrappers.<SafeTrainingDetails>lambdaQuery() |
| | | .eq(SafeTrainingDetails::getSafeTrainingId, safeTrainingDetails.getSafeTrainingId()) |
| | | .eq(SafeTrainingDetails::getUserId, safeTrainingDetails.getUserId()) |
| | | ); |
| | | if (count > 0) { |
| | | return R.fail("已签到,请勿重复签到"); |
| | | } |
| | | return R.ok(safeTrainingDetailsService.save(safeTrainingDetails)); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | @Operation(summary = "结果明细保存") |
| | | @Log(title = "安全培训", businessType = BusinessType.UPDATE) |
| | | @PostMapping ("/saveSafeTraining") |
| | | public R saveSafeTraining(@RequestBody SafeTrainingDto safeTrainingDto) { |
| | | return R.ok(safeTrainingService.saveSafeTraining(safeTrainingDto)); |
| | | } |
| | | |
| | | @Operation(summary = "删除安全培训考核") |
| | | @Log(title = "安全培训", businessType = BusinessType.DELETE) |
| | | @DeleteMapping("/{ids}") |
| | | public R delSafeTraining(@RequestBody List<Integer> ids) { |
| | | return R.ok(safeTrainingService.delSafeTraining(ids)); |
| | | } |
| | | |
| | | @Operation(summary = "导出") |
| | | @Log(title = "安全培训", businessType = BusinessType.EXPORT) |
| | | @PostMapping ("/export") |
| | | public void export(HttpServletResponse response, @RequestBody SafeTraining safeTraining) { |
| | | safeTrainingService.export(response,safeTraining.getId()); |