消息模版被引用过,就无法删除

停用消息模版时,同步停用对应预警设置
推送消息时,校验预警设置中消息模版启用状态
预警设置启用时,校验该配置中对应消息模版是否启用
This commit is contained in:
username 2024-09-18 14:15:19 +08:00
parent b038b7e0c2
commit 8ed7373134
3 changed files with 186 additions and 144 deletions

View File

@ -9,11 +9,15 @@ import com.hzya.frame.sysnew.messageTemplate.dao.ISysMessageTemplateDao;
import com.hzya.frame.sysnew.messageTemplate.service.ISysMessageTemplateService; import com.hzya.frame.sysnew.messageTemplate.service.ISysMessageTemplateService;
import com.hzya.frame.sysnew.person.dao.ISysPersonDao; import com.hzya.frame.sysnew.person.dao.ISysPersonDao;
import com.hzya.frame.sysnew.user.entity.SysUserEntity; import com.hzya.frame.sysnew.user.entity.SysUserEntity;
import com.hzya.frame.sysnew.warningConfig.dao.ISysWarningConfigDao;
import com.hzya.frame.sysnew.warningConfig.entity.SysWarningConfigEntity;
import com.hzya.frame.web.entity.BaseResult; import com.hzya.frame.web.entity.BaseResult;
import com.hzya.frame.web.entity.JsonResultEntity; import com.hzya.frame.web.entity.JsonResultEntity;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource; import javax.annotation.Resource;
import com.hzya.frame.basedao.service.impl.BaseService; import com.hzya.frame.basedao.service.impl.BaseService;
import java.sql.*; import java.sql.*;
@ -31,6 +35,9 @@ public class SysMessageTemplateServiceImpl extends BaseService<SysMessageTemplat
private ISysMessageTemplateDao sysMessageTemplateDao; private ISysMessageTemplateDao sysMessageTemplateDao;
@Resource
private ISysWarningConfigDao sysWarningConfigDao;
@Resource @Resource
public IExecSqlService execSqlService; public IExecSqlService execSqlService;
@ -54,9 +61,9 @@ public class SysMessageTemplateServiceImpl extends BaseService<SysMessageTemplat
} }
@Override @Override
public JsonResultEntity queryEntity(JSONObject jsonObject){ public JsonResultEntity queryEntity(JSONObject jsonObject) {
SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class); SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class);
if(entity == null){ if (entity == null) {
entity = new SysMessageTemplateEntity(); entity = new SysMessageTemplateEntity();
} }
List<SysMessageTemplateEntity> list = sysMessageTemplateDao.queryByLike(entity); List<SysMessageTemplateEntity> list = sysMessageTemplateDao.queryByLike(entity);
@ -64,90 +71,96 @@ public class SysMessageTemplateServiceImpl extends BaseService<SysMessageTemplat
} }
@Override @Override
public JsonResultEntity getEntity(JSONObject jsonObject){ public JsonResultEntity getEntity(JSONObject jsonObject) {
SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class); SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class);
if(entity == null){ if (entity == null) {
return BaseResult.getFailureMessageEntity("参数不允许为空"); return BaseResult.getFailureMessageEntity("参数不允许为空");
} }
if(entity.getId() == null || "".equals(entity.getId())){ if (entity.getId() == null || "".equals(entity.getId())) {
return BaseResult.getFailureMessageEntity("系统错误"); return BaseResult.getFailureMessageEntity("系统错误");
} }
entity = sysMessageTemplateDao.get(entity.getId()); entity = sysMessageTemplateDao.get(entity.getId());
if(entity == null){ if (entity == null) {
return BaseResult.getFailureMessageEntity("获取消息模版失败"); return BaseResult.getFailureMessageEntity("获取消息模版失败");
} }
return BaseResult.getSuccessMessageEntity("获取消息模版成功", entity); return BaseResult.getSuccessMessageEntity("获取消息模版成功", entity);
} }
@Override @Override
public JsonResultEntity saveEntity(JSONObject jsonObject){ public JsonResultEntity saveEntity(JSONObject jsonObject) {
SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class); SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class);
if (entity == null) { if (entity == null) {
return BaseResult.getFailureMessageEntity("参数不允许为空"); return BaseResult.getFailureMessageEntity("参数不允许为空");
} }
if(entity.getTemplateType() == null || "".equals(entity.getTemplateType())){ if (entity.getTemplateType() == null || "".equals(entity.getTemplateType())) {
return BaseResult.getFailureMessageEntity("模版类型不允许为空"); return BaseResult.getFailureMessageEntity("模版类型不允许为空");
} }
if(entity.getTemplateName() == null || "".equals(entity.getTemplateName())){ if (entity.getTemplateName() == null || "".equals(entity.getTemplateName())) {
return BaseResult.getFailureMessageEntity("模版名称不允许为空"); return BaseResult.getFailureMessageEntity("模版名称不允许为空");
} }
if(entity.getMessageContents() == null || "".equals(entity.getMessageContents())){ if (entity.getMessageContents() == null || "".equals(entity.getMessageContents())) {
return BaseResult.getFailureMessageEntity("消息内容不允许为空"); return BaseResult.getFailureMessageEntity("消息内容不允许为空");
} }
if(entity.getDataSource() == null || "".equals(entity.getDataSource())){ if (entity.getDataSource() == null || "".equals(entity.getDataSource())) {
return BaseResult.getFailureMessageEntity("数据源不允许为空"); return BaseResult.getFailureMessageEntity("数据源不允许为空");
} }
entity.setCreate(); entity.setCreate();
sysMessageTemplateDao.save(entity); sysMessageTemplateDao.save(entity);
return BaseResult.getSuccessMessageEntity("保存消息模版成功",entity); return BaseResult.getSuccessMessageEntity("保存消息模版成功", entity);
} }
@Override @Override
public JsonResultEntity updateEntity(JSONObject jsonObject){ public JsonResultEntity updateEntity(JSONObject jsonObject) {
SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class); SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class);
if(entity == null){ if (entity == null) {
return BaseResult.getFailureMessageEntity("参数不允许为空"); return BaseResult.getFailureMessageEntity("参数不允许为空");
} }
if (entity.getId() == null || "".equals(entity.getId())) { if (entity.getId() == null || "".equals(entity.getId())) {
return BaseResult.getFailureMessageEntity("系统错误"); return BaseResult.getFailureMessageEntity("系统错误");
} }
if(entity.getTemplateType() == null || "".equals(entity.getTemplateType())){ if (entity.getTemplateType() == null || "".equals(entity.getTemplateType())) {
return BaseResult.getFailureMessageEntity("模版类型不允许为空"); return BaseResult.getFailureMessageEntity("模版类型不允许为空");
} }
if(entity.getTemplateName() == null || "".equals(entity.getTemplateName())){ if (entity.getTemplateName() == null || "".equals(entity.getTemplateName())) {
return BaseResult.getFailureMessageEntity("模版名称不允许为空"); return BaseResult.getFailureMessageEntity("模版名称不允许为空");
} }
if(entity.getMessageContents() == null || "".equals(entity.getMessageContents())){ if (entity.getMessageContents() == null || "".equals(entity.getMessageContents())) {
return BaseResult.getFailureMessageEntity("消息内容不允许为空"); return BaseResult.getFailureMessageEntity("消息内容不允许为空");
} }
if(entity.getDataSource() == null || "".equals(entity.getDataSource())){ if (entity.getDataSource() == null || "".equals(entity.getDataSource())) {
return BaseResult.getFailureMessageEntity("数据源不允许为空"); return BaseResult.getFailureMessageEntity("数据源不允许为空");
} }
entity.setUpdate(); entity.setUpdate();
sysMessageTemplateDao.update(entity); sysMessageTemplateDao.update(entity);
return BaseResult.getSuccessMessageEntity("修改消息模版成功",entity); return BaseResult.getSuccessMessageEntity("修改消息模版成功", entity);
} }
@Override @Override
public JsonResultEntity deleteEntity(JSONObject jsonObject){ public JsonResultEntity deleteEntity(JSONObject jsonObject) {
SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class); SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class);
if(entity == null){ if (entity == null) {
return BaseResult.getFailureMessageEntity("参数不允许为空"); return BaseResult.getFailureMessageEntity("参数不允许为空");
} }
if (entity.getId() == null || "".equals(entity.getId())) { if (entity.getId() == null || "".equals(entity.getId())) {
return BaseResult.getFailureMessageEntity("系统错误"); return BaseResult.getFailureMessageEntity("系统错误");
} }
entity.setUpdate(); //判断这个模版有没有被使用过使用过就不能删除
//1判断这个模版有没有被使用过使用过就不能删除待完成
//将模版id去预警配置表里查一下如果有匹配的数据代表有人正在使用不能删除 //将模版id去预警配置表里查一下如果有匹配的数据代表有人正在使用不能删除
SysWarningConfigEntity warningConfigEntity = new SysWarningConfigEntity();
warningConfigEntity.setMessageTemplateId(entity.getId());
int count = sysWarningConfigDao.getCount(warningConfigEntity);
if (count > 0) {
return BaseResult.getFailureMessageEntity("该模版已被使用,不能删除");
}
entity.setUpdate();
sysMessageTemplateDao.logicRemove(entity); sysMessageTemplateDao.logicRemove(entity);
return BaseResult.getSuccessMessageEntity("删除消息模版成功"); return BaseResult.getSuccessMessageEntity("删除消息模版成功");
} }
@Override @Override
public JsonResultEntity enableDisableEntity(JSONObject jsonObject){ public JsonResultEntity enableDisableEntity(JSONObject jsonObject) {
SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class); SysMessageTemplateEntity entity = getData("jsonStr", jsonObject, SysMessageTemplateEntity.class);
if(entity == null){ if (entity == null) {
return BaseResult.getFailureMessageEntity("参数不允许为空"); return BaseResult.getFailureMessageEntity("参数不允许为空");
} }
if (entity.getId() == null || "".equals(entity.getId())) { if (entity.getId() == null || "".equals(entity.getId())) {
@ -157,12 +170,21 @@ public class SysMessageTemplateServiceImpl extends BaseService<SysMessageTemplat
return BaseResult.getFailureMessageEntity("系统错误"); return BaseResult.getFailureMessageEntity("系统错误");
} }
//0停用1启用 //0停用1启用
if("0".equals(entity.getState())){ if ("0".equals(entity.getState())) {
entity.setUpdate(); entity.setUpdate();
sysMessageTemplateDao.update(entity); sysMessageTemplateDao.update(entity);
//同步停用到预警配置表
SysWarningConfigEntity warningConfigEntity = new SysWarningConfigEntity();
warningConfigEntity.setMessageTemplateId(entity.getId());
warningConfigEntity.setStatus("1");
List<SysWarningConfigEntity> warningConfigList = sysWarningConfigDao.queryByLike(warningConfigEntity);
for (SysWarningConfigEntity warningConfig : warningConfigList) {
warningConfig.setStatus("0");
warningConfig.setUpdate();
sysWarningConfigDao.update(warningConfig);
}
return BaseResult.getSuccessMessageEntity("停用模版成功"); return BaseResult.getSuccessMessageEntity("停用模版成功");
}else{ } else {
//停用消息模版
entity.setUpdate(); entity.setUpdate();
sysMessageTemplateDao.update(entity); sysMessageTemplateDao.update(entity);
return BaseResult.getSuccessMessageEntity("启用模版成功"); return BaseResult.getSuccessMessageEntity("启用模版成功");
@ -181,7 +203,7 @@ public class SysMessageTemplateServiceImpl extends BaseService<SysMessageTemplat
} }
@Override @Override
public JsonResultEntity spliceMessage(JSONObject jsonObject){ public JsonResultEntity spliceMessage(JSONObject jsonObject) {
return BaseResult.getSuccessMessageEntity("消息拼接成功"); return BaseResult.getSuccessMessageEntity("消息拼接成功");
} }
} }

