package com.yuanchu.mom.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueAuth; import com.yuanchu.mom.annotation.ValueClassify; import com.yuanchu.mom.dto.DeviceCalibrationPlanDto; import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.pojo.DeviceCalibrationPlan; import com.yuanchu.mom.pojo.DeviceCalibrationPlanDetail; import com.yuanchu.mom.service.DeviceCalibrationPlanDetailService; import com.yuanchu.mom.service.DeviceCalibrationPlanService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.util.Map; /** *

* 设备校准计划主表 前端控制器 *

* * @author 江苏鵷雏网络科技有限公司 * @since 2024-12-16 03:58:17 */ @Api(tags = "设备校准计划") @AllArgsConstructor @RestController @RequestMapping("/deviceCalibrationPlan") public class DeviceCalibrationPlanController { private DeviceCalibrationPlanService deviceCalibrationPlanService; private DeviceCalibrationPlanDetailService deviceCalibrationPlanDetailService; /** * 新增设备校准计划 * @return */ @ValueAuth @ApiOperation(value = "新增设备校准计划") @PostMapping("/addDeviceCalibrationPlan") public Result addDeviceCalibrationPlan(@RequestBody DeviceCalibrationPlanDto calibrationPlanDto){ return Result.success(deviceCalibrationPlanService.addDeviceCalibrationPlan(calibrationPlanDto)); } /** * 导入设备校准计划 * @return */ @ValueAuth @ApiOperation(value = "导入设备校准计划") @PostMapping("/importDeviceCalibrationPlan") public Result importDeviceCalibrationPlan(MultipartFile file, String planYear){ return Result.success(deviceCalibrationPlanService.importDeviceCalibrationPlan(file, planYear)); } /** * 设备校准计划删除 * @return */ @ValueAuth @ApiOperation(value = "设备校准计划删除") @GetMapping("/delQualitySupervise") public Result delQualitySupervise(Integer planId){ return Result.success(deviceCalibrationPlanService.removeById(planId)); } /** * 设备校准计划批准 * @return */ @ValueClassify("质量设备校准计划") @ApiOperation(value = "设备校准计划批准") @PostMapping("/ratifyDeviceCalibrationPlan") public Result ratifyDeviceCalibrationPlan(@RequestBody DeviceCalibrationPlan DeviceCalibrationPlan){ return Result.success(deviceCalibrationPlanService.ratifyDeviceCalibrationPlan(DeviceCalibrationPlan)); } /** * 设备校准计划列表 * @param data * @return */ @ValueAuth @ApiOperation(value = "设备校准计划列表") @PostMapping("/pageDeviceCalibrationPlan") public Result> pageDeviceCalibrationPlan(@RequestBody Map data) throws Exception { Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); DeviceCalibrationPlan DeviceCalibrationPlan = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), DeviceCalibrationPlan.class); return Result.success(deviceCalibrationPlanService.pageDeviceCalibrationPlan(page, DeviceCalibrationPlan)); } /** * 设备校准计划详情列表 * @param data * @return */ @ValueAuth @ApiOperation(value = "设备校准计划详情列表") @PostMapping("/pageDeviceCalibrationPlanDetail") public Result> pageDeviceCalibrationPlanDetail(@RequestBody Map data) throws Exception { Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); DeviceCalibrationPlanDetail deviceCalibrationPlanDetails = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), DeviceCalibrationPlanDetail.class); return Result.success(deviceCalibrationPlanService.pageDeviceCalibrationPlanDetail(page, deviceCalibrationPlanDetails)); } /** * 新增设备校准计划详情 * @return */ @ValueAuth @ApiOperation(value = "新增设备校准计划详情") @PostMapping("/addDeviceCalibrationPlanDetail") public Result addDeviceCalibrationPlanDetail(@RequestBody DeviceCalibrationPlanDetail deviceCalibrationPlanDetail){ if (deviceCalibrationPlanDetail.getPlanId() == null) { throw new ErrorException("缺少设备校准计划主表id"); } return Result.success(deviceCalibrationPlanDetailService.save(deviceCalibrationPlanDetail)); } /** * 修改设备校准计划详情 * @return */ @ValueAuth @ApiOperation(value = "修改设备校准计划详情") @PostMapping("/updateDeviceCalibrationPlanDetail") public Result updateDeviceCalibrationPlanDetail(@RequestBody DeviceCalibrationPlanDetail deviceCalibrationPlanDetail){ return Result.success(deviceCalibrationPlanDetailService.updateById(deviceCalibrationPlanDetail)); } /** * 删除设备校准计划详情 * @return */ @ValueAuth @ApiOperation(value = "删除设备校准计划详情") @GetMapping("/delDeviceCalibrationPlanDetail") public Result delDeviceCalibrationPlanDetail(Integer planDetailsId){ return Result.success(deviceCalibrationPlanDetailService.removeById(planDetailsId)); } /** * 导出设备校准计划 * @return */ @ValueAuth @ApiOperation(value = "导出设备校准计划") @GetMapping("/exportDeviceCalibrationPlanDetail") public void exportDeviceCalibrationPlanDetail(Integer planId, HttpServletResponse response){ deviceCalibrationPlanService.exportDeviceCalibrationPlanDetail(planId, response); } }