From b1c6c32fdcee89f97c05bd21f4fb0b95f4009764 Mon Sep 17 00:00:00 2001 From: yaowanxin <3588231647@qq.com> Date: 星期六, 19 七月 2025 10:18:26 +0800 Subject: [PATCH] 修改方法 --- cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java | 60 ++++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 38 insertions(+), 22 deletions(-) diff --git a/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java b/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java index 2192576..a9ac09f 100644 --- a/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java +++ b/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java @@ -25,7 +25,7 @@ import com.ruoyi.device.pojo.*; import com.ruoyi.device.service.DataConfigService; import com.ruoyi.device.service.DeviceService; -import com.ruoyi.device.service.DocumentService; +import com.ruoyi.device.service.DeviceDocumentsService; import com.ruoyi.device.utils.DataAcquisition; import com.ruoyi.framework.exception.ErrorException; import com.ruoyi.inspect.mapper.InsSampleMapper; @@ -45,6 +45,7 @@ import java.io.OutputStream; import java.net.URLEncoder; import java.text.SimpleDateFormat; +import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; @@ -65,11 +66,9 @@ private DataConfigService dataConfigService; - private QrShowServiceImpl qrShowService; - private InsSampleMapper insSampleMapper; - private DocumentService documentService; + private DeviceDocumentsService documentService; private DeviceMetricRecordMapper deviceMetricRecordMapper; @@ -96,10 +95,6 @@ @Transactional(rollbackFor = Exception.class) @Override public int upDeviceParameter(Device itemParameter) { - // 鍒犻櫎鏁伴噰闆嗛厤缃暟鎹� - dataConfigService.deleteDataConfig(); - // 闇�瑕佸悓鏃舵洿鏀� device琛� - return deviceMapper.updateById(itemParameter); } @@ -117,11 +112,6 @@ @Override public List<Device> search(Integer status, String deviceName, String specificationModel, String largeCategory) { return deviceMapper.search(status, deviceName, specificationModel, largeCategory); - } - - @Override - public List<Device> selectDevicePrincipal() { - return deviceMapper.selectDevicePrincipal(); } @Override @@ -171,7 +161,7 @@ } deviceDto.setAuthorizedPersonName(name); //鏌ヨ璁惧鏍″噯淇℃伅 - DeviceMetricRecord calibrate = qrShowService.getDeviceMetricRecord(id, "calibrate"); + DeviceMetricRecord calibrate = getDeviceMetricRecord(id, "calibrate"); deviceDto.setCalibrateNo(calibrate.getCertificateSerialNumber()); // 鍒颁簡鍋滅敤鏃ユ湡锛岃嚜鍔ㄥ皢鐘舵�佹敼涓哄仠鐢� @@ -187,8 +177,25 @@ return deviceDto; } + /** + * 鏌ヨ璁惧鏍″噯/鏍告煡璁板綍 + * @param deviceId + * @param type + * @return + */ + public DeviceMetricRecord getDeviceMetricRecord(int deviceId, String type){ + return Optional.ofNullable( + deviceMetricRecordMapper.selectOne(Wrappers.<DeviceMetricRecord>lambdaQuery() + .eq(DeviceMetricRecord::getDeviceId, deviceId) + .eq(DeviceMetricRecord::getType, type) + .orderByDesc(DeviceMetricRecord::getCreateTime) + .last("limit 1"))).orElse(new DeviceMetricRecord()); + } + @Override public Result<?> dataAcquisition(HttpServletRequest request, DeviceCollectionDto dto) { + + // 鏌ヨ妫�楠岄」 List<Integer> itemIds = dto.getItemIds(); @@ -230,18 +237,25 @@ // 鏁伴噰杩斿洖淇℃伅 Map<String, Object> map = new HashMap<>(); for (Device device : deviceList) { + + Device device1 = deviceMapper.selectById(device.getId()); + dto.setDbUserName(device1.getDbUserName()); + dto.setDbPassword(device1.getDbPassword()); String ip = device.getIp(); + // 鏍规嵁妫�楠岄」鑾峰彇config List<DataConfig> list = dataConfigService.list(Wrappers.<DataConfig>lambdaQuery() .in(DataConfig::getStructureItemParameterId, itemParameterIds) .eq(DataConfig::getDeviceId, device.getId())); // 鑾峰彇璁惧閰嶇疆绫� - // 鍒ゆ柇璁惧鏄惁鏄暟瀛楃洿妗� + // 鍒ゆ柇璁惧鏄惁鏄暟瀛楃洿妗CZX-ZB-ER02022 if (device.getManagementNumber().equals("JCZX-ZB-ER02022")) { map.putAll(dataCollectBridge(list, device, dto.getEntrustCode())); + } else { - map.putAll(DataAcquisition.dataAcquisitionEntrance(list, device, dto.getEntrustCode(), dto.getEntrustCode(), ip, insProducts.get(0).getCableTag())); + map.putAll(DataAcquisition.dataAcquisitionEntrance(list, device, dto.getEntrustCode(), dto.getEntrustCode(), ip, insProducts.get(0).getCableTag(),dto.getDbUserName(),dto.getDbPassword())); + } } @@ -309,7 +323,7 @@ // 璁惧淇℃伅 Device device = baseMapper.selectById(deviceId); // 璁惧妗f - List<Document> documentList = documentService.list(Wrappers.<Document>lambdaQuery().eq(Document::getDeviceId, deviceId)); + List<DeviceDocuments> documentList = documentService.list(Wrappers.<DeviceDocuments>lambdaQuery().eq(DeviceDocuments::getDeviceId, deviceId)); // 璁惧鏍″噯琛� List<DeviceMetricRecord> deviceMetricRecordList = deviceMetricRecordMapper.selectList(Wrappers.<DeviceMetricRecord>lambdaQuery().eq(DeviceMetricRecord::getDeviceId, deviceId)); // 璁惧缁翠慨琛� @@ -349,6 +363,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); @@ -393,11 +408,11 @@ DeviceMaintenance deviceMaintenance = deviceMaintenanceList.get(i); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); // 缁翠慨鏃ユ湡 - deviceMetricRecordAndMaintenanceDto.setMaintenanceDateString(deviceMaintenance.getDate().format(dateTimeFormatter)); + deviceMetricRecordAndMaintenanceDto.setMaintenanceDateString(deviceMaintenance.getMaintenanceDate().format(dateTimeFormatter)); // 澶勭悊鏂规硶 - deviceMetricRecordAndMaintenanceDto.setHandlingMethod(deviceMaintenance.getContent()); + deviceMetricRecordAndMaintenanceDto.setHandlingMethod(deviceMaintenance.getMaintenanceContent()); // 澶囨敞 - deviceMetricRecordAndMaintenanceDto.setComments(deviceMaintenance.getComments()); + deviceMetricRecordAndMaintenanceDto.setComments(deviceMaintenance.getRemark()); } deviceMetricRecordAndMaintenanceDtoList.add(deviceMetricRecordAndMaintenanceDto); @@ -411,13 +426,13 @@ * @param documentList 妗f鍒楄〃 * @param documentExportWordDtoList 杩斿洖缁檞ord鐨勬暟鎹垪琛� */ - private static void extracted(List<Document> documentList, List<DocumentExportWordDto> documentExportWordDtoList) { + private static void extracted(List<DeviceDocuments> documentList, List<DocumentExportWordDto> documentExportWordDtoList) { // 缁欐。妗堝姞搴忓彿 骞朵笖鍒嗕负宸﹀彸涓や釜鍒楄〃鍦╳ord涓樉绀� for (int i = 0; i < documentList.size(); i++) { // 鍒涘缓word琛ㄦ牸涓竴琛岀殑鏁版嵁瀵硅薄 DocumentExportWordDto documentExportWordDto = new DocumentExportWordDto(); // 鑾峰彇妗f淇℃伅 - Document document = documentList.get(i); + DeviceDocuments document = documentList.get(i); // 鏍煎紡鍖栨棩鏈� DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); // 鏍规嵁搴忓彿 鍒嗗埆鍔犲叆涓や釜鍒楄〃 @@ -484,6 +499,7 @@ template.write(os); os.flush(); os.close(); + inputStream.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException("瀵煎嚭澶辫触"); -- Gitblit v1.9.3