fix(标准主计划): 发送消息

This commit is contained in:
yjz
2024-07-19 17:59:52 +08:00
parent 14984ba590
commit 8adc8e986c
2 changed files with 39 additions and 18 deletions
@@ -45,6 +45,7 @@
left join laws_domestic_standard s on i.standard_id = s.id
where i.del_flag = 0
and s.del_flag = 0
and standard_state <> '7'
and i.create_time > date_format(date_add(now(), interval -90 day), '%Y-%m-%d')
order by i.create_time desc
</select>
@@ -1,6 +1,7 @@
package com.jero.modules.laws.standardmasterplan.job;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.jero.common.api.SendMessageAPI;
import com.jero.common.api.dto.message.SendMessageDTO;
import com.jero.modules.laws.marketStandard.entity.LawsMarketStandard;
@@ -8,10 +9,11 @@ import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardService;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
import com.jero.modules.laws.standardmasterplan.common.LawsStandardMasterPlanCommon;
import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlan;
import com.jero.modules.laws.standardmasterplan.entity.LawsStandardMasterPlanSublist;
import com.jero.modules.laws.standardmasterplan.servicce.ILawsStandardMasterPlanService;
import com.jero.modules.laws.standardmasterplan.servicce.ILawsStandardMasterPlanSublistService;
import com.jero.modules.laws.standardmasterplan.vo.LawsStandardMasterPlanDetailsVO;
import com.jero.modules.laws.standardmasterplan.vo.LawsStandardMasterPlanVO;
import com.jero.modules.system.service.ISysDictService;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
@@ -47,14 +49,17 @@ public class StandardMasterPlanJob implements Job {
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
log.info("标准主计划,给各任务节点的责任人按照计划完成日期的前三天发消息提醒,定时任务开始执行......");
// 导入通知、法规解读、市场法规清单更新、法规符合性排查、车型整改
// 信息输入、导入通知、法规解读、法规宣贯、市场法规清单更新、法规符合性排查、通用文件整改计划、车型整改
long startTime = System.currentTimeMillis();
long count = 0;
List<String> typeList = Arrays.asList(
LawsStandardMasterPlanCommon.TEXT_STORAGE,
LawsStandardMasterPlanCommon.IMPORT_NOTIFICATION,
LawsStandardMasterPlanCommon.INTERPRETATION_OF_REGULATIONS,
LawsStandardMasterPlanCommon.REGULATORY_PROMOTION,
LawsStandardMasterPlanCommon.MARKET_REGULATION_LIST_UPDATE,
LawsStandardMasterPlanCommon.REGULATORY_COMPLIANCE_INVESTIGATION,
LawsStandardMasterPlanCommon.GENERAL_DOCUMENT_RECTIFICATION_PLAN,
LawsStandardMasterPlanCommon.VEHICLE_MODEL_RECTIFICATION);
LambdaQueryWrapper<LawsStandardMasterPlanSublist> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(LawsStandardMasterPlanSublist::getType, typeList);
@@ -63,16 +68,24 @@ public class StandardMasterPlanJob implements Job {
List<LawsStandardMasterPlanSublist> list = lawsStandardMasterPlanSublistService.list(queryWrapper);
// 责任人发送消息
for (LawsStandardMasterPlanSublist lawsStandardMasterPlanSublist : list) {
LawsStandardMasterPlanDetailsVO lawsStandardMasterPlanDetailsVO =
lawsStandardMasterPlanService.queryDetails(lawsStandardMasterPlanSublist.getMasterPlanId());
String standardNumber = "";
String standardName = "";
LawsMarketStandard lawsMarketStandard = new LawsMarketStandard();
LawsStandardMasterPlan lawsStandardMasterPlan =
lawsStandardMasterPlanService.getById(lawsStandardMasterPlanSublist.getMasterPlanId());
LawsStandardMasterPlanVO lawsStandardMasterPlan =
lawsStandardMasterPlanDetailsVO.getLawsStandardMasterPlanVO();
List<LawsStandardMasterPlanSublist> lawsStandardMasterPlanSublistList =
lawsStandardMasterPlanDetailsVO.getLawsStandardMasterPlanSublistList();
LawsStandardMasterPlanSublist lawsStandardMasterPlanSublist2 = lawsStandardMasterPlanSublistList.stream()
.filter(v -> v.getId().equals(lawsStandardMasterPlanSublist.getId()))
.findFirst().get();
LawsDomesticStandard lawsDomesticStandard =
lawsDomesticStandardService.getOne(new LambdaQueryWrapper<LawsDomesticStandard>()
.select(LawsDomesticStandard::getStandardNumber,
LawsDomesticStandard::getStandardName)
.eq(LawsDomesticStandard::getId, lawsStandardMasterPlan.getStandardId()));
LawsMarketStandard lawsMarketStandard = new LawsMarketStandard();
if (!Objects.isNull(lawsDomesticStandard)){
standardNumber = lawsDomesticStandard.getStandardNumber();
standardName = lawsDomesticStandard.getStandardName();
@@ -81,19 +94,26 @@ public class StandardMasterPlanJob implements Job {
SendMessageDTO sendMessageDTO = new SendMessageDTO();
sendMessageDTO.setTemplateCode("laws_standard_master_plan");
sendMessageDTO.setToUserId(lawsStandardMasterPlanSublist.getResponsiblePerson());
Map<String, String> map = new HashMap<>();
map.put("standardNumber", standardNumber);
map.put("standardName", standardName);
String applicableMarket =
sysDictService.queryDictTextByKey("market_state", lawsMarketStandard.getCountry());
map.put("applicableMarket", applicableMarket);
String type = sysDictService.queryDictTextByKey("laws_standard_master_plan_type",
lawsStandardMasterPlanSublist.getType());
map.put("type", type);
sendMessageDTO.setMap(map);
sendMessageAPI.sendMessage(sendMessageDTO);
++ count;
if (StringUtils.isBlank(lawsStandardMasterPlanSublist2.getResponsiblePerson())){
break;
}
try {
sendMessageDTO.setToUserId(lawsStandardMasterPlanSublist2.getResponsiblePerson());
Map<String, String> map = new HashMap<>();
map.put("standardNumber", standardNumber);
map.put("standardName", standardName);
String applicableMarket =
sysDictService.queryDictText("market_state", lawsMarketStandard.getCountry());
map.put("applicableMarket", applicableMarket);
String type = sysDictService.queryDictText("laws_standard_master_plan_type",
lawsStandardMasterPlanSublist.getType());
map.put("type", type);
sendMessageDTO.setMap(map);
sendMessageAPI.sendMessage(sendMessageDTO);
++ count;
}catch (Exception exception){
log.error("发送消息失败:{}", exception.getMessage());
}
}
long endTime = System.currentTimeMillis();
log.info("标准主计划,给各任务节点的责任人按照计划完成日期的前三天发消息提醒,定时任务结束......");