diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/email/EmailServiceManager.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/email/EmailServiceManager.java index b7ca04b3..24f3f3f5 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/email/EmailServiceManager.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/email/EmailServiceManager.java @@ -126,8 +126,14 @@ public class EmailServiceManager { //如果邮箱邮件数量 > 0 final int messageCount = folder.getMessageCount(); if(messageCount > 0){ + Message[] messages = null; + if(Objects.isNull(this.systemStartupTime)){ + int finalNum = messageCount > this.receiveNum?this.receiveNum:messageCount; + //邮箱邮件下标是从1开始的 + return folder.getMessages(1,finalNum); + } SearchTerm searchTerm = new ReceivedDateTerm(ComparisonTerm.GE,this.systemStartupTime); - Message[] messages = folder.search(searchTerm); + messages = folder.search(searchTerm); Arrays.sort(messages, (o1, o2) -> { try { return o1.getReceivedDate().compareTo(o2.getReceivedDate()); @@ -139,9 +145,8 @@ public class EmailServiceManager { if(this.receiveNum >= messages.length){ return messages; }else{ - messages = Arrays.copyOfRange(messages,0,this.receiveNum-1); + return Arrays.copyOfRange(messages,0,this.receiveNum-1); } - return messages; } return null; } @@ -233,7 +238,6 @@ public class EmailServiceManager { if(part.isMimeType(MailContentType.PLAIN.getContentType())){ content.append(part.getContent()); }else if(part.isMimeType("multipart/*")){ - System.out.println(part.getContentType()); Multipart multipart = (Multipart) part.getContent(); for(int i=0;i { * @param fileName */ public GardsAlertData create(AlertSpectrumStruct struct,String fileName) throws Exception; + + /** + * 查询GardsAlertData + * @param inputFileName + * @return + */ + public GardsAlertData findByInputFileName(String inputFileName); } diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/ISOHSpectrumService.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/ISOHSpectrumService.java index 394517a5..5ff62673 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/ISOHSpectrumService.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/ISOHSpectrumService.java @@ -3,7 +3,6 @@ package org.jeecg.modules.service; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.base.entity.original.GardsSohData; import org.jeecg.modules.native_jni.struct.SOHSpectrumStruct; - import java.util.List; /** diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/AlertSpectrumServiceImpl.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/AlertSpectrumServiceImpl.java index 10ac3480..9595be0c 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/AlertSpectrumServiceImpl.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/AlertSpectrumServiceImpl.java @@ -1,5 +1,6 @@ package org.jeecg.modules.service.impl; +import cn.hutool.core.util.StrUtil; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -7,6 +8,7 @@ import lombok.RequiredArgsConstructor; import org.jeecg.common.util.DateUtils; import org.jeecg.modules.base.entity.configuration.GardsStations; import org.jeecg.modules.base.entity.original.GardsAlertData; +import org.jeecg.modules.file.FileOperation; import org.jeecg.modules.mapper.GardsAlertDataMapper; import org.jeecg.modules.mapper.GardsStationsMapper; import org.jeecg.modules.native_jni.struct.AlertSpectrumStruct; @@ -48,8 +50,25 @@ public class AlertSpectrumServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(GardsAlertData::getInputFileName,inputFileName); + return this.getOne(queryWrapper); + } + return null; + } } diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/MetSpectrumServiceImpl.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/MetSpectrumServiceImpl.java index 2a90c29c..3696307d 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/MetSpectrumServiceImpl.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/service/impl/MetSpectrumServiceImpl.java @@ -8,6 +8,7 @@ import org.apache.commons.compress.utils.Lists; import org.jeecg.common.util.DateUtils; import org.jeecg.modules.base.entity.configuration.GardsStations; import org.jeecg.modules.base.entity.original.GardsMetData; +import org.jeecg.modules.file.FileOperation; import org.jeecg.modules.mapper.GardsMetDataMapper; import org.jeecg.modules.mapper.GardsStationsMapper; import org.jeecg.modules.native_jni.struct.MetSpectrumStruct; @@ -61,7 +62,7 @@ public class MetSpectrumServiceImpl extends ServiceImpl sohDatas; + private List sohData; /** * 设置过滤链路 @@ -134,7 +133,7 @@ public class HealthStatusSpectrum extends AbstractSpectrumHandler{ @Override protected void handlerOriginalData() throws Exception { this.startIntoDatabaseTime = new Date(); - this.sohDatas = spectrumServiceQuotes.getSohSpectrumService().create(this.sourceData, super.spectrumFileRelativePath); + this.sohData = spectrumServiceQuotes.getSohSpectrumService().create(this.sourceData, super.spectrumFileRelativePath); this.endIntoDatabaseTime = new Date(); } @@ -145,8 +144,8 @@ public class HealthStatusSpectrum extends AbstractSpectrumHandler{ protected void saveLogToLogDir() throws IOException { //获取健康谱记录ID范围 String sohIdRange = ""; - if(!CollectionUtils.isEmpty(this.sohDatas)){ - sohIdRange = this.sohDatas.get(0).getSohId()+"-"+this.sohDatas.get(this.sohDatas.size()-1).getSohId(); + if(!CollectionUtils.isEmpty(this.sohData)){ + sohIdRange = this.sohData.get(0).getSohId()+"-"+this.sohData.get(this.sohData.size()-1).getSohId(); } //组装日志文件内容 StringBuilder logContent = new StringBuilder(); @@ -157,7 +156,7 @@ public class HealthStatusSpectrum extends AbstractSpectrumHandler{ logContent.append("------------------- ").append("Write Data into Database Successfully at ").append(DateUtils.formatDate(this.endIntoDatabaseTime,"yyyy-MM-dd HH:mm:ss")).append(" --------------------"); final SpectrumPathProperties properties = this.spectrumServiceQuotes.getSpectrumPathProperties(); - final String dirPath = properties.getLogPath()+File.separator+this.getFileSaveRelativePath(); + final String dirPath = properties.getRootPath()+File.separator+properties.getLogPath()+File.separator+this.getFileSaveRelativePath(); final String fileName = super.spectrumFile.getName().replace(this.currDataType.getSuffix(),LOG_FILE_SUFFIX); final String finalPath = dirPath+ File.separator+fileName; FileOperation.saveOrAppendFile(finalPath,logContent.toString(),true); diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/MetSpectrum.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/MetSpectrum.java index fe038c89..f1c2f9d6 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/MetSpectrum.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/MetSpectrum.java @@ -150,7 +150,7 @@ public class MetSpectrum extends AbstractSpectrumHandler{ logContent.append("------------------- ").append("Write Data into Database Successfully at ").append(DateUtils.formatDate(this.endIntoDatabaseTime,"yyyy-MM-dd HH:mm:ss")).append(" --------------------"); final SpectrumPathProperties properties = this.spectrumServiceQuotes.getSpectrumPathProperties(); - final String dirPath = properties.getLogPath()+File.separator+this.getFileSaveRelativePath(); + final String dirPath = properties.getRootPath()+File.separator+properties.getLogPath()+File.separator+this.getFileSaveRelativePath(); final String fileName = super.spectrumFile.getName().replace(this.currDataType.getSuffix(),LOG_FILE_SUFFIX); final String finalPath = dirPath+File.separator+fileName; FileOperation.saveOrAppendFile(finalPath,logContent.toString(),true); diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SamplephdSpectrum.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SamplephdSpectrum.java index 1d518d60..7c555044 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SamplephdSpectrum.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SamplephdSpectrum.java @@ -50,7 +50,6 @@ public class SamplephdSpectrum extends AbstractS_D_Q_G_SpectrumHandler { super.status = SampleStatus.COMPLETE.getValue(); super.updateStatus(); }catch (Exception e){ - e.printStackTrace(); //修改状态为解析失败 super.status = SampleStatus.FAIL.getValue(); super.updateStatus(); diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumParsingActuator.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumParsingActuator.java index 76e924f2..2b3f1a5d 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumParsingActuator.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumParsingActuator.java @@ -104,7 +104,6 @@ public class SpectrumParsingActuator implements Runnable{ } } } catch (Exception e) { -// log.error(mailContent.toString()); log.error("This email failed to parse. The email subject is: {}, sent on: {}, received on: {}, and the reason for the failure is: {}",subject,sendTime,receiveTime,e.getMessage()); e.printStackTrace(); }finally { diff --git a/jeecg-server-cloud/armd-auto-process-start/src/main/java/org/jeecg/JeecgAutoProcessApplication.java b/jeecg-server-cloud/armd-auto-process-start/src/main/java/org/jeecg/JeecgAutoProcessApplication.java index 5195acdb..40c28ed3 100644 --- a/jeecg-server-cloud/armd-auto-process-start/src/main/java/org/jeecg/JeecgAutoProcessApplication.java +++ b/jeecg-server-cloud/armd-auto-process-start/src/main/java/org/jeecg/JeecgAutoProcessApplication.java @@ -71,7 +71,7 @@ public class JeecgAutoProcessApplication extends SpringBootServletInitializer im System.loadLibrary("ReadPHDFile"); System.loadLibrary("GammaAnaly"); //根据配置文件配置邮件获取策略定义时间条件,默认EmailReceivePolicy.HISTORY_ORDER_RECEIVE.getPolicy() - Date systemStartupTime = DateUtils.parseDate("1970-01-01 00:00:00","yyyy-MM-dd HH:mm:ss"); + Date systemStartupTime = null; if(EmailReceivePolicy.CURR_DATE_ORDER_RECEIVE.getPolicy().equals(taskProperties.getReceivePolicy())){ systemStartupTime = new Date(); }