From ff188c3928ee0ffb89cfd7bc80218d46cb4b8fdc Mon Sep 17 00:00:00 2001 From: xy <748613696@qq.com> Date: Sat, 14 Sep 2024 17:36:16 +0800 Subject: [PATCH] =?UTF-8?q?bug=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../njcn/zlevent/service/ICsWaveService.java | 2 +- .../service/impl/CsWaveServiceImpl.java | 20 +++++++++++++++---- .../zlevent/service/impl/FileServiceImpl.java | 4 ++-- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/ICsWaveService.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/ICsWaveService.java index e19b497..e1756ae 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/ICsWaveService.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/ICsWaveService.java @@ -18,7 +18,7 @@ public interface ICsWaveService extends IService { * @param fileName 文件名称 * @return */ - int findCountByName(String fileName); + boolean findCountByName(String fileName); /** * 修改文件状态 diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java index 10841c6..14c09dc 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java @@ -1,5 +1,6 @@ package com.njcn.zlevent.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -8,6 +9,9 @@ import com.njcn.zlevent.pojo.po.CsWave; import com.njcn.zlevent.service.ICsWaveService; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.Objects; + /** *

* 治理波形文件记录表 服务实现类 @@ -20,10 +24,11 @@ import org.springframework.stereotype.Service; public class CsWaveServiceImpl extends ServiceImpl implements ICsWaveService { @Override - public int findCountByName(String fileName) { - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.like(CsWave::getRcdName,fileName).eq(CsWave::getStatus,1); - return this.baseMapper.selectCount(lambdaQueryWrapper); + public boolean findCountByName(String fileName) { + List csWaveDat = selectCsWave(".dat",fileName); + List csWaveCfg = selectCsWave(".cfg",fileName); + // 判断两个查询结果是否都不为空 + return CollectionUtil.isNotEmpty(csWaveDat) && CollectionUtil.isNotEmpty(csWaveCfg); } @Override @@ -32,4 +37,11 @@ public class CsWaveServiceImpl extends ServiceImpl impleme lambdaQueryWrapper.eq(CsWave::getRcdName,fileName).set(CsWave::getStatus,1); this.update(lambdaQueryWrapper); } + + public List selectCsWave(String suffix, String fileName) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.like(CsWave::getRcdName, fileName.concat(suffix)).eq(CsWave::getStatus, 1); + return this.baseMapper.selectList(lambdaQueryWrapper); + } + } diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/FileServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/FileServiceImpl.java index cc4bf04..27d7538 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/FileServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/FileServiceImpl.java @@ -389,8 +389,8 @@ public class FileServiceImpl implements IFileService { List list = new ArrayList<>(); String[] parts = fileName.split(StrUtil.SLASH); fileName = parts[parts.length - 1].split("\\.")[0]; - int fileCounts = csWaveService.findCountByName(fileName); - if (fileCounts >= 2){ + boolean result = csWaveService.findCountByName(fileName); + if (result){ CsEventParam csEventParam = new CsEventParam(); csEventParam.setLineId(fileInfoDto.getLineId()); csEventParam.setDeviceId(fileInfoDto.getDeviceId());