diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/wechattemplate/WechatTemplateController.java b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/wechattemplate/WechatTemplateController.java new file mode 100644 index 00000000..cce7f4f1 --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/wechattemplate/WechatTemplateController.java @@ -0,0 +1,91 @@ +package com.xinelu.manage.controller.wechattemplate; + +import com.xinelu.common.annotation.Log; +import com.xinelu.common.core.controller.BaseController; +import com.xinelu.common.core.domain.AjaxResult; +import com.xinelu.common.core.page.TableDataInfo; +import com.xinelu.common.enums.BusinessType; +import com.xinelu.common.utils.poi.ExcelUtil; +import com.xinelu.manage.dto.WechatTemplateDto; +import com.xinelu.manage.service.wechattemplate.IWechatTemplateService; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 微信模板信息Controller + * + * @author xinelu + * @date 2024-02-27 + */ +@RestController +@RequestMapping("/manage/template") +public class WechatTemplateController extends BaseController { + @Resource + private IWechatTemplateService wechatTemplateService; + + /** + * 查询微信模板信息列表 + */ + @PreAuthorize("@ss.hasPermi('manage:template:list')") + @GetMapping("/list") + public TableDataInfo list(WechatTemplateDto wechatTemplateDto) { + startPage(); + List list = wechatTemplateService.selectWechatTemplateList(wechatTemplateDto); + return getDataTable(list); + } + + /** + * 导出微信模板信息列表 + */ + @PreAuthorize("@ss.hasPermi('manage:template:export')") + @Log(title = "微信模板信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, WechatTemplateDto wechatTemplateDto) { + List list = wechatTemplateService.selectWechatTemplateList(wechatTemplateDto); + ExcelUtil util = new ExcelUtil(WechatTemplateDto.class); + util.exportExcel(response, list, "微信模板信息数据"); + } + + /** + * 获取微信模板信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('manage:template:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) { + return AjaxResult.success(wechatTemplateService.selectWechatTemplateDtoById(id)); + } + + /** + * 新增微信模板信息 + */ + @PreAuthorize("@ss.hasPermi('manage:template:add')") + @Log(title = "微信模板信息", businessType = BusinessType.INSERT) + @PostMapping("/add") + public AjaxResult add(@RequestBody WechatTemplateDto wechatTemplateDto) { + return toAjax(wechatTemplateService.insertWechatTemplate(wechatTemplateDto)); + } + + /** + * 修改微信模板信息 + */ + @PreAuthorize("@ss.hasPermi('manage:template:edit')") + @Log(title = "微信模板信息", businessType = BusinessType.UPDATE) + @PutMapping(value = "/edit") + public AjaxResult edit(@RequestBody WechatTemplateDto wechatTemplateDto) { + return toAjax(wechatTemplateService.updateWechatTemplate(wechatTemplateDto)); + } + + /** + * 删除微信模板信息 + */ + @PreAuthorize("@ss.hasPermi('manage:template:remove')") + @Log(title = "微信模板信息", businessType = BusinessType.DELETE) + @DeleteMapping("/remove/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(wechatTemplateService.deleteWechatTemplateByIds(ids)); + } +} diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/domain/wechattemplate/WechatTemplate.java b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/wechattemplate/WechatTemplate.java new file mode 100644 index 00000000..272b2b8c --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/wechattemplate/WechatTemplate.java @@ -0,0 +1,123 @@ +package com.xinelu.manage.domain.wechattemplate; + +import com.xinelu.common.annotation.Excel; +import com.xinelu.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 微信模板信息对象 wechat_template + * + * @author xinelu + * @date 2024-02-27 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "微信模板信息对象", description = "wechat_template") +public class WechatTemplate extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键id + */ + private Long id; + + /** + * 所属科室id + */ + @ApiModelProperty(value = "所属科室id") + @Excel(name = "所属科室id") + private Long departmentId; + + /** + * 所属科室名称 + */ + @ApiModelProperty(value = "所属科室名称") + @Excel(name = "所属科室名称") + private String departmentName; + + /** + * 病种id + */ + @ApiModelProperty(value = "病种id") + @Excel(name = "病种id") + private Long diseaseTypeId; + + /** + * 病种名称 + */ + @ApiModelProperty(value = "病种名称") + @Excel(name = "病种名称") + private String diseaseTypeName; + + /** + * 模板名称 + */ + @ApiModelProperty(value = "模板名称") + @Excel(name = "模板名称") + private String wechatTemplateName; + + /** + * 模板ID + */ + @ApiModelProperty(value = "模板ID") + @Excel(name = "模板ID") + private String templateId; + + /** + * 模板内容 + */ + @ApiModelProperty(value = "模板内容") + @Excel(name = "模板内容") + private String templateContent; + + /** + * 模板来源,小程序:WE_CHAT_APPLET,公众号:WE_CHAT_OFFICIAL_ACCOUNT + */ + @ApiModelProperty(value = "模板来源,小程序:WE_CHAT_APPLET,公众号:WE_CHAT_OFFICIAL_ACCOUNT") + @Excel(name = "模板来源,小程序:WE_CHAT_APPLET,公众号:WE_CHAT_OFFICIAL_ACCOUNT") + private String templateSource; + + /** + * 模板顺序 + */ + @ApiModelProperty(value = "模板顺序") + @Excel(name = "模板顺序") + private Integer templateSort; + + /** + * 模板备注 + */ + @ApiModelProperty(value = "模板备注") + @Excel(name = "模板备注") + private String templateRemark; + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("diseaseTypeId", getDiseaseTypeId()) + .append("diseaseTypeName", getDiseaseTypeName()) + .append("wechatTemplateName", getWechatTemplateName()) + .append("templateId", getTemplateId()) + .append("templateContent", getTemplateContent()) + .append("templateSource", getTemplateSource()) + .append("templateSort", getTemplateSort()) + .append("templateRemark", getTemplateRemark()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/domain/wechattemplatesuittask/WechatTemplateSuitTask.java b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/wechattemplatesuittask/WechatTemplateSuitTask.java new file mode 100644 index 00000000..45b746a9 --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/wechattemplatesuittask/WechatTemplateSuitTask.java @@ -0,0 +1,63 @@ +package com.xinelu.manage.domain.wechattemplatesuittask; + +import com.xinelu.common.annotation.Excel; +import com.xinelu.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * @author : youxilong + * @date : 2024/2/27 15:22 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "微信模板适用任务类型对象", description = "wechat_template_suit_task") +public class WechatTemplateSuitTask extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键id + */ + private Long id; + + /** + * 微信模板id + */ + @ApiModelProperty(value = "微信模板id") + private Long wechatTemplateId; + + /** + * 适用任务类型字典Id + */ + @ApiModelProperty(value = "适用任务类型字典Id") + private Long suitTaskTypeId; + + /** + * 适用任务类型 + */ + @ApiModelProperty(value = "适用任务类型") + @Excel(name = "适用任务类型") + private String suitTaskTypeName; + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("wechatTemplateId", getWechatTemplateId()) + .append("suitTaskTypeId", getSuitTaskTypeId()) + .append("suitTaskTypeName", getSuitTaskTypeName()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/dto/WechatTemplateDto.java b/postdischarge-manage/src/main/java/com/xinelu/manage/dto/WechatTemplateDto.java new file mode 100644 index 00000000..a133fcea --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/dto/WechatTemplateDto.java @@ -0,0 +1,151 @@ +package com.xinelu.manage.dto; + +import com.xinelu.common.annotation.Excel; +import com.xinelu.common.core.domain.BaseEntity; +import com.xinelu.common.custominterface.Insert; +import com.xinelu.common.custominterface.Update; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; + +/** + * @author : youxilong + * @date : 2024/2/27 15:26 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "微信模板信息对象Dto") +public class WechatTemplateDto extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键id + */ + private Long id; + + /** + * 所属科室id + */ + @ApiModelProperty(value = "所属科室id") + @Excel(name = "所属科室id") + @NotBlank(message = "科室id不能为空", groups = {Insert.class, Update.class}) + private Long departmentId; + + /** + * 所属科室名称 + */ + @ApiModelProperty(value = "所属科室名称") + @Excel(name = "所属科室名称") + @NotBlank(message = "科室名称不能为空", groups = {Insert.class, Update.class}) + private String departmentName; + + /** + * 病种id + */ + @ApiModelProperty(value = "病种id") + @Excel(name = "病种id") + private Long diseaseTypeId; + + /** + * 病种名称 + */ + @ApiModelProperty(value = "病种名称") + @Excel(name = "病种名称") + private String diseaseTypeName; + + /** + * 微信模板名称 + */ + @ApiModelProperty(value = "微信模板名称") + @Excel(name = "微信模板名称") + @NotBlank(message = "微信模板名称不能为空", groups = {Insert.class, Update.class}) + @Length(max = 50, message = "微信模板名称不能超过50个字符", groups = {Insert.class, Update.class}) + private String wechatTemplateName; + + /** + * 模板ID + */ + @ApiModelProperty(value = "模板ID") + @Excel(name = "模板ID") + @NotBlank(message = "模板ID不能为空", groups = {Insert.class, Update.class}) + private String templateId; + + /** + * 模板内容 + */ + @ApiModelProperty(value = "模板内容") + @Excel(name = "模板内容") + @Length(max = 300, message = "模板内容不能超过300个字符", groups = {Insert.class, Update.class}) + private String templateContent; + + /** + * 模板来源,小程序:WE_CHAT_APPLET,公众号:WE_CHAT_OFFICIAL_ACCOUNT + */ + @ApiModelProperty(value = "模板来源,小程序:WE_CHAT_APPLET,公众号:WE_CHAT_OFFICIAL_ACCOUNT") + @Excel(name = "模板来源,小程序:WE_CHAT_APPLET,公众号:WE_CHAT_OFFICIAL_ACCOUNT") + @NotBlank(message = "模板来源不能为空", groups = {Insert.class, Update.class}) + private String templateSource; + + /** + * 模板顺序 + */ + @ApiModelProperty(value = "模板顺序") + @Excel(name = "模板顺序") + private Integer templateSort; + + /** + * 模板备注 + */ + @ApiModelProperty(value = "模板备注") + @Excel(name = "模板备注") + private String templateRemark; + + /** + * 适用任务类型字典Id + */ + @ApiModelProperty(value = "适用任务类型字典Id") + @NotBlank(message = "适用任务类型不能为空", groups = {Insert.class, Update.class}) + private Long suitTaskTypeId; + + /** + * 适用任务类型 + */ + @Excel(name = "适用任务类型名称") + @ApiModelProperty(value = "适用任务类型名称") + @NotBlank(message = "适用任务类型名称不能为空", groups = {Insert.class, Update.class}) + private String suitTaskTypeName; + + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("departmentId", getDepartmentId()) + .append("departmentName", getDepartmentName()) + .append("diseaseTypeId", getDiseaseTypeId()) + .append("diseaseTypeName", getDiseaseTypeName()) + .append("wechatTemplateName", getWechatTemplateName()) + .append("templateId", getTemplateId()) + .append("templateContent", getTemplateContent()) + .append("templateSource", getTemplateSource()) + .append("templateSort", getTemplateSort()) + .append("templateRemark", getTemplateRemark()) + .append("suitTaskTypeId", getSuitTaskTypeId()) + .append("suitTaskTypeName", getSuitTaskTypeName()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} 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 new file mode 100644 index 00000000..5ab28d4f --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/wechattemplate/WechatTemplateMapper.java @@ -0,0 +1,112 @@ +package com.xinelu.manage.mapper.wechattemplate; + +import com.xinelu.manage.domain.wechattemplate.WechatTemplate; +import com.xinelu.manage.domain.wechattemplatesuittask.WechatTemplateSuitTask; +import com.xinelu.manage.dto.WechatTemplateDto; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 微信模板信息Mapper接口 + * + * @author xinelu + * @date 2024-02-27 + */ +public interface WechatTemplateMapper { + /** + * 查询微信模板信息 + * + * @param id 微信模板信息主键 + * @return 微信模板信息 + */ + public WechatTemplate selectWechatTemplateById(Long id); + + /** + * 查询微信模板信息列表 + * + * @param wechatTemplate 微信模板信息 + * @return 微信模板信息集合 + */ + public List selectWechatTemplateList(WechatTemplate wechatTemplate); + + /** + * 新增微信模板信息 + * + * @param wechatTemplate 微信模板信息 + * @return 结果 + */ + public int insertWechatTemplate(WechatTemplate wechatTemplate); + + /** + * 修改微信模板信息 + * + * @param wechatTemplate 微信模板信息 + * @return 结果 + */ + public int updateWechatTemplate(WechatTemplate wechatTemplate); + + /** + * 删除微信模板信息 + * + * @param id 微信模板信息主键 + * @return 结果 + */ + public int deleteWechatTemplateById(Long id); + + /** + * 批量删除微信模板信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteWechatTemplateByIds(Long[] ids); + + /** + * 查询微信模板信息Dto列表 + * + * @param wechatTemplateDto + * @return + */ + List selectWechatTemplateDtoList(WechatTemplateDto wechatTemplateDto); + + /** + * 根据id查询微信模板Dto + * + * @param id + * @return + */ + WechatTemplateDto selectWechatTemplateDtoById(@Param("id") Long id); + + /** + * 判断是否存在微信模板信息 + * + * @param wechatTemplateDto + * @return + */ + int countByWechatTemplateDto(WechatTemplateDto wechatTemplateDto); + + /** + * 新增微信模板适用任务类型 + * + * @param wechatTemplateSuitTask + * @return + */ + int insertWechatTemplateSuitTask(WechatTemplateSuitTask wechatTemplateSuitTask); + + /** + * 修改微信模板适用任务类型 + * + * @param wechatTemplateSuitTask + * @return + */ + int updateWechatTemplateSuitTask(WechatTemplateSuitTask wechatTemplateSuitTask); + + /** + * 批量删除微信模板使用任务类型 + * + * @param ids + * @return + */ + int deleteWechatTemplateSuitTaskByIds(Long[] ids); +} diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/IWechatTemplateService.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/IWechatTemplateService.java new file mode 100644 index 00000000..96287728 --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/IWechatTemplateService.java @@ -0,0 +1,70 @@ +package com.xinelu.manage.service.wechattemplate; + +import com.xinelu.manage.domain.wechattemplate.WechatTemplate; +import com.xinelu.manage.dto.WechatTemplateDto; + +import java.util.List; + +/** + * 微信模板信息Service接口 + * + * @author xinelu + * @date 2024-02-27 + */ +public interface IWechatTemplateService { + /** + * 查询微信模板信息 + * + * @param id 微信模板信息主键 + * @return 微信模板信息 + */ + public WechatTemplate selectWechatTemplateById(Long id); + + /** + * 查询微信模板信息列表 + * + * @param wechatTemplateDto 微信模板信息 + * @return 微信模板信息集合 + */ + public List selectWechatTemplateList(WechatTemplateDto wechatTemplateDto); + + /** + * 新增微信模板信息 + * + * @param wechatTemplateDto 微信模板信息 + * @return 结果 + */ + public int insertWechatTemplate(WechatTemplateDto wechatTemplateDto); + + /** + * 修改微信模板信息 + * + * @param wechatTemplateDto 微信模板信息 + * @return 结果 + */ + public int updateWechatTemplate(WechatTemplateDto wechatTemplateDto); + + /** + * 批量删除微信模板信息 + * + * @param ids 需要删除的微信模板信息主键集合 + * @return 结果 + */ + public int deleteWechatTemplateByIds(Long[] ids); + + /** + * 删除微信模板信息信息 + * + * @param id 微信模板信息主键 + * @return 结果 + */ + public int deleteWechatTemplateById(Long id); + + /** + * 根据id查询微信模板Dto + * + * @param id + * @return + */ + WechatTemplateDto selectWechatTemplateDtoById(Long id); +} 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 new file mode 100644 index 00000000..9ef852b3 --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/wechattemplate/impl/WechatTemplateServiceImpl.java @@ -0,0 +1,181 @@ +package com.xinelu.manage.service.wechattemplate.impl; + +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.wechattemplate.WechatTemplate; +import com.xinelu.manage.domain.wechattemplatesuittask.WechatTemplateSuitTask; +import com.xinelu.manage.dto.WechatTemplateDto; +import com.xinelu.manage.mapper.wechattemplate.WechatTemplateMapper; +import com.xinelu.manage.service.wechattemplate.IWechatTemplateService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * 微信模板信息Service业务层处理 + * + * @author xinelu + * @date 2024-02-27 + */ +@Service +public class WechatTemplateServiceImpl implements IWechatTemplateService { + @Resource + private WechatTemplateMapper wechatTemplateMapper; + + /** + * 查询微信模板信息 + * + * @param id 微信模板信息主键 + * @return 微信模板信息 + */ + @Override + public WechatTemplate selectWechatTemplateById(Long id) { + return wechatTemplateMapper.selectWechatTemplateById(id); + } + + /** + * 查询微信模板信息列表 + * + * @param wechatTemplateDto 微信模板信息 + * @return 微信模板信息 + */ + @Override + public List selectWechatTemplateList(WechatTemplateDto wechatTemplateDto) { + return wechatTemplateMapper.selectWechatTemplateDtoList(wechatTemplateDto); + + } + + /** + * 新增微信模板信息 + * + * @param wechatTemplateDto 微信模板信息 + * @return 结果 + */ + @Override + public int insertWechatTemplate(WechatTemplateDto wechatTemplateDto) { + // 检查微信模板名称是否已存在 + if (wechatTemplateMapper.countByWechatTemplateDto(wechatTemplateDto) > 0) { + throw new ServiceException("微信模板名称已存在"); + } + + // 设置创建者和创建时间 + String currentUsername = SecurityUtils.getUsername(); + Date currentTime = DateUtils.getNowDate(); + wechatTemplateDto.setCreateBy(currentUsername); + wechatTemplateDto.setCreateTime(currentTime); + + // 将WechatTemplateDto对象的属性复制到WechatTemplate对象 + WechatTemplate wechatTemplate = new WechatTemplate(); + BeanUtils.copyProperties(wechatTemplateDto, wechatTemplate); + + // 插入WechatTemplate记录并检查结果 + if (wechatTemplateMapper.insertWechatTemplate(wechatTemplate) <= 0) { + throw new ServiceException("新增微信模板失败"); + } + + // 创建WechatTemplateSuitTask对象并设置属性 + WechatTemplateSuitTask wechatTemplateSuitTask = new WechatTemplateSuitTask(); + wechatTemplateSuitTask.setWechatTemplateId(wechatTemplate.getId()); + wechatTemplateSuitTask.setSuitTaskTypeId(wechatTemplateDto.getSuitTaskTypeId()); + wechatTemplateSuitTask.setSuitTaskTypeName(wechatTemplateDto.getSuitTaskTypeName()); + wechatTemplateSuitTask.setCreateBy(currentUsername); + wechatTemplateSuitTask.setCreateTime(currentTime); + + // 插入WechatTemplateSuitTask记录并检查结果 + if (wechatTemplateMapper.insertWechatTemplateSuitTask(wechatTemplateSuitTask) <= 0) { + throw new ServiceException("新增微信模板适用任务类型失败"); + } + // 返回成功插入的记录数 + return 1; + } + + /** + * 修改微信模板信息 + * + * @param wechatTemplateDto 微信模板信息 + * @return 结果 + */ + @Override + public int updateWechatTemplate(WechatTemplateDto wechatTemplateDto) { + // 检查微信模板名称是否已存在 + if (wechatTemplateMapper.countByWechatTemplateDto(wechatTemplateDto) > 0) { + throw new ServiceException("微信模板名称已存在"); + } + + // 设置修改者和修改时间 + String editUsername = SecurityUtils.getUsername(); + Date editTime = DateUtils.getNowDate(); + wechatTemplateDto.setUpdateBy(editUsername); + wechatTemplateDto.setUpdateTime(editTime); + + // 将WechatTemplateDto对象的属性复制到WechatTemplate对象 + WechatTemplate wechatTemplate = new WechatTemplate(); + BeanUtils.copyProperties(wechatTemplateDto, wechatTemplate); + + // 修改WechatTemplate记录并检查结果 + if (wechatTemplateMapper.updateWechatTemplate(wechatTemplate) <= 0) { + throw new ServiceException("修改微信模板失败"); + } + + // 创建WechatTemplateSuitTask对象并设置属性 + WechatTemplateSuitTask wechatTemplateSuitTask = new WechatTemplateSuitTask(); + wechatTemplateSuitTask.setWechatTemplateId(wechatTemplate.getId()); + wechatTemplateSuitTask.setSuitTaskTypeId(wechatTemplateDto.getSuitTaskTypeId()); + wechatTemplateSuitTask.setSuitTaskTypeName(wechatTemplateDto.getSuitTaskTypeName()); + wechatTemplateSuitTask.setUpdateBy(editUsername); + wechatTemplateSuitTask.setUpdateTime(editTime); + + // 修改WechatTemplateSuitTask记录并检查结果 + if (wechatTemplateMapper.updateWechatTemplateSuitTask(wechatTemplateSuitTask) <= 0) { + throw new ServiceException("修改微信模板适用任务类型失败"); + } + // 返回成功修改的记录数 + return 1; + } + + /** + * 批量删除微信模板信息 + * + * @param ids 需要删除的微信模板信息主键 + * @return 结果 + */ + @Override + public int deleteWechatTemplateByIds(Long[] ids) { + // 删除微信模板记录并检查结果 + if (wechatTemplateMapper.deleteWechatTemplateByIds(ids) <= 0) { + throw new ServiceException("删除微信模板失败"); + } + // 删除微信模板适用任务类型记录并检查结果 + if (wechatTemplateMapper.deleteWechatTemplateSuitTaskByIds(ids) <= 0) { + throw new ServiceException("删除微信模板适用任务类型失败"); + } + // 返回成功删除的记录数 + return 1; + } + + /** + * 删除微信模板信息信息 + * + * @param id 微信模板信息主键 + * @return 结果 + */ + @Override + public int deleteWechatTemplateById(Long id) { + return wechatTemplateMapper.deleteWechatTemplateById(id); + } + + /** + * 根据id查询微信模板Dto + * + * @param id + * @return + */ + @Override + public WechatTemplateDto selectWechatTemplateDtoById(Long id) { + return wechatTemplateMapper.selectWechatTemplateDtoById(id); + } +} diff --git a/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml new file mode 100644 index 00000000..07d69273 --- /dev/null +++ b/postdischarge-manage/src/main/resources/mapper/manage/wechattemplate/WechatTemplateMapper.xml @@ -0,0 +1,405 @@ + + + + + + + + + + + + + + + + + + + + + + + select id, + department_id, + department_name, + disease_type_id, + disease_type_name, + template_id, + template_content, + template_source, + template_sort, + template_remark, + create_by, + create_time, + update_by, + update_time + from wechat_template + + + + + + + + + + + + insert into wechat_template + + department_id, + + department_name, + + disease_type_id, + + disease_type_name, + + wechat_template_name, + + template_id, + + template_content, + + template_source, + + template_sort, + + template_remark, + + create_by, + + create_time, + + update_by, + + update_time, + + + + #{departmentId}, + + #{departmentName}, + + #{diseaseTypeId}, + + #{diseaseTypeName}, + + #{templateId}, + + wechat_template_name, + + #{templateContent}, + + #{templateSource}, + + #{templateSort}, + + #{templateRemark}, + + #{createBy}, + + #{createTime}, + + #{updateBy}, + + #{updateTime}, + + + + + + insert into wechat_template_suit_task + + wechat_template_id, + + suit_task_type_id, + + suit_task_type_name, + + create_by, + + create_time, + + update_by, + + update_time, + + + + #{wechatTemplateId}, + + #{suitTaskTypeId}, + + #{suitTaskTypeName}, + + #{createBy}, + + #{createTime}, + + #{updateBy}, + + #{updateTime}, + + + + + + update wechat_template + + department_id = + #{departmentId}, + + department_name = + #{departmentName}, + + disease_type_id = + #{diseaseTypeId}, + + disease_type_name = + #{diseaseTypeName}, + + wechat_template_name = + #{wechatTemplateName}, + + template_id = + #{templateId}, + + template_content = + #{templateContent}, + + template_source = + #{templateSource}, + + template_sort = + #{templateSort}, + + template_remark = + #{templateRemark}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + + where id = #{id} + + + update wechat_template_suit_task + + suit_task_type_id = + #{suitTaskTypeId}, + + suit_task_type_name= + #{suitTaskTypeName}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + + where wechat_template_id =#{wechatTemplateId} + + + + delete + from wechat_template + where id = #{id} + + + + delete from wechat_template where id in + + #{id} + + + + + delete + from wechat_template_suit_task + where wechat_template_id in + + #{wechatTemplateId} + + + \ No newline at end of file