fix:修改站内信消息推送

main
HuangHuiKang 14 hours ago
parent 503e5e8bc2
commit 969ef309f4

@ -22,6 +22,7 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Arrays;
@ -77,6 +78,11 @@ public class GenerateMoldWorkOrderTask implements Task {
if (moldTaskManagementDO == null) {
return;
}
if (!isWithinTaskDateRange(moldTaskManagementDO)) {
logger.info("模具工单任务不在执行日期范围内任务ID: {}, startDate: {}, endDate: {}",
moldTaskManagementDO.getId(), moldTaskManagementDO.getStartDate(), moldTaskManagementDO.getEndDate());
return;
}
List<Long> moldIds = Arrays.stream(moldTaskManagementDO.getMoldList().split(","))
.map(String::trim)
@ -125,6 +131,17 @@ public class GenerateMoldWorkOrderTask implements Task {
}
}
private boolean isWithinTaskDateRange(MoldTaskManagementDO moldTaskManagementDO) {
LocalDate today = LocalDate.now();
if (moldTaskManagementDO.getStartDate() != null && today.isBefore(moldTaskManagementDO.getStartDate())) {
return false;
}
if (moldTaskManagementDO.getEndDate() != null && today.isAfter(moldTaskManagementDO.getEndDate())) {
return false;
}
return true;
}
private void sendMoldTicketCreateNotifyMessage(MoldTaskManagementDO moldTaskManagementDO,
MoldTicketManagementDO moldTicketManagementDO) {
Map<String, Object> templateParams = new HashMap<>();
@ -132,12 +149,21 @@ public class GenerateMoldWorkOrderTask implements Task {
templateParams.put("planNo", Objects.toString(moldTicketManagementDO.getPlanNo(), ""));
templateParams.put("configName", Objects.toString(moldTicketManagementDO.getConfigName(), ""));
templateParams.put("moldName", Objects.toString(moldTicketManagementDO.getMoldName(), ""));
templateParams.put("taskEndTime", formatNotifyDateTime(moldTicketManagementDO.getTaskEndTime()));
templateParams.put("businessType", getMoldBusinessType(moldTicketManagementDO.getPlanType()));
templateParams.put("createTime", formatNotifyDateTime(
moldTicketManagementDO.getCreateTime() != null ? moldTicketManagementDO.getCreateTime() : LocalDateTime.now()));
mesNotifyMessageService.sendToAdmins(moldTaskManagementDO.getOperableUsers(), MOLD_TASK_TICKET_CREATE_NOTIFY_TEMPLATE_CODE,
templateParams, "模具工单", moldTicketManagementDO.getId());
}
private String getMoldBusinessType(Integer taskType) {
if (Integer.valueOf(2).equals(taskType)) {
return "模具保养";
}
return "模具点检";
}
private String formatNotifyDateTime(LocalDateTime dateTime) {
return dateTime == null ? "" : dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}

@ -23,6 +23,7 @@ import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Arrays;
@ -98,6 +99,11 @@ public class GenerateWorkOrderTask implements Task {
if (taskManagementDO == null){
return;
}
if (!isWithinTaskDateRange(taskManagementDO)) {
logger.info("设备工单任务不在执行日期范围内任务ID: {}, startDate: {}, endDate: {}",
taskManagementDO.getId(), taskManagementDO.getStartDate(), taskManagementDO.getEndDate());
return;
}
// 将逗号分隔的字符串转换为Long类型的List
List<Long> idList = Arrays.stream(taskManagementDO.getDeviceList().split(","))
@ -141,18 +147,38 @@ public class GenerateWorkOrderTask implements Task {
}
}
private boolean isWithinTaskDateRange(TaskManagementDO taskManagementDO) {
LocalDate today = LocalDate.now();
if (taskManagementDO.getStartDate() != null && today.isBefore(taskManagementDO.getStartDate())) {
return false;
}
if (taskManagementDO.getEndDate() != null && today.isAfter(taskManagementDO.getEndDate())) {
return false;
}
return true;
}
private void sendTicketCreateNotifyMessage(TaskManagementDO taskManagementDO, TicketManagementDO ticketManagementDO) {
Map<String, Object> templateParams = new HashMap<>();
templateParams.put("ticketId", ticketManagementDO.getId());
templateParams.put("planNo", Objects.toString(ticketManagementDO.getPlanNo(), ""));
templateParams.put("configName", Objects.toString(ticketManagementDO.getConfigName(), ""));
templateParams.put("deviceName", Objects.toString(ticketManagementDO.getDeviceName(), ""));
templateParams.put("taskEndTime", formatNotifyDateTime(ticketManagementDO.getTaskEndTime()));
templateParams.put("businessType", getDeviceBusinessType(ticketManagementDO.getPlanType()));
templateParams.put("createTime", formatNotifyDateTime(
ticketManagementDO.getCreateTime() != null ? ticketManagementDO.getCreateTime() : LocalDateTime.now()));
mesNotifyMessageService.sendToAdmins(taskManagementDO.getOperableUsers(), TASK_TICKET_CREATE_NOTIFY_TEMPLATE_CODE,
templateParams, "设备工单", ticketManagementDO.getId());
}
private String getDeviceBusinessType(Integer taskType) {
if (Integer.valueOf(2).equals(taskType)) {
return "设备保养";
}
return "设备点检";
}
private String formatNotifyDateTime(LocalDateTime dateTime) {
return dateTime == null ? "" : dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}

@ -97,7 +97,9 @@ public class DvRepairServiceImpl implements DvRepairService {
templateParams.put("machineryName", Objects.toString(dvRepair.getMachineryName(), ""));
templateParams.put("faultPhenomenon", Objects.toString(dvRepair.getFaultPhenomenon(), ""));
templateParams.put("faultDescription", Objects.toString(dvRepair.getFaultDescription(), ""));
templateParams.put("requireDate", formatNotifyDateTime(dvRepair.getRequireDate()));
templateParams.put("businessType", "设备维修");
templateParams.put("createTime", formatNotifyDateTime(
dvRepair.getCreateTime() != null ? dvRepair.getCreateTime() : LocalDateTime.now()));
mesNotifyMessageService.sendToAdmin(dvRepair.getAcceptedBy(), DV_REPAIR_CREATE_NOTIFY_TEMPLATE_CODE,
templateParams, "设备维修单", dvRepair.getId());

@ -106,7 +106,9 @@ public class MoldRepairServiceImpl implements MoldRepairService {
templateParams.put("moldName", Objects.toString(moldRepair.getMoldName(), ""));
templateParams.put("faultPhenomenon", Objects.toString(moldRepair.getFaultPhenomenon(), ""));
templateParams.put("faultDescription", Objects.toString(moldRepair.getFaultDescription(), ""));
templateParams.put("requireDate", formatNotifyDateTime(moldRepair.getRequireDate()));
templateParams.put("businessType", "模具维修");
templateParams.put("createTime", formatNotifyDateTime(
moldRepair.getCreateTime() != null ? moldRepair.getCreateTime() : LocalDateTime.now()));
mesNotifyMessageService.sendToAdmin(moldRepair.getAcceptedBy(), MOLD_REPAIR_CREATE_NOTIFY_TEMPLATE_CODE,
templateParams, "模具维修单", moldRepair.getId());

@ -251,12 +251,21 @@ public class MoldTaskManagementServiceImpl implements MoldTaskManagementService
templateParams.put("planNo", Objects.toString(moldticketManagementDO.getPlanNo(), ""));
templateParams.put("configName", Objects.toString(moldticketManagementDO.getConfigName(), ""));
templateParams.put("moldName", Objects.toString(moldticketManagementDO.getMoldName(), ""));
templateParams.put("taskEndTime", formatNotifyDateTime(moldticketManagementDO.getTaskEndTime()));
templateParams.put("businessType", getMoldBusinessType(moldticketManagementDO.getPlanType()));
templateParams.put("createTime", formatNotifyDateTime(
moldticketManagementDO.getCreateTime() != null ? moldticketManagementDO.getCreateTime() : LocalDateTime.now()));
mesNotifyMessageService.sendToAdmins(moldtaskManagementDO.getOperableUsers(), MOLD_TASK_TICKET_CREATE_NOTIFY_TEMPLATE_CODE,
templateParams, "模具工单", moldticketManagementDO.getId());
}
private String getMoldBusinessType(Integer taskType) {
if (Integer.valueOf(2).equals(taskType)) {
return "模具保养";
}
return "模具点检";
}
private String formatNotifyDateTime(LocalDateTime dateTime) {
return dateTime == null ? "" : dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}

@ -249,12 +249,21 @@ public class TaskManagementServiceImpl implements TaskManagementService {
templateParams.put("planNo", Objects.toString(ticketManagementDO.getPlanNo(), ""));
templateParams.put("configName", Objects.toString(ticketManagementDO.getConfigName(), ""));
templateParams.put("deviceName", Objects.toString(ticketManagementDO.getDeviceName(), ""));
templateParams.put("taskEndTime", formatNotifyDateTime(ticketManagementDO.getTaskEndTime()));
templateParams.put("businessType", getDeviceBusinessType(ticketManagementDO.getPlanType()));
templateParams.put("createTime", formatNotifyDateTime(
ticketManagementDO.getCreateTime() != null ? ticketManagementDO.getCreateTime() : LocalDateTime.now()));
mesNotifyMessageService.sendToAdmins(taskManagementDO.getOperableUsers(), TASK_TICKET_CREATE_NOTIFY_TEMPLATE_CODE,
templateParams, "设备工单", ticketManagementDO.getId());
}
private String getDeviceBusinessType(Integer taskType) {
if (Integer.valueOf(2).equals(taskType)) {
return "设备保养";
}
return "设备点检";
}
private String formatNotifyDateTime(LocalDateTime dateTime) {
return dateTime == null ? "" : dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
}

Loading…
Cancel
Save