|
|
@@ -778,11 +778,33 @@ public class RepairApplicationFormServiceImpl
|
|
|
super.modModelByPrimaryKey(applicationForm);
|
|
|
|
|
|
SysUser repairUser = userMapper.selectByPrimaryKey(model.getRepairUserId());
|
|
|
- SpringContextHolder.publishEvent(new WorkplaceBacklogEvent(WorkplaceBacklogTypeEnum.REPAIR.getValue(),
|
|
|
- WorkplaceBacklogDetailTypeEnum.REPAIR_DISPATCH.getValue(),
|
|
|
- applicationForm.getId(), MessageTemplateUtil.getRepairDispatch(applicationForm.getNo()),
|
|
|
- applicationForm.getId(), ListUtils.newArrayList(model.getRepairUserId()),
|
|
|
- ListUtils.newArrayList(repairUser.getEmail())));
|
|
|
+ // 查询设备信息,构建富文本邮件内容
|
|
|
+ SbInfoVO sbInfoVO = sbInfoService.getById(applicationForm.getSbId());
|
|
|
+ String domain = ConfigCache.getLabelByValueAllowNull(SysConfigEnum.SYSTEM_DOMAIN.name());
|
|
|
+ if (StringUtils.isNotBlank(domain)) {
|
|
|
+ if (!domain.endsWith("/")) {
|
|
|
+ domain = domain + "/";
|
|
|
+ }
|
|
|
+ String repairUrl = domain + "repair/form?no=" + applicationForm.getNo();
|
|
|
+ String repairUserName = repairUser != null ? repairUser.getRealName() : null;
|
|
|
+ String emailContent = MessageTemplateUtil.getFreemarkerHtmlContentDispatch(
|
|
|
+ repairUrl,
|
|
|
+ BeanConverterUtil.copyObjectProperties(applicationForm, RepairApplicationFormDTO.class),
|
|
|
+ sbInfoVO, "派工通知", repairUserName, applicationForm.getRepairDispatchRemark(),
|
|
|
+ applicationForm.getLevel());
|
|
|
+ SpringContextHolder.publishEvent(new WorkplaceBacklogEvent(WorkplaceBacklogTypeEnum.REPAIR.getValue(),
|
|
|
+ WorkplaceBacklogDetailTypeEnum.REPAIR_DISPATCH.getValue(),
|
|
|
+ applicationForm.getId(), emailContent,
|
|
|
+ applicationForm.getId(), ListUtils.newArrayList(model.getRepairUserId()),
|
|
|
+ ListUtils.newArrayList(repairUser.getEmail())));
|
|
|
+ } else {
|
|
|
+ // 系统域名未配置时降级为简单文本通知
|
|
|
+ SpringContextHolder.publishEvent(new WorkplaceBacklogEvent(WorkplaceBacklogTypeEnum.REPAIR.getValue(),
|
|
|
+ WorkplaceBacklogDetailTypeEnum.REPAIR_DISPATCH.getValue(),
|
|
|
+ applicationForm.getId(), MessageTemplateUtil.getRepairDispatch(applicationForm.getNo()),
|
|
|
+ applicationForm.getId(), ListUtils.newArrayList(model.getRepairUserId()),
|
|
|
+ ListUtils.newArrayList(repairUser.getEmail())));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1195,15 +1217,34 @@ public class RepairApplicationFormServiceImpl
|
|
|
applicationForm.setUpdateTime(LocalDateTime.now());
|
|
|
super.modModelByPrimaryKey(applicationForm);
|
|
|
|
|
|
- // 通知新维修人
|
|
|
+ // 通知新维修人(含富文本邮件)
|
|
|
if (StringUtils.isNotBlank(applicationForm.getRepairUserId())) {
|
|
|
SysUser repairUser = userMapper.selectByPrimaryKey(applicationForm.getRepairUserId());
|
|
|
if (repairUser != null) {
|
|
|
- SpringContextHolder.publishEvent(new WorkplaceBacklogEvent(WorkplaceBacklogTypeEnum.REPAIR.getValue(),
|
|
|
- WorkplaceBacklogDetailTypeEnum.REPAIR_DISPATCH.getValue(),
|
|
|
- applicationForm.getId(), MessageTemplateUtil.getRepairDispatch(applicationForm.getNo()),
|
|
|
- applicationForm.getId(), ListUtils.newArrayList(applicationForm.getRepairUserId()),
|
|
|
- ListUtils.newArrayList(repairUser.getEmail())));
|
|
|
+ SbInfoVO sbInfoVO = sbInfoService.getById(applicationForm.getSbId());
|
|
|
+ String domain = ConfigCache.getLabelByValueAllowNull(SysConfigEnum.SYSTEM_DOMAIN.name());
|
|
|
+ if (StringUtils.isNotBlank(domain)) {
|
|
|
+ if (!domain.endsWith("/")) {
|
|
|
+ domain = domain + "/";
|
|
|
+ }
|
|
|
+ String repairUrl = domain + "repair/form?no=" + applicationForm.getNo();
|
|
|
+ String emailContent = MessageTemplateUtil.getFreemarkerHtmlContentDispatch(
|
|
|
+ repairUrl,
|
|
|
+ BeanConverterUtil.copyObjectProperties(applicationForm, RepairApplicationFormDTO.class),
|
|
|
+ sbInfoVO, "转派通知", repairUser.getRealName(),
|
|
|
+ applicationForm.getRepairDispatchRemark(), applicationForm.getLevel());
|
|
|
+ SpringContextHolder.publishEvent(new WorkplaceBacklogEvent(WorkplaceBacklogTypeEnum.REPAIR.getValue(),
|
|
|
+ WorkplaceBacklogDetailTypeEnum.REPAIR_DISPATCH.getValue(),
|
|
|
+ applicationForm.getId(), emailContent,
|
|
|
+ applicationForm.getId(), ListUtils.newArrayList(applicationForm.getRepairUserId()),
|
|
|
+ ListUtils.newArrayList(repairUser.getEmail())));
|
|
|
+ } else {
|
|
|
+ SpringContextHolder.publishEvent(new WorkplaceBacklogEvent(WorkplaceBacklogTypeEnum.REPAIR.getValue(),
|
|
|
+ WorkplaceBacklogDetailTypeEnum.REPAIR_DISPATCH.getValue(),
|
|
|
+ applicationForm.getId(), MessageTemplateUtil.getRepairDispatch(applicationForm.getNo()),
|
|
|
+ applicationForm.getId(), ListUtils.newArrayList(applicationForm.getRepairUserId()),
|
|
|
+ ListUtils.newArrayList(repairUser.getEmail())));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|