houzhongjian
2024-09-14 818a0170d8f2950d52cc7300a302356bbc523236
提交 | 用户 | 时间
e7c126 1 package com.iailab.module.system.service.mail;
H 2
3 import com.iailab.framework.common.pojo.PageResult;
4 import com.iailab.module.system.controller.admin.mail.vo.template.MailTemplatePageReqVO;
5 import com.iailab.module.system.controller.admin.mail.vo.template.MailTemplateSaveReqVO;
6 import com.iailab.module.system.dal.dataobject.mail.MailTemplateDO;
7
8 import javax.validation.Valid;
9 import java.util.List;
10 import java.util.Map;
11
12 /**
13  * 邮件模版 Service 接口
14  *
15  * @author wangjingyi
16  * @since 2022-03-21
17  */
18 public interface MailTemplateService {
19
20     /**
21      * 邮件模版创建
22      *
23      * @param createReqVO 邮件信息
24      * @return 编号
25      */
26     Long createMailTemplate(@Valid MailTemplateSaveReqVO createReqVO);
27
28     /**
29      * 邮件模版修改
30      *
31      * @param updateReqVO 邮件信息
32      */
33     void updateMailTemplate(@Valid MailTemplateSaveReqVO updateReqVO);
34
35     /**
36      * 邮件模版删除
37      *
38      * @param id 编号
39      */
40     void deleteMailTemplate(Long id);
41
42     /**
43      * 获取邮件模版
44      *
45      * @param id 编号
46      * @return 邮件模版
47      */
48     MailTemplateDO getMailTemplate(Long id);
49
50     /**
51      * 获取邮件模版分页
52      *
53      * @param pageReqVO 模版信息
54      * @return 邮件模版分页信息
55      */
56     PageResult<MailTemplateDO> getMailTemplatePage(MailTemplatePageReqVO pageReqVO);
57
58     /**
59      * 获取邮件模板数组
60      *
61      * @return 模版数组
62      */
63     List<MailTemplateDO> getMailTemplateList();
64
65     /**
66      * 从缓存中获取邮件模版
67      *
68      * @param code 模板编码
69      * @return 邮件模板
70      */
71     MailTemplateDO getMailTemplateByCodeFromCache(String code);
72
73     /**
74      * 邮件模版内容合成
75      *
76      * @param content 邮件模版
77      * @param params 合成参数
78      * @return 格式化后的内容
79      */
80     String formatMailTemplateContent(String content, Map<String, Object> params);
81
82     /**
83      * 获得指定邮件账号下的邮件模板数量
84      *
85      * @param accountId 账号编号
86      * @return 数量
87      */
88     long getMailTemplateCountByAccountId(Long accountId);
89
90 }