View File

@ -249,6 +249,10 @@ public class SysSendMessageLogServiceImpl extends BaseService<SysSendMessageLogE
logger.error("未找到该接口预警配置信息的消息模版信息"); logger.error("未找到该接口预警配置信息的消息模版信息");
return false; return false;
} }
if(templateEntity.getState() == null || !"1".equals(templateEntity.getState())){
logger.error("当前预警配置中消息模版状态为禁用");
return false;
}
String messageContent = templateEntity.getMessageContents(); String messageContent = templateEntity.getMessageContents();
if (messageContent == null || "".equals(messageContent)) { if (messageContent == null || "".equals(messageContent)) {

View File

@ -6,6 +6,8 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.hzya.frame.sysnew.application.dao.ISysApplicationDao; import com.hzya.frame.sysnew.application.dao.ISysApplicationDao;
import com.hzya.frame.sysnew.application.entity.SysApplicationEntity; import com.hzya.frame.sysnew.application.entity.SysApplicationEntity;
import com.hzya.frame.sysnew.messageTemplate.dao.ISysMessageTemplateDao;
import com.hzya.frame.sysnew.messageTemplate.entity.SysMessageTemplateEntity;
import com.hzya.frame.sysnew.person.dao.ISysPersonDao; import com.hzya.frame.sysnew.person.dao.ISysPersonDao;
import com.hzya.frame.sysnew.person.entity.SysPersonEntity; import com.hzya.frame.sysnew.person.entity.SysPersonEntity;
import com.hzya.frame.sysnew.user.dao.ISysUserDao; import com.hzya.frame.sysnew.user.dao.ISysUserDao;
@ -44,6 +46,9 @@ public class SysWarningConfigServiceImpl extends BaseService<SysWarningConfigEnt
@Resource @Resource
private ISysApplicationDao sysApplicationDao; private ISysApplicationDao sysApplicationDao;
@Resource
private ISysMessageTemplateDao sysMessageTemplateDao;
private ISysWarningConfigDao sysWarningConfigDao; private ISysWarningConfigDao sysWarningConfigDao;
@Autowired @Autowired
@ -296,12 +301,23 @@ public class SysWarningConfigServiceImpl extends BaseService<SysWarningConfigEnt
if (entity.getStatus() == null || "".equals(entity.getStatus())) { if (entity.getStatus() == null || "".equals(entity.getStatus())) {
return BaseResult.getFailureMessageEntity("状态不能为空"); return BaseResult.getFailureMessageEntity("状态不能为空");
} }
if(entity.getMessageTemplateId() == null || "".equals(entity.getMessageTemplateId())){
return BaseResult.getFailureMessageEntity("消息模版id不允许为空");
}
//0停用1启用 //0停用1启用
if("0".equals(entity.getStatus())){ if("0".equals(entity.getStatus())){
entity.setUpdate(); entity.setUpdate();
sysWarningConfigDao.update(entity); sysWarningConfigDao.update(entity);
return BaseResult.getSuccessMessageEntity("停用模版成功"); return BaseResult.getSuccessMessageEntity("停用模版成功");
}else{ }else{
//校验该预警设置的消息模版是否为启用状态
SysMessageTemplateEntity templateEntity = sysMessageTemplateDao.get(entity.getMessageTemplateId());
if(templateEntity == null){
return BaseResult.getFailureMessageEntity("消息模版不存在");
}
if(!"1".equals(templateEntity.getState())){
return BaseResult.getFailureMessageEntity("该预警设置的消息模版未启用,请先启用");
}
entity.setUpdate(); entity.setUpdate();
sysWarningConfigDao.update(entity); sysWarningConfigDao.update(entity);
return BaseResult.getSuccessMessageEntity("启用模版成功"); return BaseResult.getSuccessMessageEntity("启用模版成功");