From 8f781f3cb17187a7ee58f41632c25fbb2aa81cc7 Mon Sep 17 00:00:00 2001 From: linzhijie <19970921lzj> Date: 星期二, 16 三月 2021 19:57:24 +0800 Subject: [PATCH] 补充环境配置 --- src/main/java/com/ots/project/monitor/job/task/SenderEmailReportTask.java | 66 ++++++++++++++++++++++----------- 1 files changed, 44 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/ots/project/monitor/job/task/SenderEmailReportTask.java b/src/main/java/com/ots/project/monitor/job/task/SenderEmailReportTask.java index b848715..4b6b4cf 100644 --- a/src/main/java/com/ots/project/monitor/job/task/SenderEmailReportTask.java +++ b/src/main/java/com/ots/project/monitor/job/task/SenderEmailReportTask.java @@ -1,4 +1,5 @@ package com.ots.project.monitor.job.task; + import com.ots.common.enums.LangTypeEnum; import com.ots.common.enums.ReportTypeEnum; import com.ots.common.enums.SenderCode; @@ -22,14 +23,19 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +/** + * 閭欢鐭俊鍙戦�佷换鍔� + */ @Component("SenderEmailReportTask") @Slf4j public class SenderEmailReportTask { + private static final String SMS_ZJCM = "SMS_ZJCM"; private static final String SMS_ZJCM_INTERNATIONAL = "SMS_ZJCM_INTERNATIONAL"; private static final String EMAIL_126 = "EMAIL_126"; @@ -51,8 +57,9 @@ private TReportTemplateMapper tReportTemplateMapper; @Autowired private ITReportTemplateService itReportTemplateService; + public void senderTask() { - + // 鏌ユ壘report琛ㄥ緱鍑鸿鍙戦�佹姤鍛婄殑鐢ㄦ埛 TExamReport tExamReportTemp = new TExamReport(); tExamReportTemp.setFinish(1); tExamReportTemp.setSendTesterStatus(0); @@ -60,42 +67,51 @@ if (ExamUtil.isListEmpty(tExamReportList)) { return; } - + + // textMapList鐨� List<Map<String, Object>> textMapList = new ArrayList<>(); List<String> deleteFileStrList = new ArrayList<>(); - + // 璇█绫诲瀷 Map<String, LangTypeEnum> langTypeEnumMap = getLangTypeEnumMap(); - + // 鎶ュ憡绫诲瀷 Map<String, ReportTypeEnum> reportTypeEnumMap = getStringReportTypeEnumMap(); - + // 鏌ュ嚭鍏ㄩ儴鐨勬姤鍛婏紝鍑忓皯娑堣�楃殑鎬ц兘 Map<Long, TReportTemplate> tReportTemplateMap = getAllTReportTemplateMap(); - - + + // 閬嶅巻姣忎釜report琛� + // 缁欐祴璇曡�呭彂閫侀偖浠� List<String> allReportList = new ArrayList<>(); - + + // hr 閭 Map<String, List<String>> hrEmail = new HashMap<>(); - + + // 寰幆姣忎釜涓姤鍛婅褰� for (TExamReport tExamReport : tExamReportList) { String[] reportIds = tExamReport.getReportTemplateId().split(","); - + + // 閬嶅巻鍑烘ā鐗堢敓鎴愭枃浠� List<String> reprotList = saveReport(textMapList, deleteFileStrList, langTypeEnumMap, reportTypeEnumMap, tReportTemplateMap, allReportList, tExamReport, reportIds); - + + // 璋冪敤鍙戦�佺▼搴忓彂缁欑敤鎴� if (emailMessage.sendEmailwithAttachment(tExamReport.getMemberEmail(), "娴嬭瘯鎶ュ憡", "鎮ㄥ凡瀹屾垚娴嬭瘯", reprotList.stream().toArray(String[]::new)).isResult()) { tExamReport.setSendTesterStatus(SenderCode.success.getCode()); - } else { + } else { // 鍙戦�佹垚鍔燂紝鍙戦�佸け璐ュ鐞� tExamReport.setSendTesterStatus(SenderCode.fail.getCode()); } - + + // 鍙戦�佺粰Hr if (emailMessage.sendEmailwithAttachment(tExamReport.getTestEmail(), "娴嬭瘯鎶ュ憡", "鎮ㄥ凡瀹屾垚娴嬭瘯", reprotList.stream().toArray(String[]::new)).isResult()) { tExamReport.setSendHrStatus(SenderCode.success.getCode()); - } else { + } else { // 鍙戦�佹垚鍔燂紝鍙戦�佸け璐ュ鐞� tExamReport.setSendHrStatus(SenderCode.fail.getCode()); } + tExamReportService.updateTExamReportStatus(tExamReport); } } + private void setHrFiles(Map<String, List<String>> hrEmail, TExamReport tExamReport, List<String> reprotList) { - + // 淇濈暀鍙戠粰Hr鐨勯偖绠� List<String> hrEmailList = hrEmail.get(tExamReport.getTestEmail()); if (ExamUtil.isListEmpty(hrEmailList)) { List<String> hrFileList = new ArrayList<>(); @@ -105,16 +121,17 @@ hrEmailList.addAll(reprotList); } } + private List<String> saveReport(List<Map<String, Object>> textMapList, List<String> deleteFileStrList, Map<String, LangTypeEnum> langTypeEnumMap, Map<String, ReportTypeEnum> reportTypeEnumMap, Map<Long, TReportTemplate> tReportTemplateMap, List<String> allReportList, TExamReport tExamReport, String[] reportIds) { List<String> sendReportList = new ArrayList<>(); for (String reportId : reportIds) { - + // 妯℃嫙璋冪敤鎺ュ彛 Map<String, String> thaiCalculationMap = new HashMap<>(); MAQReport report = new MAQReport(); WordUtil util = new WordUtil(); - - String reportType = tReportTemplateMap.get(Long.valueOf(reportId)).getReportType(); - String templateType = tReportTemplateMap.get(Long.valueOf(reportId)).getTemplateType(); + // 瀵煎嚭鍩虹鐗堟湰杩樻槸璇︾粏鐗� + String reportType = tReportTemplateMap.get(Long.valueOf(reportId)).getReportType();// "Brief"; + String templateType = tReportTemplateMap.get(Long.valueOf(reportId)).getTemplateType();// "Brief"; String path = ""; Map<String, Object> textMap = new HashMap<>(); TReportTemplate tReportTemplate = tReportTemplateMap.get(Long.valueOf(reportId)); @@ -129,20 +146,23 @@ e.printStackTrace(); continue; } - + + // 鐢熸垚鎶ュ憡鏂囦欢 String zipFileName = util.makeReportFile(path, tReportTemplate, textMap, new HashMap<>(), deleteFileStrList); allReportList.add(zipFileName); for (String fileName : allReportList) { sendReportList.add(EssConfig.getProfile() + "/" + fileName); } - + // 娓呯┖锛岀粰涓嬩竴涓敤鎴风敤 textMapList.clear(); textMap.clear(); - + // 鍒犻櫎涓存椂鏂囦欢 util.deleteFileByStr(deleteFileStrList); } + return sendReportList; } + private Map<Long, TReportTemplate> getAllTReportTemplateMap() { List<TReportTemplate> tReportTemplateList = tReportTemplateMapper.selectTReportTemplateList(new TReportTemplate()); Map<Long, TReportTemplate> tReportTemplateMap = new HashMap<>(); @@ -151,6 +171,7 @@ } return tReportTemplateMap; } + private Map<String, ReportTypeEnum> getStringReportTypeEnumMap() { Map<String, ReportTypeEnum> reportTypeEnumMap = new HashMap<>(); for (ReportTypeEnum reportTypeEnumTemp : ReportTypeEnum.values()) { @@ -158,6 +179,7 @@ } return reportTypeEnumMap; } + private Map<String, LangTypeEnum> getLangTypeEnumMap() { Map<String, LangTypeEnum> langTypeEnumMap = new HashMap<>(); for (LangTypeEnum langTypeEnumTemp : LangTypeEnum.values()) { -- Gitblit v1.9.1