From 49c61f38900ba43507bbb2dbca8e5dbca171a7a3 Mon Sep 17 00:00:00 2001 From: youxilong Date: Thu, 29 Feb 2024 16:32:46 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E5=BA=93=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=EF=BC=8C=E5=BE=AE=E4=BF=A1=E5=BA=93=E4=BF=AE=E6=94=B9=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/textmessage/TextMessageMapper.java | 23 +++++++++++++ .../wechattemplate/WechatTemplateMapper.java | 7 ++++ .../impl/TextMessageServiceImpl.java | 22 ++++-------- .../impl/WechatTemplateServiceImpl.java | 18 ++++------ .../manage/textmessage/TextMessageMapper.xml | 32 ++++++++++++++++- .../wechattemplate/WechatTemplateMapper.xml | 34 +++++++++++++------ 6 files changed, 97 insertions(+), 39 deletions(-) diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/textmessage/TextMessageMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/textmessage/TextMessageMapper.java index 34522487..6a291bbf 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/textmessage/TextMessageMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/textmessage/TextMessageMapper.java @@ -5,6 +5,7 @@ import com.xinelu.manage.domain.textmessagesuittask.TextMessageSuitTask; import com.xinelu.manage.dto.textmessage.TextMessageDTO; import com.xinelu.manage.dto.textmessage.TextMessageTaskDTO; import com.xinelu.manage.vo.textmessage.TextMessageVO; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -102,4 +103,26 @@ public interface TextMessageMapper { * @return */ int deleteTextMessageSuitTasks(Long[] ids); + + /** + * 修改短信模板适用任务类型 + * + * @param task + * @return + */ + int updateTextMessageSuitTask(@Param("task") TextMessageSuitTask task); + + /** + * 根据textMessageId查询适用任务类型id + * + * @param textMessageId + * @return + */ + List selectTextMessageSuitTask(Long textMessageId); + + /** + * 根据id删除之前的适用任务类型 + * @param id + */ + void deleteTextMessageSuitTask(Long id); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/wechattemplate/WechatTemplateMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/wechattemplate/WechatTemplateMapper.java index 85e3c7df..d8b6d9da 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/wechattemplate/WechatTemplateMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/wechattemplate/WechatTemplateMapper.java @@ -111,4 +111,11 @@ public interface WechatTemplateMapper { * @return */ int countByWechatTemplateTaskDTO(WechatTemplateTaskDTO wechatTemplateTaskDTO); + + /** + * 根据id删除之前存储的适用模板任务类型 + * @param id + */ + void deleteWechatTemplateSuitTaskById(Long id); + } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/textmessage/impl/TextMessageServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/textmessage/impl/TextMessageServiceImpl.java index bd2910ce..75350ef5 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/textmessage/impl/TextMessageServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/textmessage/impl/TextMessageServiceImpl.java @@ -180,33 +180,23 @@ public class TextMessageServiceImpl implements ITextMessageService { if (textMessageMapper.updateTextMessage(textMessage) <= 0) { throw new ServiceException("修改短信模板失败"); } - - // 批量创建TextMessageSuitTask对象并插入修改 + // 根据id先删除之前存储的适用模板类型 + textMessageMapper.deleteTextMessageSuitTask(textMessageTaskDTO.getId()); + // 批量创建TextMessageSuitTask对象并插入 List tasks = new ArrayList<>(); for (Long suitTaskTypeId : textMessageTaskDTO.getSuitTaskTypeIds()) { - TextMessageSuitTask task = editTextMessageSuitTask(suitTaskTypeId, textMessage.getId(), editUsername, editTime); + TextMessageSuitTask task = createTextMessageSuitTask(suitTaskTypeId, textMessage.getId(), editUsername, editTime); tasks.add(task); } - // 批量插入TextMessageSuitTask修改记录并检查结果 - if (!tasks.isEmpty() && textMessageMapper.updateTextMessageSuitTasks(tasks) != tasks.size()) { + // 批量插入TextMessageSuitTask记录并检查结果 + if (!tasks.isEmpty() && textMessageMapper.insertTextMessageSuitTasks(tasks) != tasks.size()) { throw new ServiceException("修改短信模板适用任务类型失败"); } - // 返回成功插入的记录数 return 1; } - private TextMessageSuitTask editTextMessageSuitTask(Long suitTaskTypeId, Long textMessageId, String updateBy, Date updateAt) { - SysDictData sysDictData = sysDictDataMapper.selectDictDataById(suitTaskTypeId); - TextMessageSuitTask task = new TextMessageSuitTask(); - task.setTextMessageId(textMessageId); - task.setSuitTaskTypeId(suitTaskTypeId); - task.setSuitTaskTypeName(sysDictData.getDictLabel()); - task.setUpdateBy(updateBy); - task.setUpdateTime(updateAt); - return task; - } /** * 批量删除短信模板信息 diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/impl/WechatTemplateServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/impl/WechatTemplateServiceImpl.java index f46eceff..a88664f0 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/impl/WechatTemplateServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/impl/WechatTemplateServiceImpl.java @@ -5,6 +5,7 @@ import com.xinelu.common.exception.ServiceException; import com.xinelu.common.utils.DateUtils; import com.xinelu.common.utils.SecurityUtils; import com.xinelu.common.utils.bean.BeanUtils; +import com.xinelu.manage.domain.textmessagesuittask.TextMessageSuitTask; import com.xinelu.manage.domain.wechattemplate.WechatTemplate; import com.xinelu.manage.domain.wechattemplatesuittask.WechatTemplateSuitTask; import com.xinelu.manage.dto.wechattemplate.WechatTemplateDTO; @@ -164,15 +165,18 @@ public class WechatTemplateServiceImpl implements IWechatTemplateService { throw new ServiceException("修改微信模板失败"); } + // 根据id删除之前存储的适用模板任务类型 + wechatTemplateMapper.deleteWechatTemplateSuitTaskById(wechatTemplateTaskDTO.getId()); + // 批量创建WechatTemplateSuitTask对象并插入修改 List tasks = new ArrayList<>(); for (Long suitTaskTypeId : wechatTemplateTaskDTO.getSuitTaskTypeIds()) { - WechatTemplateSuitTask task = editWechatTempSuitTask(suitTaskTypeId, wechatTemplate.getId(), editUsername, editTime); + WechatTemplateSuitTask task = createWechatTempSuitTask(suitTaskTypeId, wechatTemplate.getId(), editUsername, editTime); tasks.add(task); } // 批量插入WechatTemplateSuitTask修改记录并检查结果 - if (!tasks.isEmpty() && wechatTemplateMapper.updateWechatTemplateSuitTask(tasks) != tasks.size()) { + if (!tasks.isEmpty() && wechatTemplateMapper.insertWechatTemplateSuitTask(tasks) != tasks.size()) { throw new ServiceException("修改微信模板适用任务类型失败"); } @@ -180,16 +184,6 @@ public class WechatTemplateServiceImpl implements IWechatTemplateService { return 1; } - private WechatTemplateSuitTask editWechatTempSuitTask(Long suitTaskTypeId, Long wechatTempId, String updateBy, Date updateAt) { - SysDictData sysDictData = sysDictDataMapper.selectDictDataById(suitTaskTypeId); - WechatTemplateSuitTask task = new WechatTemplateSuitTask(); - task.setWechatTemplateId(wechatTempId); - task.setSuitTaskTypeId(suitTaskTypeId); - task.setSuitTaskTypeName(sysDictData.getDictLabel()); - task.setUpdateBy(updateBy); - task.setUpdateTime(updateAt); - return task; - } /** * 批量删除微信模板信息 diff --git a/postdischarge-manage/src/main/resources/mapper/manage/textmessage/TextMessageMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/textmessage/TextMessageMapper.xml index 3b32d209..9d781bd2 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/textmessage/TextMessageMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/textmessage/TextMessageMapper.xml @@ -145,6 +145,12 @@ where department_id = #{departmentId} and text_message_name = #{textMessageName} + + + update text_message_suit_task + + suit_task_type_name = + #{task.suitTaskTypeName}, + + suit_task_type_id = + #{task.suitTaskTypeId}, + + update_by = + #{task.updateBy}, + + update_time = + #{task.updateTime}, + + + where id = #{task.id} + + delete from text_message @@ -305,8 +330,13 @@ delete from text_message_suit_task where text_message_id in - + #{id} + + delete + from text_message_suit_task + where text_message_id = #{id} + \ No newline at end of file diff --git a/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml index 59ad0887..33b2b128 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml @@ -21,7 +21,7 @@ - + @@ -33,7 +33,8 @@ - + @@ -131,24 +132,32 @@ left join wechat_template_suit_task wtst on wt.id = wtst.wechat_template_id - and wt.department_id = #{departmentId} + and wt.department_id = + #{departmentId} - and wt.wechat_template_name like concat('%',#{wechatTemplateName},'%') + and wt.wechat_template_name like concat('%', + #{wechatTemplateName}, + '%' + ) - and wt.template_id like concat('%',#{templateId},'%') + and wt.template_id like concat('%', + #{templateId}, + '%' + ) - and wt.template_source = #{templateSource} + and wt.template_source = + #{templateSource}