Compare commits

...

3 Commits

26 changed files with 379 additions and 45 deletions

View File

@@ -83,4 +83,13 @@ public class DataOpinionRespVO {
@ExcelProperty("创建时间") @ExcelProperty("创建时间")
private LocalDateTime createTime; private LocalDateTime createTime;
//===========扩展字段
@Schema(description = "审批时间年月日")
@ExcelProperty("审批时间年月日")
private String opinionTimeYYYYMMDD;
@Schema(description = "base64签名图片")
private String signatureIdBase64;
} }

View File

@@ -28,6 +28,8 @@ public interface DataOpinionService {
List<DataOpinionDO> getListByFlowInsId(String flowInsId); List<DataOpinionDO> getListByFlowInsId(String flowInsId);
JSONObject assembleOpinion(Long busId);
/** /**
* 创建审批意见 * 创建审批意见
* *

View File

@@ -1,6 +1,7 @@
package com.zt.plat.module.qms.common.data.service; package com.zt.plat.module.qms.common.data.service;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -20,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*; import java.util.*;
import com.zt.plat.module.qms.common.data.dal.dataobject.DataOpinionDO; import com.zt.plat.module.qms.common.data.dal.dataobject.DataOpinionDO;
@@ -105,6 +107,30 @@ public class DataOpinionServiceImpl implements DataOpinionService {
return dataOpinionMapper.selectList(query); return dataOpinionMapper.selectList(query);
} }
@Override
public JSONObject assembleOpinion(Long busId) {
List<DataOpinionDO> opinionList = this.getListByBusId(busId);
List<DataOpinionRespVO> opinionRespVOList = BeanUtils.toBean(opinionList, DataOpinionRespVO.class);
List<Long> signatureIdList = opinionRespVOList.stream().map(DataOpinionRespVO::getOpinionSignatureId).distinct().toList();
List<ConfigUserSignatureDO> signatureList = new ArrayList<>();
if(!signatureIdList.isEmpty())
signatureList = configUserSignatureService.getByIdList(signatureIdList);
JSONObject opinion = new JSONObject();
for(DataOpinionRespVO opinionRespVO : opinionRespVOList){
for(ConfigUserSignatureDO signature : signatureList){
if(signature.getId().equals(opinionRespVO.getOpinionSignatureId())){
opinionRespVO.setSignatureIdBase64(signature.getSignatureContent());
}
}
if(opinionRespVO.getOpinionTime() != null){
opinionRespVO.setOpinionTimeYYYYMMDD(DateUtil.format(opinionRespVO.getOpinionTime(), "yyyy-MM-dd"));
}
String nodeKey = opinionRespVO.getNodeKey();
opinion.put(nodeKey, opinionRespVO);
}
return opinion;
}
@Override @Override
public DataOpinionRespVO createDataOpinion(DataOpinionSaveReqVO createReqVO) { public DataOpinionRespVO createDataOpinion(DataOpinionSaveReqVO createReqVO) {
// 插入 // 插入

View File

@@ -13,4 +13,9 @@ public class DeviceConstant {
public static final String FREQUENCY_TYPE_MONTH = "month"; public static final String FREQUENCY_TYPE_MONTH = "month";
public static final String FREQUENCY_TYPE_DAY = "day"; 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";
} }

View File

@@ -56,7 +56,6 @@ public class DeviceCalibrationController extends AbstractFileUploadController im
} }
@Resource private DeviceCalibrationService deviceCalibrationService; @Resource private DeviceCalibrationService deviceCalibrationService;
@Resource private DeviceCalibrationPlanService deviceCalibrationPlanService;
@Resource private DeviceProductService deviceProductService; @Resource private DeviceProductService deviceProductService;
@PostMapping("/create") @PostMapping("/create")
@@ -65,11 +64,18 @@ public class DeviceCalibrationController extends AbstractFileUploadController im
return success(deviceCalibrationService.createDeviceCalibration(createReqVO)); return success(deviceCalibrationService.createDeviceCalibration(createReqVO));
} }
@PostMapping("/createByDeviceId")
@Operation(summary = "创建设备-检定校准")
public CommonResult<DeviceCalibrationRespVO> createByDeviceId(@RequestBody DeviceCalibrationSaveReqVO createReqVO) {
return success(deviceCalibrationService.createByDeviceId(createReqVO));
}
@PutMapping("/update") @PutMapping("/update")
@Operation(summary = "更新设备-检定校准") @Operation(summary = "更新设备-检定校准")
public CommonResult<Boolean> updateDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO updateReqVO) { public CommonResult<DeviceCalibrationRespVO> updateDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO updateReqVO) {
deviceCalibrationService.updateDeviceCalibration(updateReqVO); DeviceCalibrationDO entity = deviceCalibrationService.updateDeviceCalibration(updateReqVO);
return success(true); DeviceCalibrationRespVO vo = BeanUtils.toBean(entity, DeviceCalibrationRespVO.class);
return success(vo);
} }
@DeleteMapping("/delete") @DeleteMapping("/delete")

View File

@@ -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.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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.controller.vo.*;
import com.zt.plat.module.qms.resource.device.service.DeviceProductService; 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.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
@@ -56,6 +58,7 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im
@Resource private DevicePeriodCheckService devicePeriodCheckService; @Resource private DevicePeriodCheckService devicePeriodCheckService;
@Resource private DeviceProductService deviceProductService; @Resource private DeviceProductService deviceProductService;
@Resource private MaterialProductService materialProductService;
@PostMapping("/create") @PostMapping("/create")
@Operation(summary = "创建设备-期间核查") @Operation(summary = "创建设备-期间核查")
@@ -65,9 +68,10 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im
@PutMapping("/update") @PutMapping("/update")
@Operation(summary = "更新设备-期间核查") @Operation(summary = "更新设备-期间核查")
public CommonResult<Boolean> updateDevicePeriodCheck(@Valid @RequestBody DevicePeriodCheckSaveReqVO updateReqVO) { public CommonResult<DevicePeriodCheckRespVO> updateDevicePeriodCheck(@Valid @RequestBody DevicePeriodCheckSaveReqVO updateReqVO) {
devicePeriodCheckService.updateDevicePeriodCheck(updateReqVO); DevicePeriodCheckDO entity = devicePeriodCheckService.updateDevicePeriodCheck(updateReqVO);
return success(true); DevicePeriodCheckRespVO vo = BeanUtils.toBean(entity, DevicePeriodCheckRespVO.class);
return success(vo);
} }
@DeleteMapping("/delete") @DeleteMapping("/delete")
@@ -95,11 +99,19 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im
return success(BeanUtils.toBean(devicePeriodCheck, DevicePeriodCheckRespVO.class)); return success(BeanUtils.toBean(devicePeriodCheck, DevicePeriodCheckRespVO.class));
} }
@GetMapping("/getVO") @GetMapping("/getVoDevice")
@Operation(summary = "获得设备-检定校准") @Operation(summary = "获得设备-检定校准")
@Parameter(name = "id", description = "编号", required = true, example = "1024") @Parameter(name = "id", description = "编号", required = true, example = "1024")
public CommonResult<DevicePeriodCheckVO> getVO(@RequestParam("id") Long id) { public CommonResult<DevicePeriodCheckVO> getVoDevice(@RequestParam("id") Long id) {
DevicePeriodCheckVO vo = devicePeriodCheckService.getDevicePeriodCheckVO(id); DevicePeriodCheckVO vo = devicePeriodCheckService.getVoDevice(id);
return success(vo);
}
@GetMapping("/getVoMaterial")
@Operation(summary = "获得设备-检定校准")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
public CommonResult<DevicePeriodCheckVO> getVoMaterial(@RequestParam("id") Long id) {
DevicePeriodCheckVO vo = devicePeriodCheckService.getVoMaterial(id);
return success(vo); return success(vo);
} }
@@ -109,9 +121,9 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im
return devicePeriodCheckService.submitApply(param); return devicePeriodCheckService.submitApply(param);
} }
@GetMapping("/page") @GetMapping("/pageDevice")
@Operation(summary = "获得设备-期间核查分页") @Operation(summary = "获得设备-期间核查分页")
public CommonResult<PageResult<DevicePeriodCheckVO>> getDevicePeriodCheckPage(@Valid DevicePeriodCheckPageReqVO param) { public CommonResult<PageResult<DevicePeriodCheckVO>> pageDevice(@Valid DevicePeriodCheckPageReqVO param) {
Page<DevicePeriodCheckPageReqVO> page = new Page<>(param.getPageNo(), param.getPageSize()); Page<DevicePeriodCheckPageReqVO> page = new Page<>(param.getPageNo(), param.getPageSize());
Long productId = param.getProductId(); Long productId = param.getProductId();
if(!ObjectUtils.isEmpty(productId)){ if(!ObjectUtils.isEmpty(productId)){
@@ -124,7 +136,29 @@ public class DevicePeriodCheckController extends AbstractFileUploadController im
param.setFlowStatusList(Arrays.asList(flowStatus.split(","))); param.setFlowStatusList(Arrays.asList(flowStatus.split(",")));
param.setFlowStatus(""); param.setFlowStatus("");
} }
IPage<DevicePeriodCheckVO> pageList = devicePeriodCheckService.queryPageList(page, param); param.setCheckTarget(DeviceConstant.PERIOD_CHECK_TAGET_DEVICE);
IPage<DevicePeriodCheckVO> pageList = devicePeriodCheckService.queryPageListDevice(page, param);
PageResult<DevicePeriodCheckVO> pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal());
return CommonResult.success(pageResult);
}
@GetMapping("/pageMaterial")
@Operation(summary = "获得设备-期间核查分页")
public CommonResult<PageResult<DevicePeriodCheckVO>> pageMaterial(@Valid DevicePeriodCheckPageReqVO param) {
Page<DevicePeriodCheckPageReqVO> page = new Page<>(param.getPageNo(), param.getPageSize());
Long productId = param.getProductId();
if(!ObjectUtils.isEmpty(productId)){
List<Long> 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<DevicePeriodCheckVO> pageList = devicePeriodCheckService.queryPageListMaterial(page, param);
PageResult<DevicePeriodCheckVO> pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal()); PageResult<DevicePeriodCheckVO> pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal());
return CommonResult.success(pageResult); return CommonResult.success(pageResult);
} }

View File

@@ -55,11 +55,18 @@ public class DevicePeriodCheckPlanController extends AbstractFileUploadControlle
@Resource @Resource
private DevicePeriodCheckPlanService devicePeriodCheckPlanService; private DevicePeriodCheckPlanService devicePeriodCheckPlanService;
@PostMapping("/createPlan") @PostMapping("/createPlanDevice")
@Operation(summary = "创建设备-期间核查计划") @Operation(summary = "创建设备-期间核查计划")
public CommonResult<DevicePeriodCheckPlanRespVO> createDevicePeriodCheckPlan(@RequestBody JSONObject param) { public CommonResult<DevicePeriodCheckPlanRespVO> createPlanDevice(@RequestBody JSONObject param) {
String checkYear = param.getString("checkYear"); String checkYear = param.getString("checkYear");
return success(devicePeriodCheckPlanService.createPlan(checkYear)); return success(devicePeriodCheckPlanService.createPlanDevice(checkYear));
}
@PostMapping("/createPlanMaterial")
@Operation(summary = "创建设备-期间核查计划")
public CommonResult<DevicePeriodCheckPlanRespVO> createPlanMaterial(@RequestBody JSONObject param) {
String checkYear = param.getString("checkYear");
return success(devicePeriodCheckPlanService.createPlanMaterial(checkYear));
} }
@RequestMapping("/savePlan") @RequestMapping("/savePlan")

View File

@@ -52,4 +52,7 @@ public class DeviceCalibrationVO extends DeviceCalibrationRespVO{
private String deviceCode; //管理编号 private String deviceCode; //管理编号
private String factoryCode; //出厂编号 private String factoryCode; //出厂编号
//============其他字段============
private JSONObject signatureData;
} }

View File

@@ -59,6 +59,9 @@ public class DevicePeriodCheckPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] checkDate; private LocalDateTime[] checkDate;
@Schema(description = "核查对象类型")
private String checkTarget;
@Schema(description = "上次检查日期") @Schema(description = "上次检查日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] lastCheckDate; private LocalDateTime[] lastCheckDate;
@@ -92,7 +95,7 @@ public class DevicePeriodCheckPageReqVO extends PageParam {
private LocalDateTime[] createTime; private LocalDateTime[] createTime;
//======================设备大类字段============================== //======================设备大类字段==========================

View File

@@ -40,6 +40,9 @@ public class DevicePeriodCheckPlanPageReqVO extends PageParam {
@Schema(description = "数据类型,班组/汇总", example = "1") @Schema(description = "数据类型,班组/汇总", example = "1")
private String dataType; private String dataType;
@Schema(description = "核查对象类型")
private String checkTarget;
@Schema(description = "作废标识0-有效1-作废") @Schema(description = "作废标识0-有效1-作废")
private String cancelFlag; private String cancelFlag;

Some files were not shown because too many files have changed in this diff Show More