From 82a57fc77fc3f170c436f205761113c1178d7a7f Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期五, 21 三月 2025 14:54:34 +0800
Subject: [PATCH] 近场/远场检验刷新目录功能修改
---
cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++++--
1 files changed, 36 insertions(+), 2 deletions(-)
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
index 9d198bb..f1723fd 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
@@ -1,6 +1,7 @@
package com.yuanchu.mom.service.impl;
import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -23,6 +24,7 @@
import com.yuanchu.mom.utils.QueryWrappers;
import com.yuanchu.mom.vo.Result;
import lombok.AllArgsConstructor;
+import org.apache.logging.log4j.util.Strings;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -34,6 +36,7 @@
import java.io.OutputStream;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
@@ -52,12 +55,16 @@
private DeviceMapper deviceMapper;
+ private EnumServiceImpl enumService;
+
private UserMapper userMapper;
private StructureItemParameterMapper structureItemParameterMapper;
@Autowired
private DataConfigService dataConfigService;
+
+ private QrShowServiceImpl qrShowService;
private InsSampleMapper insSampleMapper;
@@ -166,8 +173,35 @@
}
@Override
- public Device selectDeviceByCode(String code) {
- return deviceMapper.selectOne(Wrappers.<Device>lambdaQuery().eq(Device::getFactoryNo, code).last("limit 1"));
+ public Device selectDeviceByCode(Integer id) {
+ DeviceDto deviceDto = deviceMapper.selectDeviceByCode(id);
+ List<Integer> ids = new ArrayList<>();
+ if (Strings.isNotEmpty(deviceDto.getAuthorizedPerson())) {
+ if (deviceDto.getAuthorizedPerson().equals("null")) {
+ deviceDto.setAuthorizedPerson("[]");
+ }
+ ids = JSON.parseArray(deviceDto.getAuthorizedPerson(), Integer.class);
+ }
+ String name = "";
+ if (!ids.isEmpty()) {
+ name = userMapper.selectBatchIds(ids).stream().map(User::getName).collect(Collectors.joining(","));
+ }
+ deviceDto.setAuthorizedPersonName(name);
+ //鏌ヨ璁惧鏍″噯淇℃伅
+ DeviceMetricRecord calibrate = qrShowService.getDeviceMetricRecord(id, "calibrate");
+ //deviceDto.setCalibrationDate(qrShowService.formatDate(calibrate.getCalibrationDate(),"yyyy-MM-dd"));
+ deviceDto.setCalibrateNo(calibrate.getCertificateSerialNumber());
+
+ // 鍒颁簡鍋滅敤鏃ユ湡锛岃嚜鍔ㄥ皢鐘舵�佹敼涓哄仠鐢�
+ if (deviceDto.getNextCalibrationDate() != null) {
+ if (LocalDateTime.now().isAfter(deviceDto.getNextCalibrationDate())) {
+ List<Enums> enums = enumService.selectEnumByCategory("璁惧鐘舵��");
+ List<Enums> status = enums.stream().filter(item -> item.getLabel().equals("鍋滅敤")).collect(Collectors.toList());
+ deviceDto.setDeviceStatus(Integer.parseInt(status.get(0).getValue()));
+ deviceMapper.updateById(deviceDto);
+ }
+ }
+ return deviceDto;
}
@Override
--
Gitblit v1.9.3