diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/common/DeviceConstant.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/common/DeviceConstant.java index 50937890..68998837 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/common/DeviceConstant.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/common/DeviceConstant.java @@ -13,4 +13,9 @@ public class DeviceConstant { public static final String FREQUENCY_TYPE_MONTH = "month"; public static final String FREQUENCY_TYPE_DAY = "day"; + + //期间核查目标类型 + public static final String PERIOD_CHECK_TAGET_DEVICE = "device"; + public static final String PERIOD_CHECK_TAGET_MATERIAL = "material"; + } diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DeviceCalibrationController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DeviceCalibrationController.java index 88eacac1..5fbcca17 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DeviceCalibrationController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DeviceCalibrationController.java @@ -56,7 +56,6 @@ public class DeviceCalibrationController extends AbstractFileUploadController im } @Resource private DeviceCalibrationService deviceCalibrationService; - @Resource private DeviceCalibrationPlanService deviceCalibrationPlanService; @Resource private DeviceProductService deviceProductService; @PostMapping("/create") @@ -65,6 +64,12 @@ public class DeviceCalibrationController extends AbstractFileUploadController im return success(deviceCalibrationService.createDeviceCalibration(createReqVO)); } + @PostMapping("/createByDeviceId") + @Operation(summary = "创建设备-检定校准") + public CommonResult createByDeviceId(@RequestBody DeviceCalibrationSaveReqVO createReqVO) { + return success(deviceCalibrationService.createByDeviceId(createReqVO)); + } + @PutMapping("/update") @Operation(summary = "更新设备-检定校准") public CommonResult updateDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO updateReqVO) { diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckController.java index 881c5a24..cfe6bd08 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckController.java @@ -2,8 +2,10 @@ package com.zt.plat.module.qms.resource.device.controller.admin; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zt.plat.module.qms.resource.device.common.DeviceConstant; import com.zt.plat.module.qms.resource.device.controller.vo.*; import com.zt.plat.module.qms.resource.device.service.DeviceProductService; +import com.zt.plat.module.qms.resource.material.service.MaterialProductService; import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; import jakarta.annotation.Resource; @@ -56,6 +58,7 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im @Resource private DevicePeriodCheckService devicePeriodCheckService; @Resource private DeviceProductService deviceProductService; + @Resource private MaterialProductService materialProductService; @PostMapping("/create") @Operation(summary = "创建设备-期间核查") @@ -96,11 +99,19 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im return success(BeanUtils.toBean(devicePeriodCheck, DevicePeriodCheckRespVO.class)); } - @GetMapping("/getVO") + @GetMapping("/getVoDevice") @Operation(summary = "获得设备-检定校准") @Parameter(name = "id", description = "编号", required = true, example = "1024") - public CommonResult getVO(@RequestParam("id") Long id) { - DevicePeriodCheckVO vo = devicePeriodCheckService.getDevicePeriodCheckVO(id); + public CommonResult getVoDevice(@RequestParam("id") Long id) { + DevicePeriodCheckVO vo = devicePeriodCheckService.getVoDevice(id); + return success(vo); + } + + @GetMapping("/getVoMaterial") + @Operation(summary = "获得设备-检定校准") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + public CommonResult getVoMaterial(@RequestParam("id") Long id) { + DevicePeriodCheckVO vo = devicePeriodCheckService.getVoMaterial(id); return success(vo); } @@ -110,9 +121,9 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im return devicePeriodCheckService.submitApply(param); } - @GetMapping("/page") + @GetMapping("/pageDevice") @Operation(summary = "获得设备-期间核查分页") - public CommonResult> getDevicePeriodCheckPage(@Valid DevicePeriodCheckPageReqVO param) { + public CommonResult> pageDevice(@Valid DevicePeriodCheckPageReqVO param) { Page page = new Page<>(param.getPageNo(), param.getPageSize()); Long productId = param.getProductId(); if(!ObjectUtils.isEmpty(productId)){ @@ -125,7 +136,29 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im param.setFlowStatusList(Arrays.asList(flowStatus.split(","))); param.setFlowStatus(""); } - IPage pageList = devicePeriodCheckService.queryPageList(page, param); + param.setCheckTarget(DeviceConstant.PERIOD_CHECK_TAGET_DEVICE); + IPage pageList = devicePeriodCheckService.queryPageListDevice(page, param); + PageResult pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal()); + return CommonResult.success(pageResult); + } + + @GetMapping("/pageMaterial") + @Operation(summary = "获得设备-期间核查分页") + public CommonResult> pageMaterial(@Valid DevicePeriodCheckPageReqVO param) { + Page page = new Page<>(param.getPageNo(), param.getPageSize()); + Long productId = param.getProductId(); + if(!ObjectUtils.isEmpty(productId)){ + List productIdList = deviceProductService.getIdListByIdPath(productId); + param.setProductIdList(productIdList); + param.setProductId(null); + } + String flowStatus = param.getFlowStatus(); + if (!ObjectUtils.isEmpty(flowStatus)) { + param.setFlowStatusList(Arrays.asList(flowStatus.split(","))); + param.setFlowStatus(""); + } + param.setCheckTarget(DeviceConstant.PERIOD_CHECK_TAGET_MATERIAL); + IPage pageList = devicePeriodCheckService.queryPageListMaterial(page, param); PageResult pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal()); return CommonResult.success(pageResult); } diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckPlanController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckPlanController.java index 25f6563e..4c1715b0 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckPlanController.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/admin/DevicePeriodCheckPlanController.java @@ -55,11 +55,18 @@ public class DevicePeriodCheckPlanController extends AbstractFileUploadControlle @Resource private DevicePeriodCheckPlanService devicePeriodCheckPlanService; - @PostMapping("/createPlan") + @PostMapping("/createPlanDevice") @Operation(summary = "创建设备-期间核查计划") - public CommonResult createDevicePeriodCheckPlan(@RequestBody JSONObject param) { + public CommonResult createPlanDevice(@RequestBody JSONObject param) { String checkYear = param.getString("checkYear"); - return success(devicePeriodCheckPlanService.createPlan(checkYear)); + return success(devicePeriodCheckPlanService.createPlanDevice(checkYear)); + } + + @PostMapping("/createPlanMaterial") + @Operation(summary = "创建设备-期间核查计划") + public CommonResult createPlanMaterial(@RequestBody JSONObject param) { + String checkYear = param.getString("checkYear"); + return success(devicePeriodCheckPlanService.createPlanMaterial(checkYear)); } @RequestMapping("/savePlan") diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPageReqVO.java index b0d2103d..b2234428 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPageReqVO.java @@ -59,6 +59,9 @@ public class DevicePeriodCheckPageReqVO extends PageParam { @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] checkDate; + @Schema(description = "核查对象类型") + private String checkTarget; + @Schema(description = "上次检查日期") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] lastCheckDate; @@ -92,7 +95,7 @@ public class DevicePeriodCheckPageReqVO extends PageParam { private LocalDateTime[] createTime; - //======================设备大类字段============================== + //======================设备大类字段========================== diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanPageReqVO.java index 0cc26110..6247cf0e 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanPageReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanPageReqVO.java @@ -40,6 +40,9 @@ public class DevicePeriodCheckPlanPageReqVO extends PageParam { @Schema(description = "数据类型,班组/汇总", example = "1") private String dataType; + @Schema(description = "核查对象类型") + private String checkTarget; + @Schema(description = "作废标识:0-有效;1-作废") private String cancelFlag; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanRespVO.java index acc372a1..674bc3a8 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanRespVO.java @@ -54,6 +54,10 @@ public class DevicePeriodCheckPlanRespVO { @ExcelProperty("数据类型,班组/汇总") private String dataType; + @ExcelProperty("核查对象类型") + @Schema(description = "核查对象类型") + private String checkTarget; + @Schema(description = "作废标识:0-有效;1-作废") @ExcelProperty("作废标识:0-有效;1-作废") private String cancelFlag; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanSaveReqVO.java index f5fd1d55..2d9f04a9 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanSaveReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckPlanSaveReqVO.java @@ -41,6 +41,9 @@ public class DevicePeriodCheckPlanSaveReqVO { @Schema(description = "数据类型,班组/汇总", example = "1") private String dataType; + @Schema(description = "核查对象类型") + private String checkTarget; + @Schema(description = "作废标识:0-有效;1-作废") private String cancelFlag; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckRespVO.java index 8cf286fb..6bd44eeb 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckRespVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckRespVO.java @@ -73,6 +73,10 @@ public class DevicePeriodCheckRespVO { @ExcelProperty("实际检查日期") private LocalDateTime checkDate; + @ExcelProperty("核查对象类型") + @Schema(description = "核查对象类型") + private String checkTarget; + @Schema(description = "上次检查日期") @ExcelProperty("上次检查日期") private LocalDateTime lastCheckDate; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckSaveReqVO.java index c7a2334e..37b5d93a 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckSaveReqVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckSaveReqVO.java @@ -56,6 +56,9 @@ public class DevicePeriodCheckSaveReqVO { @Schema(description = "实际检查日期") private LocalDateTime checkDate; + @Schema(description = "核查对象类型") + private String checkTarget; + @Schema(description = "上次检查日期") private LocalDateTime lastCheckDate; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckVO.java index 5b4acbc7..c2f52e5e 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckVO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/controller/vo/DevicePeriodCheckVO.java @@ -52,6 +52,8 @@ public class DevicePeriodCheckVO extends DevicePeriodCheckRespVO{ private String factoryCode; //出厂编号 + //============物料试剂字段============ + //============其他字段============ private JSONObject signatureData; diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckDO.java index 08991b68..327fdab1 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckDO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckDO.java @@ -101,6 +101,10 @@ public class DevicePeriodCheckDO extends BusinessBaseDO { */ @TableField("CHK_DT") private LocalDateTime checkDate; + + @TableField("CHK_TGT") + private String checkTarget; + /** * 上次检查日期 */ diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckPlanDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckPlanDO.java index 95442e12..d4207736 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckPlanDO.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/dataobject/DevicePeriodCheckPlanDO.java @@ -73,6 +73,10 @@ public class DevicePeriodCheckPlanDO extends BusinessBaseDO { */ @TableField("DAT_TP") private String dataType; + + @TableField("CHK_TGT") + private String checkTarget; + /** * 作废标识:0-有效;1-作废 */ diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.java index 6c9a4248..8922a30e 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.java @@ -55,5 +55,7 @@ public interface DevicePeriodCheckMapper extends BaseMapperX getLastDataCheckList(@Param("param") JSONObject param); - IPage queryPageList(Page page, @Param("param") DevicePeriodCheckPageReqVO param); + IPage queryPageListDevice(Page page, @Param("param") DevicePeriodCheckPageReqVO param); + + IPage queryPageListMaterial(Page page, @Param("param") DevicePeriodCheckPageReqVO param); } \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckPlanMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckPlanMapper.java index 4a5098d6..22ba79d3 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckPlanMapper.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckPlanMapper.java @@ -21,6 +21,7 @@ public interface DevicePeriodCheckPlanMapper extends BaseMapperX deviceList = deviceInfomationService.getListNeedByRule(ruleParam); + String formKey = dictionaryBusinessService.getValueByDataKey(formDicKey); + DataTemplateDO formTemplate = dataTemplateService.getLatestDataByKey(formKey); + Long formTemplateId = formTemplate.getId(); + DeviceCalibrationDO entity = new DeviceCalibrationDO(); + entity.setDeviceId(deviceId); + entity.setPlanId(0L); + entity.setEffectiveFlag("1"); + entity.setFormId(formTemplateId); + entity.setFlowStatus(QmsCommonConstant.NOT_START); + if(deviceList.isEmpty()){ + deviceCalibrationMapper.insert(entity); + return BeanUtils.toBean(entity, DeviceCalibrationRespVO.class); + } + DeviceInfoWithBizConfigVO configVO = deviceList.get(0); + DeviceConfigBusinessRuleDO rule = configVO.getRule(); + if(rule == null){ + deviceCalibrationMapper.insert(entity); + return BeanUtils.toBean(entity, DeviceCalibrationRespVO.class); + } + entity.setSpecification(rule.getStandard()); + entity.setCheckType(rule.getCalibrationCheckType()); + entity.setFrequencyRemark(rule.getFrequencyRemark()); + deviceCalibrationMapper.insert(entity); + return BeanUtils.toBean(entity, DeviceCalibrationRespVO.class); + } + @Override public DeviceCalibrationDO updateDeviceCalibration(DeviceCalibrationSaveReqVO updateReqVO) { // 校验存在 diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanService.java index 195239d1..570bdf1d 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanService.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanService.java @@ -18,7 +18,9 @@ public interface DevicePeriodCheckPlanService { /** * 创建-期间核查计划 */ - DevicePeriodCheckPlanRespVO createPlan(String checkYear); + DevicePeriodCheckPlanRespVO createPlanDevice(String checkYear); + + DevicePeriodCheckPlanRespVO createPlanMaterial(String checkYear); CommonResult savePlan(DevicePeriodCheckPlanSaveReqVO paramVO); diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanServiceImpl.java index 3abfa9cb..fe97bb05 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckPlanServiceImpl.java @@ -16,6 +16,7 @@ import com.zt.plat.module.qms.common.data.service.DataOpinionService; import com.zt.plat.module.qms.common.dic.service.DictionaryBusinessService; import com.zt.plat.module.qms.enums.QmsBpmConstant; import com.zt.plat.module.qms.enums.QmsCommonConstant; +import com.zt.plat.module.qms.resource.device.common.DeviceConstant; import com.zt.plat.module.qms.resource.device.controller.vo.DevicePeriodCheckPlanRespVO; import com.zt.plat.module.qms.resource.device.controller.vo.DevicePeriodCheckPlanPageReqVO; import com.zt.plat.module.qms.resource.device.controller.vo.DevicePeriodCheckPlanSaveReqVO; @@ -62,18 +63,34 @@ public class DevicePeriodCheckPlanServiceImpl implements DevicePeriodCheckPlanSe @Override @Transactional(rollbackFor = Exception.class) - public DevicePeriodCheckPlanRespVO createPlan(String checkYear) { + public DevicePeriodCheckPlanRespVO createPlanDevice(String checkYear) { LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); String userName = SecurityFrameworkUtils.getLoginUserNickname(); - String title = userName + "的"+checkYear+"年度期间核查计划"; DevicePeriodCheckPlanDO entity = new DevicePeriodCheckPlanDO(); entity.setCheckYear(checkYear); entity.setTitle(title); entity.setApplyUserName(userName); entity.setFlowStatus(QmsCommonConstant.NOT_START); + entity.setCheckTarget(DeviceConstant.PERIOD_CHECK_TAGET_DEVICE); devicePeriodCheckPlanMapper.insert(entity); - devicePeriodCheckService.createListByPlan(entity); + devicePeriodCheckService.createListByPlanDevice(entity); + return BeanUtils.toBean(entity, DevicePeriodCheckPlanRespVO.class); + } + + @Override + public DevicePeriodCheckPlanRespVO createPlanMaterial(String checkYear) { + LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); + String userName = SecurityFrameworkUtils.getLoginUserNickname(); + String title = userName + "的"+checkYear+"年度期间核查计划"; + DevicePeriodCheckPlanDO entity = new DevicePeriodCheckPlanDO(); + entity.setCheckYear(checkYear); + entity.setTitle(title); + entity.setApplyUserName(userName); + entity.setFlowStatus(QmsCommonConstant.NOT_START); + entity.setCheckTarget(DeviceConstant.PERIOD_CHECK_TAGET_MATERIAL); + devicePeriodCheckPlanMapper.insert(entity); + devicePeriodCheckService.createListByPlanMaterial(entity); return BeanUtils.toBean(entity, DevicePeriodCheckPlanRespVO.class); } diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckService.java index 60b142a7..7951c8ec 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckService.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckService.java @@ -2,16 +2,13 @@ package com.zt.plat.module.qms.resource.device.service; import java.util.*; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.module.qms.resource.device.controller.vo.*; -import com.zt.plat.module.qms.resource.device.dal.dataobject.DeviceCalibrationDO; import com.zt.plat.module.qms.resource.device.dal.dataobject.DevicePeriodCheckDO; import com.zt.plat.module.qms.resource.device.dal.dataobject.DevicePeriodCheckPlanDO; import jakarta.validation.*; -import com.zt.plat.module.qms.resource.device.dal.dataobject.DevicePeriodCheckDO; import com.zt.plat.framework.common.pojo.PageResult; /** @@ -22,11 +19,14 @@ import com.zt.plat.framework.common.pojo.PageResult; public interface DevicePeriodCheckService { - void createListByPlan(DevicePeriodCheckPlanDO plan); + void createListByPlanDevice(DevicePeriodCheckPlanDO plan); + + void createListByPlanMaterial(DevicePeriodCheckPlanDO plan); CommonResult> getLastDataCheckList(List deviceIds, String flowStatus); - IPage queryPageList(Page page, DevicePeriodCheckPageReqVO pageReqVO); + IPage queryPageListDevice(Page page, DevicePeriodCheckPageReqVO pageReqVO); + IPage queryPageListMaterial(Page page, DevicePeriodCheckPageReqVO pageReqVO); void updateEffectiveFlag(Long planId, String effectiveFlag); @@ -42,6 +42,8 @@ public interface DevicePeriodCheckService { */ DevicePeriodCheckRespVO createDevicePeriodCheck(@Valid DevicePeriodCheckSaveReqVO createReqVO); + DevicePeriodCheckRespVO createByDeviceId(DevicePeriodCheckSaveReqVO createReqVO); + /** * 更新设备-期间核查 * @@ -71,7 +73,8 @@ public interface DevicePeriodCheckService { */ DevicePeriodCheckDO getDevicePeriodCheck(Long id); - DevicePeriodCheckVO getDevicePeriodCheckVO(Long id); + DevicePeriodCheckVO getVoDevice(Long id); + DevicePeriodCheckVO getVoMaterial(Long id); /** * 获得设备-期间核查分页 * diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckServiceImpl.java index fef66b48..6fe395c9 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/resource/device/service/DevicePeriodCheckServiceImpl.java @@ -78,7 +78,7 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B * */ @Override @Transactional(rollbackFor = Exception.class) - public void createListByPlan(DevicePeriodCheckPlanDO plan) { + public void createListByPlanDevice(DevicePeriodCheckPlanDO plan) { Long planId = plan.getId(); String checkYear = plan.getCheckYear(); JSONObject ruleParam = new JSONObject(); @@ -95,9 +95,26 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B for (DeviceInfoWithBizConfigVO device : deviceList) { DeviceConfigBusinessRuleDO rule = device.getRule(); Long deviceId = device.getId(); - initPeriodCheckData(planId, checkList, lastDeviceDataList, rule, deviceId, formTemplateId); + initPeriodCheckData(planId, checkList, lastDeviceDataList, rule, deviceId, formTemplateId, DeviceConstant.PERIOD_CHECK_TAGET_DEVICE); } + devicePeriodCheckMapper.insertBatch(checkList); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void createListByPlanMaterial(DevicePeriodCheckPlanDO plan) { + Long planId = plan.getId(); + String checkYear = plan.getCheckYear(); + JSONObject ruleParam = new JSONObject(); + ruleParam.put("businessType", DeviceConstant.PERIOD_TYPE); + List checkList = new ArrayList<>(); + String wfStatus = QmsCommonConstant.COMPLETED; + + String formKey = dictionaryBusinessService.getValueByDataKey(formDicKey); + DataTemplateDO formTemplate = dataTemplateService.getLatestDataByKey(formKey); + Long formTemplateId = formTemplate.getId(); + //处理物料试剂 List materialList = materialInfomationService.getListNeedByRule(ruleParam); List materialIds = convertList(materialList, MaterialInfoWithBizConfigVO::getId); @@ -105,12 +122,13 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B for (MaterialInfoWithBizConfigVO material : materialList) { DeviceConfigBusinessRuleDO rule = material.getRule(); Long deviceId = material.getId(); - initPeriodCheckData(planId, checkList, lastMaterialDataList, rule, deviceId, formTemplateId); + initPeriodCheckData(planId, checkList, lastMaterialDataList, rule, deviceId, formTemplateId, DeviceConstant.PERIOD_CHECK_TAGET_MATERIAL); } devicePeriodCheckMapper.insertBatch(checkList); } - private void initPeriodCheckData(Long planId, List checkList, List lastCheckList, DeviceConfigBusinessRuleDO rule, Long deviceId, Long formTemplateId) { + private void initPeriodCheckData(Long planId, List checkList, List lastCheckList, DeviceConfigBusinessRuleDO rule, Long deviceId, + Long formTemplateId, String checkTarget) { DevicePeriodCheckDO data = new DevicePeriodCheckDO(); DevicePeriodCheckVO lastCheck = null; for(DevicePeriodCheckVO check : lastCheckList){ @@ -130,6 +148,7 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B data.setFrequencyRemark(rule.getFrequencyRemark()); data.setFlowStatus(QmsCommonConstant.NOT_START); data.setFormId(formTemplateId); + data.setCheckTarget(checkTarget); checkList.add(data); } @@ -144,8 +163,13 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B @Override - public IPage queryPageList(Page page, DevicePeriodCheckPageReqVO pageReqVO) { - return devicePeriodCheckMapper.queryPageList(page, pageReqVO); + public IPage queryPageListDevice(Page page, DevicePeriodCheckPageReqVO pageReqVO) { + return devicePeriodCheckMapper.queryPageListDevice(page, pageReqVO); + } + + @Override + public IPage queryPageListMaterial(Page page, DevicePeriodCheckPageReqVO pageReqVO) { + return devicePeriodCheckMapper.queryPageListMaterial(page, pageReqVO); } @Override @@ -199,11 +223,27 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B } @Override - public DevicePeriodCheckVO getDevicePeriodCheckVO(Long id) { + public DevicePeriodCheckVO getVoDevice(Long id) { Page page = new Page<>(1,10); DevicePeriodCheckPageReqVO param = new DevicePeriodCheckPageReqVO(); param.setId( id); - IPage pageList = queryPageList(page, param); + IPage pageList = queryPageListDevice(page, param); + PageResult pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal()); + if(pageResult.getList().isEmpty()) + return null; + DevicePeriodCheckVO vo = pageResult.getList().get(0); + //处理审批意见 + JSONObject opinion = dataOpinionService.assembleOpinion(id); + vo.setSignatureData( opinion); + return vo; + } + + @Override + public DevicePeriodCheckVO getVoMaterial(Long id) { + Page page = new Page<>(1,10); + DevicePeriodCheckPageReqVO param = new DevicePeriodCheckPageReqVO(); + param.setId( id); + IPage pageList = queryPageListMaterial(page, param); PageResult pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal()); if(pageResult.getList().isEmpty()) return null; @@ -223,6 +263,39 @@ public class DevicePeriodCheckServiceImpl implements DevicePeriodCheckService, B return BeanUtils.toBean(devicePeriodCheck, DevicePeriodCheckRespVO.class); } + @Override + public DevicePeriodCheckRespVO createByDeviceId(DevicePeriodCheckSaveReqVO createReqVO) { + Long deviceId = createReqVO.getDeviceId(); + if(deviceId == null) + throw exception0(DEVICE_PERIOD_CHECK_NOT_EXISTS.getCode(), "请选择设备或标准物质"); + JSONObject ruleParam = new JSONObject(); + ruleParam.put("businessType", DeviceConstant.PERIOD_TYPE); + ruleParam.put("deviceId", deviceId); + List deviceList = deviceInfomationService.getListNeedByRule(ruleParam); + String formKey = dictionaryBusinessService.getValueByDataKey(formDicKey); + DataTemplateDO formTemplate = dataTemplateService.getLatestDataByKey(formKey); + Long formTemplateId = formTemplate.getId(); + DevicePeriodCheckDO entity = new DevicePeriodCheckDO(); + entity.setDeviceId(deviceId); + entity.setPlanId(0L); + entity.setEffectiveFlag("1"); + entity.setFormId(formTemplateId); + entity.setFlowStatus(QmsCommonConstant.NOT_START); + if(deviceList.isEmpty()){ + devicePeriodCheckMapper.insert(entity); + return BeanUtils.toBean(entity, DevicePeriodCheckRespVO.class); + } + DeviceInfoWithBizConfigVO configVO = deviceList.get(0); + DeviceConfigBusinessRuleDO rule = configVO.getRule(); + if(rule == null){ + devicePeriodCheckMapper.insert(entity); + return BeanUtils.toBean(entity, DevicePeriodCheckRespVO.class); + } + entity.setFrequencyRemark(rule.getFrequencyRemark()); + devicePeriodCheckMapper.insert(entity); + return BeanUtils.toBean(entity, DevicePeriodCheckRespVO.class); + } + @Override public DevicePeriodCheckDO updateDevicePeriodCheck(DevicePeriodCheckSaveReqVO updateReqVO) { // 校验存在 diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.xml b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.xml index ea4fcb6e..a0fedaca 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.xml +++ b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/resource/device/dal/mapper/DevicePeriodCheckMapper.xml @@ -25,6 +25,7 @@ + @@ -46,15 +47,19 @@ - + - + + + + + - SELECT c.*, d.DEV_NAME, @@ -113,6 +118,9 @@ and c.EFCT_FLG = #{param.effectiveFlag} + + and c.CHK_TGT = #{param.checkTarget} + and d.DEPT_ID = #{param.deptId} @@ -131,4 +139,57 @@ + + \ No newline at end of file