add laws-modules-docking 模块
This commit is contained in:
@@ -7,10 +7,10 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.SendMessageAPI;
|
||||
import com.jero.common.api.dto.message.HiworkTodoAdd;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.modules.common.service.SendMessageAPI;
|
||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
package com.jero.modules.common.service;
|
||||
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/10/27 15:15
|
||||
* @Description: 发送消息
|
||||
*/
|
||||
|
||||
public interface SendMessageAPI {
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/10/27 15:13
|
||||
* @Description: 根据模板发送消息
|
||||
**/
|
||||
void sendMessage(SendMessageDTO sendMessageDTO);
|
||||
|
||||
}
|
||||
-106
@@ -1,106 +0,0 @@
|
||||
package com.jero.modules.common.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.common.service.SendMessageAPI;
|
||||
import com.jero.modules.message.entity.SysMessageTemplate;
|
||||
import com.jero.modules.message.handle.ISendMsgHandle;
|
||||
import com.jero.modules.message.handle.impl.SmsSendMsgHandle;
|
||||
import com.jero.modules.message.service.ISysMessageTemplateService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/10/17 11:23
|
||||
* @Description: 发送消息
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class SendMessageServiceImpl implements SendMessageAPI {
|
||||
|
||||
@Resource
|
||||
private ISysMessageTemplateService sysMessageTemplateService;
|
||||
@Value("${hiwork.isSend}")
|
||||
private Boolean isSend;
|
||||
@Value("${hiwork.hiworkUrlPrefix}")
|
||||
private String hiworkUrlPrefix;
|
||||
|
||||
/**
|
||||
* @Author: liao
|
||||
* @Date: 2023/10/17 11:25
|
||||
* @Description: 根据模板发送消息
|
||||
**/
|
||||
@Override
|
||||
public void sendMessage(SendMessageDTO sendMessageDTO) {
|
||||
if (StringUtils.isEmpty(sendMessageDTO.getToUserId())) {
|
||||
throw new JeroBootException("消息接收人id不能为空");
|
||||
}
|
||||
if (StringUtils.isEmpty(sendMessageDTO.getTemplateCode())) {
|
||||
throw new JeroBootException("消息模板编码不能为空!");
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<SysMessageTemplate> query = new LambdaQueryWrapper<>();
|
||||
query.eq(SysMessageTemplate::getTemplateCode, sendMessageDTO.getTemplateCode());
|
||||
List<SysMessageTemplate> sysSmsTemplates = sysMessageTemplateService.list(query);
|
||||
if (CollectionUtils.isEmpty(sysSmsTemplates)) {
|
||||
throw new JeroBootException("消息模板不存在");
|
||||
}
|
||||
SysMessageTemplate sysMessageTemplate = sysSmsTemplates.get(0);
|
||||
|
||||
String openType = sysMessageTemplate.getOpenType();
|
||||
String openPage = sysMessageTemplate.getOpenPage();
|
||||
|
||||
try {
|
||||
// 替换模板内容
|
||||
if (!Objects.isNull(sendMessageDTO.getMap())) {
|
||||
Map<String, String> map = sendMessageDTO.getMap();
|
||||
map.forEach((k, v) -> sysMessageTemplate.setTemplateContent(
|
||||
sysMessageTemplate.getTemplateContent().replace("${" + k + "}", v)));
|
||||
if (null != map.get("openType")) {
|
||||
openType = map.get("openType");
|
||||
}
|
||||
if (null != map.get("openPage")) {
|
||||
openPage = map.get("openPage");
|
||||
}
|
||||
}
|
||||
|
||||
List<String> typeList = Arrays.asList(sysMessageTemplate.getTemplateType().split(","));
|
||||
if (StrUtil.isNotBlank(openPage)) {
|
||||
if (openPage.contains("/workCenter/processCenter/processCenter")) {
|
||||
if (openPage.contains("?")) {
|
||||
openPage = openPage + "&activeTab=TodoList";
|
||||
} else {
|
||||
openPage = openPage + "?activeTab=TodoList";
|
||||
}
|
||||
}
|
||||
}
|
||||
String finalOpenType = openType;
|
||||
String finalOpenPage = openPage;
|
||||
typeList.forEach(type -> {
|
||||
log.info("消息标题:{},消息内容:{},消息类型:{}", sysMessageTemplate.getTemplateName(), sysMessageTemplate.getTemplateContent(), type);
|
||||
ISendMsgHandle sendMsgHandle;
|
||||
// 普通系统消息
|
||||
sendMsgHandle = new SmsSendMsgHandle();
|
||||
if (isSend) {
|
||||
sendMsgHandle.SendMsg(sendMessageDTO.getToUserId(), sysMessageTemplate.getTemplateName(), sysMessageTemplate.getTemplateContent(), finalOpenType, finalOpenPage);
|
||||
}
|
||||
});
|
||||
} catch (Exception e) {
|
||||
log.error("发送消息异常", e);
|
||||
throw new JeroBootException("发送消息异常");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -4,9 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.SendMessageAPI;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.modules.common.service.SendMessageAPI;
|
||||
import com.jero.common.constant.enums.LanguageEnum;
|
||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
|
||||
+1
-1
@@ -3,8 +3,8 @@ package com.jero.modules.laws.localTool.service.impl;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.common.api.SendMessageAPI;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.modules.common.service.SendMessageAPI;
|
||||
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
|
||||
import com.jero.modules.laws.common.util.DateUtil;
|
||||
import com.jero.modules.laws.localTool.entity.LawsEarlyWarningMessage;
|
||||
|
||||
+1
-1
@@ -4,11 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.SendMessageAPI;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.common.api.vo.ResultCommon;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.common.service.SendMessageAPI;
|
||||
import com.jero.modules.laws.common.constant.DictCommon;
|
||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||
import com.jero.modules.laws.common.constant.MessageTemplateCodeCommon;
|
||||
|
||||
+1
-1
@@ -1,8 +1,8 @@
|
||||
package com.jero.modules.laws.standardmasterplan.job;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.api.SendMessageAPI;
|
||||
import com.jero.common.api.dto.message.SendMessageDTO;
|
||||
import com.jero.modules.common.service.SendMessageAPI;
|
||||
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
|
||||
import com.jero.modules.laws.standard.service.ILawsDomesticStandardService;
|
||||
import com.jero.modules.laws.standardmasterplan.common.LawsStandardMasterPlanCommon;
|
||||
|
||||
Reference in New Issue
Block a user