feat:报告-iwork用印回调;设备-检定校准接口
This commit is contained in:
@@ -2,7 +2,7 @@ package com.zt.plat.module.qms.business.reportdoc.constant;
|
|||||||
|
|
||||||
public class ReportDocConstant {
|
public class ReportDocConstant {
|
||||||
|
|
||||||
public static final String REPORT_DOCUMENT_BUSINESS_FILE_SOURCE_QMS = "qms.reportdoc";
|
public static final String REPORT_DOCUMENT_BUSINESS_FILE_SOURCE_QMS = "qms.reportdoc"; //报告模块产生的文件
|
||||||
public static final String REPORT_DOCUMENT_BUSINESS_FILE_SOURCE_IWORK = "iwork";
|
public static final String REPORT_DOCUMENT_BUSINESS_FILE_SOURCE_IWORK = "iwork"; //iwork产生的文件
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,88 @@
|
|||||||
|
package com.zt.plat.module.qms.business.reportdoc.controller.admin;
|
||||||
|
|
||||||
|
import org.apache.rocketmq.client.producer.DefaultMQProducer;
|
||||||
|
import org.apache.rocketmq.client.producer.SendResult;
|
||||||
|
import org.apache.rocketmq.common.message.Message;
|
||||||
|
import org.apache.rocketmq.client.impl.factory.MQClientInstance;
|
||||||
|
import org.apache.rocketmq.client.impl.MQClientAPIImpl;
|
||||||
|
import org.apache.rocketmq.remoting.protocol.route.BrokerData;
|
||||||
|
import org.apache.rocketmq.remoting.protocol.route.TopicRouteData;
|
||||||
|
|
||||||
|
|
||||||
|
public class RocketMqDebugDemo {
|
||||||
|
|
||||||
|
public static void main(String[] args) throws Exception {
|
||||||
|
// 1. 【标准定义】创建 Producer 实例
|
||||||
|
// 这里的 "MyProducerGroup" 是你的生产者组名,随意定义,但要唯一
|
||||||
|
DefaultMQProducer producer = new DefaultMQProducer("MyProducerGroup");
|
||||||
|
|
||||||
|
// 2. 【关键配置】设置 NameServer 地址
|
||||||
|
// 注意:这里填你映射到宿主机的地址,如 127.0.0.1:9876 或 服务器IP:9876
|
||||||
|
producer.setNamesrvAddr("127.0.0.1:9876");
|
||||||
|
|
||||||
|
// 3. 【可选优化】关闭 VIP 通道 (解决部分网络环境问题)
|
||||||
|
producer.setVipChannelEnabled(false);
|
||||||
|
|
||||||
|
// 4. 启动 Producer
|
||||||
|
producer.start();
|
||||||
|
System.out.println("Producer 启动成功...");
|
||||||
|
|
||||||
|
// ==========================================
|
||||||
|
// 5. 【插入调试代码】在发送消息前,获取路由信息
|
||||||
|
// ==========================================
|
||||||
|
String targetTopic = "SYSTEM_IWORK_BIZ_CALLBACK";
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 获取内部实现对象
|
||||||
|
MQClientInstance factory = producer.getDefaultMQProducerImpl().getmQClientFactory();
|
||||||
|
MQClientAPIImpl apiImpl = factory.getMQClientAPIImpl();
|
||||||
|
|
||||||
|
// 请求路由信息 (超时设为 3000ms)
|
||||||
|
TopicRouteData routeData = apiImpl.getTopicRouteInfoFromNameServer(targetTopic, 3000);
|
||||||
|
|
||||||
|
if (routeData != null && routeData.getBrokerDatas() != null) {
|
||||||
|
System.out.println("\n====== 路由调试信息 ======");
|
||||||
|
for (BrokerData bd : routeData.getBrokerDatas()) {
|
||||||
|
System.out.println("Broker 名称: " + bd.getBrokerName());
|
||||||
|
System.out.println("Cluster 名称: " + bd.getCluster());
|
||||||
|
// 【核心】打印 Broker 地址列表,Key 是 BrokerID (0 代表 Master)
|
||||||
|
System.out.println("Broker 地址列表: " + bd.getBrokerAddrs());
|
||||||
|
|
||||||
|
// 检查地址是否包含内网 IP (如 172.17.x.x)
|
||||||
|
bd.getBrokerAddrs().values().forEach(addr -> {
|
||||||
|
if (addr.startsWith("172.") || addr.startsWith("10.") && !addr.startsWith("10.0.0.")) {
|
||||||
|
System.out.println("⚠️ 警告:发现疑似容器内网 IP: " + addr);
|
||||||
|
System.out.println("⚠️ 这会导致外部 Producer 连接超时!请检查 brokerIP1 配置。");
|
||||||
|
} else {
|
||||||
|
System.out.println("✅ 地址看起来是可达的: " + addr);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
System.out.println("========================\n");
|
||||||
|
} else {
|
||||||
|
System.out.println("❌ 错误:未获取到 Topic [" + targetTopic + "] 的路由信息。");
|
||||||
|
System.out.println("可能原因:Topic 不存在且自动创建被禁用,或 NameServer 连接正常但无数据。");
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println("❌ 获取路由信息失败: " + e.getMessage());
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ==========================================
|
||||||
|
// 6. 【正式发送】如果上面调试没报错,尝试发送
|
||||||
|
// ==========================================
|
||||||
|
try {
|
||||||
|
Message msg = new Message(targetTopic, "TagA", "Hello RocketMQ from Debug Code".getBytes());
|
||||||
|
// 发送超时时间设为 3000ms
|
||||||
|
SendResult sendResult = producer.send(msg, 3000);
|
||||||
|
System.out.println("✅ 发送成功! MessageId: " + sendResult.getMsgId());
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println("❌ 发送失败! 错误信息: " + e.getMessage());
|
||||||
|
e.printStackTrace();
|
||||||
|
} finally {
|
||||||
|
// 7. 关闭 Producer
|
||||||
|
producer.shutdown();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -220,6 +220,7 @@ public class ReportDocumentAssistService {
|
|||||||
fileSaveReqVO.setPath(fileRespDTO.getDirectory());
|
fileSaveReqVO.setPath(fileRespDTO.getDirectory());
|
||||||
fileSaveReqVO.setUrl(fileRespDTO.getUrl());
|
fileSaveReqVO.setUrl(fileRespDTO.getUrl());
|
||||||
fileSaveReqVO.setVersion(mainDO.getDocumentVersion());
|
fileSaveReqVO.setVersion(mainDO.getDocumentVersion());
|
||||||
|
fileSaveReqVO.setType(ReportDocConstant.REPORT_DOCUMENT_BUSINESS_FILE_SOURCE_QMS);
|
||||||
reportDocumentFileService.createReportDocumentFile(fileSaveReqVO);
|
reportDocumentFileService.createReportDocumentFile(fileSaveReqVO);
|
||||||
return BeanUtils.toBean(fileRespDTO, ReportDocumentFileDO.class);
|
return BeanUtils.toBean(fileRespDTO, ReportDocumentFileDO.class);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ public interface ReportDocumentFileService {
|
|||||||
* @return 编号
|
* @return 编号
|
||||||
*/
|
*/
|
||||||
ReportDocumentFileRespVO createReportDocumentFile(@Valid ReportDocumentFileSaveReqVO createReqVO);
|
ReportDocumentFileRespVO createReportDocumentFile(@Valid ReportDocumentFileSaveReqVO createReqVO);
|
||||||
|
ReportDocumentFileDO createReportDocumentFile(ReportDocumentFileDO fileDO);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新检测报告附件
|
* 更新检测报告附件
|
||||||
|
|||||||
@@ -53,6 +53,12 @@ public class ReportDocumentFileServiceImpl implements ReportDocumentFileService
|
|||||||
return BeanUtils.toBean(reportDocumentFile, ReportDocumentFileRespVO.class);
|
return BeanUtils.toBean(reportDocumentFile, ReportDocumentFileRespVO.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ReportDocumentFileDO createReportDocumentFile(ReportDocumentFileDO fileDO) {
|
||||||
|
reportDocumentFileMapper.insert(fileDO);
|
||||||
|
return fileDO;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateReportDocumentFile(ReportDocumentFileSaveReqVO updateReqVO) {
|
public void updateReportDocumentFile(ReportDocumentFileSaveReqVO updateReqVO) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
|
|||||||
@@ -30,11 +30,8 @@ import com.zt.plat.module.qms.business.config.dal.dataobject.ConfigUserSignature
|
|||||||
import com.zt.plat.module.qms.business.config.service.ConfigUserSignatureService;
|
import com.zt.plat.module.qms.business.config.service.ConfigUserSignatureService;
|
||||||
import com.zt.plat.module.qms.business.reportdoc.constant.ReportDocConstant;
|
import com.zt.plat.module.qms.business.reportdoc.constant.ReportDocConstant;
|
||||||
import com.zt.plat.module.qms.business.reportdoc.controller.vo.*;
|
import com.zt.plat.module.qms.business.reportdoc.controller.vo.*;
|
||||||
import com.zt.plat.module.qms.business.reportdoc.dal.dataobject.ReportDocumentDataDO;
|
import com.zt.plat.module.qms.business.reportdoc.dal.dataobject.*;
|
||||||
import com.zt.plat.module.qms.business.reportdoc.dal.dataobject.ReportDocumentMainCorrelationDO;
|
|
||||||
import com.zt.plat.module.qms.business.reportdoc.dal.dataobject.ReportDocumentTypeDO;
|
|
||||||
import com.zt.plat.module.qms.business.reportdoc.dal.mapper.ReportDocumentMainMapper;
|
import com.zt.plat.module.qms.business.reportdoc.dal.mapper.ReportDocumentMainMapper;
|
||||||
import com.zt.plat.module.qms.business.reportdoc.dal.dataobject.ReportDocumentMainDO;
|
|
||||||
import com.zt.plat.module.qms.common.data.service.DataKeyCheckService;
|
import com.zt.plat.module.qms.common.data.service.DataKeyCheckService;
|
||||||
import com.zt.plat.module.qms.core.code.SequenceUtil;
|
import com.zt.plat.module.qms.core.code.SequenceUtil;
|
||||||
import com.zt.plat.module.qms.enums.QmsBpmConstant;
|
import com.zt.plat.module.qms.enums.QmsBpmConstant;
|
||||||
@@ -80,6 +77,7 @@ public class ReportDocumentMainServiceImpl implements ReportDocumentMainService,
|
|||||||
@Resource private ConfigUserSignatureService configUserSignatureService;
|
@Resource private ConfigUserSignatureService configUserSignatureService;
|
||||||
@Resource private BusinessSampleEntrustRegistrationService businessSampleEntrustRegistrationService;
|
@Resource private BusinessSampleEntrustRegistrationService businessSampleEntrustRegistrationService;
|
||||||
@Resource private ReportDocumentAssistService reportDocumentAssistService;
|
@Resource private ReportDocumentAssistService reportDocumentAssistService;
|
||||||
|
@Resource private ReportDocumentFileService reportDocumentFileService;
|
||||||
@Resource private DataKeyCheckService dataKeyCheckService;
|
@Resource private DataKeyCheckService dataKeyCheckService;
|
||||||
@Resource private SequenceUtil sequenceUtil;
|
@Resource private SequenceUtil sequenceUtil;
|
||||||
|
|
||||||
@@ -434,7 +432,6 @@ public class ReportDocumentMainServiceImpl implements ReportDocumentMainService,
|
|||||||
throw exception0(ERROR_CODE_MODULE_COMMON, result.getMsg());
|
throw exception0(ERROR_CODE_MODULE_COMMON, result.getMsg());
|
||||||
}
|
}
|
||||||
entity.setFlowStatus(QmsCommonConstant.IN_PROGRESS);
|
entity.setFlowStatus(QmsCommonConstant.IN_PROGRESS);
|
||||||
//todo 生成报告编号 documentCode
|
|
||||||
reportDocumentMainMapper.updateById(entity);
|
reportDocumentMainMapper.updateById(entity);
|
||||||
ReportDocumentMainRespVO respVO = BeanUtils.toBean(entity, ReportDocumentMainRespVO.class);
|
ReportDocumentMainRespVO respVO = BeanUtils.toBean(entity, ReportDocumentMainRespVO.class);
|
||||||
return CommonResult.success(respVO);
|
return CommonResult.success(respVO);
|
||||||
@@ -469,7 +466,6 @@ public class ReportDocumentMainServiceImpl implements ReportDocumentMainService,
|
|||||||
return CommonResult.success(respVO);
|
return CommonResult.success(respVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//流程回调
|
//流程回调
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
@@ -594,7 +590,8 @@ public class ReportDocumentMainServiceImpl implements ReportDocumentMainService,
|
|||||||
public CommonResult<String> execCallBackByIwork(IWorkBizCallbackMessage message){
|
public CommonResult<String> execCallBackByIwork(IWorkBizCallbackMessage message){
|
||||||
JSONObject payload = new JSONObject();
|
JSONObject payload = new JSONObject();
|
||||||
try{
|
try{
|
||||||
payload = JSONObject.parseObject((String) message.getPayload());
|
Map<String, Object> payloadMap = (Map<String, Object>) message.getPayload();
|
||||||
|
payload = new JSONObject(payloadMap);
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
log.error("iwork用印回调,解析回调数据失败", e.getMessage());
|
log.error("iwork用印回调,解析回调数据失败", e.getMessage());
|
||||||
e.getMessage();
|
e.getMessage();
|
||||||
@@ -605,7 +602,7 @@ public class ReportDocumentMainServiceImpl implements ReportDocumentMainService,
|
|||||||
String fileName = payload.getString("fileName");
|
String fileName = payload.getString("fileName");
|
||||||
String requestId = payload.getString("requestId");
|
String requestId = payload.getString("requestId");
|
||||||
//获取主数据
|
//获取主数据
|
||||||
ReportDocumentMainDO entity = getByCode(businessCode);
|
ReportDocumentMainDO mainDO = getByCode(businessCode);
|
||||||
|
|
||||||
//查询附件对象
|
//查询附件对象
|
||||||
BusinessFilePageReqDTO pageReqDTO = new BusinessFilePageReqDTO();
|
BusinessFilePageReqDTO pageReqDTO = new BusinessFilePageReqDTO();
|
||||||
@@ -625,20 +622,30 @@ public class ReportDocumentMainServiceImpl implements ReportDocumentMainService,
|
|||||||
BusinessFileRespDTO bisFile = bisFileList.get(0);
|
BusinessFileRespDTO bisFile = bisFileList.get(0);
|
||||||
Long fileId = bisFile.getFileId();
|
Long fileId = bisFile.getFileId();
|
||||||
CommonResult<FileRespDTO> fileRet = fileApi.getFile(fileId);
|
CommonResult<FileRespDTO> fileRet = fileApi.getFile(fileId);
|
||||||
FileRespDTO file = fileRet.getData();
|
FileRespDTO fileRespDTO = fileRet.getData();
|
||||||
//写入ReportDocumentFile
|
//写入ReportDocumentFile
|
||||||
ReportDocumentFileSaveReqVO fileSaveReqVO = new ReportDocumentFileSaveReqVO();
|
ReportDocumentFileDO documentFileDO = new ReportDocumentFileDO();
|
||||||
// fileSaveReqVO.setMainId(mainDO.getId());
|
documentFileDO.setMainId(mainDO.getId());
|
||||||
// fileSaveReqVO.setFileId(fileRespDTO.getId());
|
documentFileDO.setFileId(fileRespDTO.getId());
|
||||||
// fileSaveReqVO.setName(filename);
|
documentFileDO.setName(fileName);
|
||||||
// fileSaveReqVO.setPath(fileRespDTO.getDirectory());
|
documentFileDO.setPath(fileRespDTO.getDirectory());
|
||||||
// fileSaveReqVO.setUrl(fileRespDTO.getUrl());
|
documentFileDO.setUrl(fileRespDTO.getUrl());
|
||||||
// fileSaveReqVO.setVersion(mainDO.getDocumentVersion());
|
documentFileDO.setVersion(mainDO.getDocumentVersion());
|
||||||
// reportDocumentFileService.createReportDocumentFile(fileSaveReqVO);
|
documentFileDO.setType(ReportDocConstant.REPORT_DOCUMENT_BUSINESS_FILE_SOURCE_IWORK);
|
||||||
|
reportDocumentFileService.createReportDocumentFile(documentFileDO);
|
||||||
|
|
||||||
//触发流程提交
|
//触发流程提交
|
||||||
|
String flowInsId = mainDO.getFlowInstanceId();
|
||||||
return null;
|
CommonResult<List<BpmTaskRespDTO>> taskRet = bpmTaskApi.getTaskListByProcessInstanceId(flowInsId);
|
||||||
|
List<BpmTaskRespDTO> taskList = taskRet.getData();
|
||||||
|
if(taskList.isEmpty())
|
||||||
|
throw exception0(ERROR_CODE_MODULE_COMMON, "流程任务查询失败,请联系管理员处理");
|
||||||
|
String taskId = taskList.get(taskList.size() - 1).getId();
|
||||||
|
//驳回后重新提交
|
||||||
|
BpmTaskApproveReqDTO reqVO = new BpmTaskApproveReqDTO();
|
||||||
|
reqVO.setId(taskId);
|
||||||
|
CommonResult<Boolean> result = bpmProcessInstanceApi.approveTask(reqVO);
|
||||||
|
return CommonResult.success("");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,10 +22,10 @@ public class DeviceUtil {
|
|||||||
* @param frequency 频率
|
* @param frequency 频率
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static LocalDateTime[] getDateRangeByFrequency(LocalDate date, boolean nextFlag, String frequencyType, String frequency) {
|
public static LocalDateTime[] getDateRangeByFrequency(LocalDateTime date, boolean nextFlag, String frequencyType, String frequency) {
|
||||||
LocalDate referenceDate = (date != null) ? date : LocalDate.now();
|
LocalDateTime referenceDate = (date != null) ? date : LocalDateTime.now();
|
||||||
LocalDate startDate = null;
|
LocalDateTime startDate = null;
|
||||||
LocalDate endDate = null;
|
LocalDateTime endDate = null;
|
||||||
int frequencyInt = Integer.parseInt(frequency);
|
int frequencyInt = Integer.parseInt(frequency);
|
||||||
if(!nextFlag)
|
if(!nextFlag)
|
||||||
frequencyInt --;
|
frequencyInt --;
|
||||||
@@ -56,8 +56,8 @@ public class DeviceUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return new LocalDateTime[]{
|
return new LocalDateTime[]{
|
||||||
LocalDateTime.of(startDate, LocalTime.of(0, 0, 0)),
|
LocalDateTime.of(startDate.toLocalDate(), LocalTime.of(0, 0, 0)),
|
||||||
LocalDateTime.of(endDate, LocalTime.of(23, 59, 59))
|
LocalDateTime.of(endDate.toLocalDate(), LocalTime.of(23, 59, 59))
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -128,7 +128,7 @@ public class DeviceUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
LocalDate lastDate = LocalDate.of(2025, 3 , 25);
|
LocalDateTime lastDate = LocalDateTime.of(2025, 3 , 25, 0, 0);
|
||||||
String frequencyType = "month";
|
String frequencyType = "month";
|
||||||
String frequency = "3";
|
String frequency = "3";
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,14 @@
|
|||||||
package com.zt.plat.module.qms.resource.device.controller.admin;
|
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.controller.vo.DeviceCalibrationPageReqVO;
|
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationPageReqVO;
|
||||||
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationRespVO;
|
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationRespVO;
|
||||||
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationSaveReqVO;
|
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationSaveReqVO;
|
||||||
|
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationVO;
|
||||||
|
import com.zt.plat.module.qms.resource.device.service.DeviceCalibrationPlanService;
|
||||||
|
import com.zt.plat.module.qms.resource.device.service.DeviceProductService;
|
||||||
|
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;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
@@ -52,19 +58,18 @@ public class DeviceCalibrationController extends AbstractFileUploadController im
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Resource
|
@Resource private DeviceCalibrationService deviceCalibrationService;
|
||||||
private DeviceCalibrationService deviceCalibrationService;
|
@Resource private DeviceCalibrationPlanService deviceCalibrationPlanService;
|
||||||
|
@Resource private DeviceProductService deviceProductService;
|
||||||
|
|
||||||
@PostMapping("/create")
|
@PostMapping("/create")
|
||||||
@Operation(summary = "创建设备-检定校准")
|
@Operation(summary = "创建设备-检定校准")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration:create')")
|
|
||||||
public CommonResult<DeviceCalibrationRespVO> createDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO createReqVO) {
|
public CommonResult<DeviceCalibrationRespVO> createDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO createReqVO) {
|
||||||
return success(deviceCalibrationService.createDeviceCalibration(createReqVO));
|
return success(deviceCalibrationService.createDeviceCalibration(createReqVO));
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
@Operation(summary = "更新设备-检定校准")
|
@Operation(summary = "更新设备-检定校准")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration:update')")
|
|
||||||
public CommonResult<Boolean> updateDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO updateReqVO) {
|
public CommonResult<Boolean> updateDeviceCalibration(@Valid @RequestBody DeviceCalibrationSaveReqVO updateReqVO) {
|
||||||
deviceCalibrationService.updateDeviceCalibration(updateReqVO);
|
deviceCalibrationService.updateDeviceCalibration(updateReqVO);
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -73,7 +78,6 @@ public class DeviceCalibrationController extends AbstractFileUploadController im
|
|||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/delete")
|
||||||
@Operation(summary = "删除设备-检定校准")
|
@Operation(summary = "删除设备-检定校准")
|
||||||
@Parameter(name = "id", description = "编号", required = true)
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration:delete')")
|
|
||||||
public CommonResult<Boolean> deleteDeviceCalibration(@RequestParam("id") Long id) {
|
public CommonResult<Boolean> deleteDeviceCalibration(@RequestParam("id") Long id) {
|
||||||
deviceCalibrationService.deleteDeviceCalibration(id);
|
deviceCalibrationService.deleteDeviceCalibration(id);
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -91,7 +95,6 @@ public class DeviceCalibrationController extends AbstractFileUploadController im
|
|||||||
@GetMapping("/get")
|
@GetMapping("/get")
|
||||||
@Operation(summary = "获得设备-检定校准")
|
@Operation(summary = "获得设备-检定校准")
|
||||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration:query')")
|
|
||||||
public CommonResult<DeviceCalibrationRespVO> getDeviceCalibration(@RequestParam("id") Long id) {
|
public CommonResult<DeviceCalibrationRespVO> getDeviceCalibration(@RequestParam("id") Long id) {
|
||||||
DeviceCalibrationDO deviceCalibration = deviceCalibrationService.getDeviceCalibration(id);
|
DeviceCalibrationDO deviceCalibration = deviceCalibrationService.getDeviceCalibration(id);
|
||||||
return success(BeanUtils.toBean(deviceCalibration, DeviceCalibrationRespVO.class));
|
return success(BeanUtils.toBean(deviceCalibration, DeviceCalibrationRespVO.class));
|
||||||
@@ -99,18 +102,33 @@ public class DeviceCalibrationController extends AbstractFileUploadController im
|
|||||||
|
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@Operation(summary = "获得设备-检定校准分页")
|
@Operation(summary = "获得设备-检定校准分页")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration:query')")
|
public CommonResult<PageResult<DeviceCalibrationRespVO>> getDeviceCalibrationPage(@Valid DeviceCalibrationPageReqVO param) {
|
||||||
public CommonResult<PageResult<DeviceCalibrationRespVO>> getDeviceCalibrationPage(@Valid DeviceCalibrationPageReqVO pageReqVO) {
|
|
||||||
PageResult<DeviceCalibrationDO> pageResult = deviceCalibrationService.getDeviceCalibrationPage(pageReqVO);
|
Page<DeviceCalibrationPageReqVO> page = new Page<>(param.getPageNo(), param.getPageSize());
|
||||||
return success(BeanUtils.toBean(pageResult, DeviceCalibrationRespVO.class));
|
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("");
|
||||||
|
}
|
||||||
|
IPage<DeviceCalibrationVO> pageList = deviceCalibrationService.queryPageList(page, param);
|
||||||
|
PageResult pageResult = new PageResult<>(pageList.getRecords(), pageList.getTotal());
|
||||||
|
return CommonResult.success(pageResult);
|
||||||
|
|
||||||
|
// PageResult<DeviceCalibrationDO> pageResult = deviceCalibrationService.getDeviceCalibrationPage(pageReqVO);
|
||||||
|
// return success(BeanUtils.toBean(pageResult, DeviceCalibrationRespVO.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/export-excel")
|
@GetMapping("/export-excel")
|
||||||
@Operation(summary = "导出设备-检定校准 Excel")
|
@Operation(summary = "导出设备-检定校准 Excel")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration:export')")
|
@PreAuthorize("@ss.hasPermission('qms:device-calibration:export')")
|
||||||
@ApiAccessLog(operateType = EXPORT)
|
@ApiAccessLog(operateType = EXPORT)
|
||||||
public void exportDeviceCalibrationExcel(@Valid DeviceCalibrationPageReqVO pageReqVO,
|
public void exportDeviceCalibrationExcel(@Valid DeviceCalibrationPageReqVO pageReqVO, HttpServletResponse response) throws IOException {
|
||||||
HttpServletResponse response) throws IOException {
|
|
||||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
List<DeviceCalibrationDO> list = deviceCalibrationService.getDeviceCalibrationPage(pageReqVO).getList();
|
List<DeviceCalibrationDO> list = deviceCalibrationService.getDeviceCalibrationPage(pageReqVO).getList();
|
||||||
// 导出 Excel
|
// 导出 Excel
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
package com.zt.plat.module.qms.resource.device.controller.admin;
|
package com.zt.plat.module.qms.resource.device.controller.admin;
|
||||||
|
|
||||||
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationPlanPageReqVO;
|
import com.zt.plat.module.qms.resource.device.controller.vo.*;
|
||||||
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationPlanRespVO;
|
|
||||||
import com.zt.plat.module.qms.resource.device.controller.vo.DeviceCalibrationPlanSaveReqVO;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
@@ -55,16 +53,20 @@ public class DeviceCalibrationPlanController extends AbstractFileUploadControlle
|
|||||||
@Resource
|
@Resource
|
||||||
private DeviceCalibrationPlanService deviceCalibrationPlanService;
|
private DeviceCalibrationPlanService deviceCalibrationPlanService;
|
||||||
|
|
||||||
@PostMapping("/create")
|
@PostMapping("/createPlan")
|
||||||
@Operation(summary = "创建设备-检定校准计划")
|
@Operation(summary = "创建设备-检定校准计划")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration-plan:create')")
|
public CommonResult<DeviceCalibrationPlanRespVO> createPlan(String checkYear) {
|
||||||
public CommonResult<DeviceCalibrationPlanRespVO> createDeviceCalibrationPlan(@Valid @RequestBody DeviceCalibrationPlanSaveReqVO createReqVO) {
|
return deviceCalibrationPlanService.createPlan(checkYear);
|
||||||
return success(deviceCalibrationPlanService.createDeviceCalibrationPlan(createReqVO));
|
}
|
||||||
|
|
||||||
|
@RequestMapping("/submitApply")
|
||||||
|
@Operation(summary = "提交申请")
|
||||||
|
public CommonResult<DeviceCalibrationPlanRespVO> submitApply(@RequestBody DeviceCalibrationPlanSaveReqVO param) {
|
||||||
|
return deviceCalibrationPlanService.submitApply(param);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
@Operation(summary = "更新设备-检定校准计划")
|
@Operation(summary = "更新设备-检定校准计划")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration-plan:update')")
|
|
||||||
public CommonResult<Boolean> updateDeviceCalibrationPlan(@Valid @RequestBody DeviceCalibrationPlanSaveReqVO updateReqVO) {
|
public CommonResult<Boolean> updateDeviceCalibrationPlan(@Valid @RequestBody DeviceCalibrationPlanSaveReqVO updateReqVO) {
|
||||||
deviceCalibrationPlanService.updateDeviceCalibrationPlan(updateReqVO);
|
deviceCalibrationPlanService.updateDeviceCalibrationPlan(updateReqVO);
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -73,7 +75,6 @@ public class DeviceCalibrationPlanController extends AbstractFileUploadControlle
|
|||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/delete")
|
||||||
@Operation(summary = "删除设备-检定校准计划")
|
@Operation(summary = "删除设备-检定校准计划")
|
||||||
@Parameter(name = "id", description = "编号", required = true)
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration-plan:delete')")
|
|
||||||
public CommonResult<Boolean> deleteDeviceCalibrationPlan(@RequestParam("id") Long id) {
|
public CommonResult<Boolean> deleteDeviceCalibrationPlan(@RequestParam("id") Long id) {
|
||||||
deviceCalibrationPlanService.deleteDeviceCalibrationPlan(id);
|
deviceCalibrationPlanService.deleteDeviceCalibrationPlan(id);
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -91,7 +92,6 @@ public class DeviceCalibrationPlanController extends AbstractFileUploadControlle
|
|||||||
@GetMapping("/get")
|
@GetMapping("/get")
|
||||||
@Operation(summary = "获得设备-检定校准计划")
|
@Operation(summary = "获得设备-检定校准计划")
|
||||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration-plan:query')")
|
|
||||||
public CommonResult<DeviceCalibrationPlanRespVO> getDeviceCalibrationPlan(@RequestParam("id") Long id) {
|
public CommonResult<DeviceCalibrationPlanRespVO> getDeviceCalibrationPlan(@RequestParam("id") Long id) {
|
||||||
DeviceCalibrationPlanDO deviceCalibrationPlan = deviceCalibrationPlanService.getDeviceCalibrationPlan(id);
|
DeviceCalibrationPlanDO deviceCalibrationPlan = deviceCalibrationPlanService.getDeviceCalibrationPlan(id);
|
||||||
return success(BeanUtils.toBean(deviceCalibrationPlan, DeviceCalibrationPlanRespVO.class));
|
return success(BeanUtils.toBean(deviceCalibrationPlan, DeviceCalibrationPlanRespVO.class));
|
||||||
@@ -99,7 +99,6 @@ public class DeviceCalibrationPlanController extends AbstractFileUploadControlle
|
|||||||
|
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@Operation(summary = "获得设备-检定校准计划分页")
|
@Operation(summary = "获得设备-检定校准计划分页")
|
||||||
@PreAuthorize("@ss.hasPermission('qms:device-calibration-plan:query')")
|
|
||||||
public CommonResult<PageResult<DeviceCalibrationPlanRespVO>> getDeviceCalibrationPlanPage(@Valid DeviceCalibrationPlanPageReqVO pageReqVO) {
|
public CommonResult<PageResult<DeviceCalibrationPlanRespVO>> getDeviceCalibrationPlanPage(@Valid DeviceCalibrationPlanPageReqVO pageReqVO) {
|
||||||
PageResult<DeviceCalibrationPlanDO> pageResult = deviceCalibrationPlanService.getDeviceCalibrationPlanPage(pageReqVO);
|
PageResult<DeviceCalibrationPlanDO> pageResult = deviceCalibrationPlanService.getDeviceCalibrationPlanPage(pageReqVO);
|
||||||
return success(BeanUtils.toBean(pageResult, DeviceCalibrationPlanRespVO.class));
|
return success(BeanUtils.toBean(pageResult, DeviceCalibrationPlanRespVO.class));
|
||||||
|
|||||||
@@ -22,6 +22,8 @@ import jakarta.servlet.http.*;
|
|||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
@@ -125,11 +127,11 @@ public class DeviceMaintainController extends AbstractFileUploadController imple
|
|||||||
if(!checkResult.isSuccess()){
|
if(!checkResult.isSuccess()){
|
||||||
return checkResult.error(checkResult.getCode(), checkResult.getMsg());
|
return checkResult.error(checkResult.getCode(), checkResult.getMsg());
|
||||||
}
|
}
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
LocalDateTime dateTime = LocalDate.now().atStartOfDay();
|
||||||
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||||
if(ObjectUtils.isEmpty(dateStr))
|
if(ObjectUtils.isEmpty(dateStr))
|
||||||
dateStr = sdf.format(new Date());
|
dateTime = LocalDateTime.parse(dateStr, formatter);
|
||||||
LocalDate localDate = LocalDate.parse(dateStr);
|
return deviceMaintainService.create(deviceId, dateTime, dataType);
|
||||||
return deviceMaintainService.create(deviceId, localDate, dataType);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user