package cn.iocoder.yudao.module.mes.controller.admin.safety;
|
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.module.mes.controller.admin.safety.vo.train.*;
|
import cn.iocoder.yudao.module.mes.service.safety.SafetyTrainingService;
|
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
import jakarta.annotation.Resource;
|
import jakarta.validation.Valid;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
|
/**
|
* 安全生产 - 培训、演练、事故登记电子化归档
|
*
|
* @author 超级管理员
|
*/
|
@Tag(name = "管理后台 - 安全生产-培训与事故")
|
@RestController
|
@RequestMapping("/safety/training")
|
@Validated
|
public class SafetyTrainingController {
|
|
@Resource
|
private SafetyTrainingService trainingService;
|
|
// ==================== 培训 ====================
|
|
@PostMapping("/create")
|
@Operation(summary = "新增安全培训记录")
|
@PreAuthorize("@ss.hasPermission('safety:training:create')")
|
public CommonResult<Long> create(@Valid @RequestBody SafetyTrainingSaveReqVO reqVO) {
|
return success(trainingService.createTraining(reqVO));
|
}
|
|
@PutMapping("/update")
|
@Operation(summary = "修改安全培训记录")
|
@PreAuthorize("@ss.hasPermission('safety:training:update')")
|
public CommonResult<Boolean> update(@Valid @RequestBody SafetyTrainingSaveReqVO reqVO) {
|
trainingService.updateTraining(reqVO);
|
return success(true);
|
}
|
|
@DeleteMapping("/delete")
|
@Operation(summary = "删除安全培训记录")
|
@Parameter(name = "id", description = "编号", required = true)
|
@PreAuthorize("@ss.hasPermission('safety:training:delete')")
|
public CommonResult<Boolean> delete(@RequestParam("id") Long id) {
|
trainingService.deleteTraining(id);
|
return success(true);
|
}
|
|
@GetMapping("/get")
|
@Operation(summary = "获得安全培训记录")
|
@Parameter(name = "id", description = "编号", required = true)
|
@PreAuthorize("@ss.hasPermission('safety:training:query')")
|
public CommonResult<SafetyTrainingRespVO> get(@RequestParam("id") Long id) {
|
var training = trainingService.getTraining(id);
|
var resp = BeanUtils.toBean(training, SafetyTrainingRespVO.class);
|
SafetyTrainingService.fillTrainingDisplay(training, resp);
|
return success(resp);
|
}
|
|
@GetMapping("/page")
|
@Operation(summary = "获得安全培训记录分页")
|
@PreAuthorize("@ss.hasPermission('safety:training:query')")
|
public CommonResult<PageResult<SafetyTrainingRespVO>> page(@Valid SafetyTrainingPageReqVO reqVO) {
|
var page = trainingService.getTrainingPage(reqVO);
|
var result = BeanUtils.toBean(page, SafetyTrainingRespVO.class);
|
for (int i = 0; i < page.getList().size(); i++) {
|
SafetyTrainingService.fillTrainingDisplay(page.getList().get(i), result.getList().get(i));
|
}
|
return success(result);
|
}
|
|
// ==================== 演练 ====================
|
|
@PostMapping("/drill/create")
|
@Operation(summary = "新增消防演练记录")
|
@PreAuthorize("@ss.hasPermission('safety:drill:create')")
|
public CommonResult<Long> createDrill(@Valid @RequestBody SafetyDrillSaveReqVO reqVO) {
|
return success(trainingService.createDrill(reqVO));
|
}
|
|
@PutMapping("/drill/update")
|
@Operation(summary = "修改消防演练记录")
|
@PreAuthorize("@ss.hasPermission('safety:drill:update')")
|
public CommonResult<Boolean> updateDrill(@Valid @RequestBody SafetyDrillSaveReqVO reqVO) {
|
trainingService.updateDrill(reqVO);
|
return success(true);
|
}
|
|
@DeleteMapping("/drill/delete")
|
@Operation(summary = "删除消防演练记录")
|
@Parameter(name = "id", description = "编号", required = true)
|
@PreAuthorize("@ss.hasPermission('safety:drill:delete')")
|
public CommonResult<Boolean> deleteDrill(@RequestParam("id") Long id) {
|
trainingService.deleteDrill(id);
|
return success(true);
|
}
|
|
@GetMapping("/drill/get")
|
@Operation(summary = "获得消防演练记录")
|
@Parameter(name = "id", description = "编号", required = true)
|
@PreAuthorize("@ss.hasPermission('safety:drill:query')")
|
public CommonResult<SafetyDrillRespVO> getDrill(@RequestParam("id") Long id) {
|
var drill = trainingService.getDrill(id);
|
var resp = BeanUtils.toBean(drill, SafetyDrillRespVO.class);
|
SafetyTrainingService.fillDrillDisplay(drill, resp);
|
return success(resp);
|
}
|
|
@GetMapping("/drill/page")
|
@Operation(summary = "获得消防演练记录分页")
|
@PreAuthorize("@ss.hasPermission('safety:drill:query')")
|
public CommonResult<PageResult<SafetyDrillRespVO>> drillPage(@Valid SafetyDrillPageReqVO reqVO) {
|
var page = trainingService.getDrillPage(reqVO);
|
var result = BeanUtils.toBean(page, SafetyDrillRespVO.class);
|
for (int i = 0; i < page.getList().size(); i++) {
|
SafetyTrainingService.fillDrillDisplay(page.getList().get(i), result.getList().get(i));
|
}
|
return success(result);
|
}
|
|
// ==================== 事故 ====================
|
|
@PostMapping("/accident/create")
|
@Operation(summary = "新增事故登记")
|
@PreAuthorize("@ss.hasPermission('safety:accident:create')")
|
public CommonResult<Long> createAccident(@Valid @RequestBody SafetyAccidentSaveReqVO reqVO) {
|
return success(trainingService.createAccident(reqVO));
|
}
|
|
@PutMapping("/accident/update")
|
@Operation(summary = "修改事故登记")
|
@PreAuthorize("@ss.hasPermission('safety:accident:update')")
|
public CommonResult<Boolean> updateAccident(@Valid @RequestBody SafetyAccidentSaveReqVO reqVO) {
|
trainingService.updateAccident(reqVO);
|
return success(true);
|
}
|
|
@DeleteMapping("/accident/delete")
|
@Operation(summary = "删除事故登记")
|
@Parameter(name = "id", description = "编号", required = true)
|
@PreAuthorize("@ss.hasPermission('safety:accident:delete')")
|
public CommonResult<Boolean> deleteAccident(@RequestParam("id") Long id) {
|
trainingService.deleteAccident(id);
|
return success(true);
|
}
|
|
@GetMapping("/accident/get")
|
@Operation(summary = "获得事故登记")
|
@Parameter(name = "id", description = "编号", required = true)
|
@PreAuthorize("@ss.hasPermission('safety:accident:query')")
|
public CommonResult<SafetyAccidentRespVO> getAccident(@RequestParam("id") Long id) {
|
var accident = trainingService.getAccident(id);
|
var resp = BeanUtils.toBean(accident, SafetyAccidentRespVO.class);
|
SafetyTrainingService.fillAccidentDisplay(accident, resp);
|
return success(resp);
|
}
|
|
@GetMapping("/accident/page")
|
@Operation(summary = "获得事故登记分页")
|
@PreAuthorize("@ss.hasPermission('safety:accident:query')")
|
public CommonResult<PageResult<SafetyAccidentRespVO>> accidentPage(
|
@Valid SafetyAccidentPageReqVO reqVO) {
|
var page = trainingService.getAccidentPage(reqVO);
|
var result = BeanUtils.toBean(page, SafetyAccidentRespVO.class);
|
for (int i = 0; i < page.getList().size(); i++) {
|
SafetyTrainingService.fillAccidentDisplay(page.getList().get(i), result.getList().get(i));
|
}
|
return success(result);
|
}
|
|
}
|