Pārlūkot izejas kodu

邮件功能对接联调

18118724055@163.com 1 mēnesi atpakaļ
vecāks
revīzija
9f93d4874b

+ 1 - 1
java/storlead-api/src/main/resources/application-dev.yml

@@ -208,7 +208,7 @@ storlead:
     remote:
       enabled: true
       scheme: http
-      host: 192.168.1.181
+      host: 192.168.1.162
       port: 10080
       context-path: /router/email
       # 也可直接写完整地址(优先于上面分项):

+ 31 - 0
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/controller/common/MailCommonApiController.java

@@ -0,0 +1,31 @@
+package com.storlead.mail.controller.common;
+
+import com.storlead.framework.common.result.Result;
+import com.storlead.mail.webclient.client.CrmEmailFolderRuleRemoteClient;
+import com.storlead.mail.webclient.client.MailCommonRemoteClient;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+@RestController
+@Log4j2
+@RequestMapping("/mail/common")
+@Api(tags = "邮件: 公共接口")
+public class MailCommonApiController {
+
+    @Resource
+    private MailCommonRemoteClient mailCommonRemoteClient;
+
+    @PostMapping("/mail_port_config")
+    @ApiOperation(value = "获取邮箱端口配置", notes = "获取邮箱端口配置")
+    public Result<?> getFolderRule(String mailAccount) {
+        return mailCommonRemoteClient.mailPortConfig(mailAccount);
+    }
+
+
+}

+ 1 - 0
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/controller/mkt/MktEmailAccountApiController.java

@@ -83,6 +83,7 @@ public class MktEmailAccountApiController {
     @PostMapping("/personal_mail_account")
     @ApiOperation("营销邮箱账户(含未读数)")
     public Result<?> personalMailAccount() {
+
         return mktAccountRemoteClient.personalMailAccount();
     }
 

+ 1 - 0
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/webclient/MailRemoteClientFacade.java

@@ -23,4 +23,5 @@ public class MailRemoteClientFacade {
     private final CrmMailboxAutoReplyRemoteClient crmMailboxAutoReply;
     private final CrmMailSignatureRemoteClient crmMailSignature;
     private final CrmThumbnailRemoteClient crmThumbnail;
+    private final MailCommonRemoteClient commonRemote;
 }

+ 0 - 4
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/webclient/client/CrmMailRemoteClient.java

@@ -109,8 +109,4 @@ public class CrmMailRemoteClient {
     public byte[] download(Long attachmentId) {
         return http.postForBytes(MailRemoteApiConstants.CRM_DOWNLOAD, http.formOf("attachmentId", attachmentId));
     }
-
-    public Result<?> mailPortConfig(String mailAccount) {
-        return http.postForm(MailRemoteApiConstants.CRM_MAIL_PORT_CONFIG, http.formOf("mailAccount", mailAccount));
-    }
 }

+ 17 - 0
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/webclient/client/MailCommonRemoteClient.java

@@ -0,0 +1,17 @@
+package com.storlead.mail.webclient.client;
+
+import com.storlead.framework.common.result.Result;
+import com.storlead.mail.pojo.dto.EmailTemplatesDTO;
+import com.storlead.mail.webclient.constant.MailRemoteApiConstants;
+import com.storlead.mail.webclient.support.MailRemoteHttpSupport;
+import lombok.RequiredArgsConstructor;
+
+
+@RequiredArgsConstructor
+public class MailCommonRemoteClient {
+    private final MailRemoteHttpSupport http;
+
+    public Result<?> mailPortConfig(String mailAccount) {
+        return http.postForm(MailRemoteApiConstants.COMMON_MAIL_PORT_CONFIG, http.formOf("mailAccount", mailAccount));
+    }
+}

+ 9 - 2
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/webclient/config/MailWebClientAutoConfiguration.java

@@ -126,6 +126,12 @@ public class MailWebClientAutoConfiguration {
         return new CrmThumbnailRemoteClient(http);
     }
 
+    @Bean
+    @ConditionalOnMissingBean
+    public MailCommonRemoteClient mailCommonRemoteClient(MailRemoteHttpSupport http) {
+        return new MailCommonRemoteClient(http);
+    }
+
     @Bean
     @ConditionalOnMissingBean
     public MailRemoteClientFacade mailRemoteClientFacade(MktMailRemoteClient mktMail,
@@ -139,10 +145,11 @@ public class MailWebClientAutoConfiguration {
                                                          CrmEmailFolderRuleRemoteClient crmEmailFolderRule,
                                                          CrmMailboxAutoReplyRemoteClient crmMailboxAutoReply,
                                                          CrmMailSignatureRemoteClient crmMailSignature,
-                                                         CrmThumbnailRemoteClient crmThumbnail) {
+                                                         CrmThumbnailRemoteClient crmThumbnail,
+                                                         MailCommonRemoteClient commonRemote) {
         return new MailRemoteClientFacade(
                 mktMail, mktAccount, crmMail, crmAccount, crmMailFile,
                 crmMailTemplates, crmMailBlacklist, crmUserEmailFolder,
-                crmEmailFolderRule, crmMailboxAutoReply, crmMailSignature, crmThumbnail);
+                crmEmailFolderRule, crmMailboxAutoReply, crmMailSignature, crmThumbnail,commonRemote);
     }
 }

+ 24 - 24
java/storlead-mail/storlead-mail-api/src/main/java/com/storlead/mail/webclient/constant/MailRemoteApiConstants.java

@@ -100,76 +100,76 @@ public final class MailRemoteApiConstants {
     // ========================= CRM 邮件主流程 /mail =========================
 
     /** 同步发送邮件,form:SendMailDTO */
-    public static final String CRM_SEND_MAIL = "/mail/send_mail";
+    public static final String CRM_SEND_MAIL = "/crm/send_mail";
 
     /** 异步发送邮件,form:SendMailDTO */
-    public static final String CRM_ASYN_SEND_MAIL = "/mail/asyn_send_mail";
+    public static final String CRM_ASYN_SEND_MAIL = "/crm/asyn_send_mail";
 
     /** 保存草稿,form:SendMailDTO */
-    public static final String CRM_SAVE_DRAFT = "/mail/save_draft";
+    public static final String CRM_SAVE_DRAFT = "/crm/save_draft";
 
     /** 收取邮件(当前用户默认账户) */
-    public static final String CRM_RECEIVE_MAIL = "/mail/receive_mail";
+    public static final String CRM_RECEIVE_MAIL = "/crm/receive_mail";
 
     /** 批量下载邮件为 eml zip,form:MailDTO,返回二进制 */
-    public static final String CRM_DOWNLOAD_MAIL_EML_ZIP = "/mail/download_mail_eml_zip";
+    public static final String CRM_DOWNLOAD_MAIL_EML_ZIP = "/crm/download_mail_eml_zip";
 
     /** 下载单封邮件 eml,form:MailDTO,返回二进制 */
-    public static final String CRM_DOWNLOAD_MAIL_EML = "/mail/download_mail_eml";
+    public static final String CRM_DOWNLOAD_MAIL_EML = "/crm/download_mail_eml";
 
     /** 移动邮件到指定箱,form:MailMoveDTO */
-    public static final String CRM_MV_MAIL_BOX = "/mail/mv_mail_box";
+    public static final String CRM_MV_MAIL_BOX = "/crm/mv_mail_box";
 
     /** 标记/移入垃圾箱,form:MailMoveDTO */
-    public static final String CRM_MARK_TRASH = "/mail/mark_trash";
+    public static final String CRM_MARK_TRASH = "/crm/mark_trash";
 
     /** 删除邮件(软删),参数:ids */
-    public static final String CRM_DELETE_IDS = "/mail/deleteIds";
+    public static final String CRM_DELETE_IDS = "/crm/deleteIds";
 
     /** 删除草稿,参数:ids */
-    public static final String CRM_DELETE_DRAFT_IDS = "/mail/deleteDraftIds";
+    public static final String CRM_DELETE_DRAFT_IDS = "/crm/deleteDraftIds";
 
     /** 获取邮件详情,参数:mailId(路径拼写与 B 服务保持一致 detial) */
-    public static final String CRM_GET_MAIL_DETAIL = "/mail/get_mail_detial";
+    public static final String CRM_GET_MAIL_DETAIL = "/crm/get_mail_detial";
 
     /** 邮件移入自定义文件夹,参数:mailIds、folderId */
-    public static final String CRM_MV_CUSTOM_FOLDER = "/mail/mv_custom_folder";
+    public static final String CRM_MV_CUSTOM_FOLDER = "/crm/mv_custom_folder";
 
     /** 从自定义文件夹移除邮件,参数:mailIds */
-    public static final String CRM_DEL_CUSTOM_FOLDER_MAIL = "/mail/del_custom_folder_mail";
+    public static final String CRM_DEL_CUSTOM_FOLDER_MAIL = "/crm/del_custom_folder_mail";
 
     /** 星标/取消星标,form:MailMoveDTO */
-    public static final String CRM_MARK_STAR = "/mail/mark_star";
+    public static final String CRM_MARK_STAR = "/crm/mark_star";
 
     /** 标记已读/未读,form:MailMoveDTO */
-    public static final String CRM_MARK_READ = "/mail/mark_read";
+    public static final String CRM_MARK_READ = "/crm/mark_read";
 
     /** 标记回复关联原信,form:MailMoveDTO */
-    public static final String CRM_MARK_REPLY_MSG_ID = "/mail/mark_reply_msg_id";
+    public static final String CRM_MARK_REPLY_MSG_ID = "/crm/mark_reply_msg_id";
 
     /** 全部标为已读 */
-    public static final String CRM_MARK_ALL_READ = "/mail/mark_all_read";
+    public static final String CRM_MARK_ALL_READ = "/crm/mark_all_read";
 
     /** 邮件附件列表,form:AttachmentDTO */
-    public static final String CRM_LIST_MAIL_ATTACHMENT = "/mail/list_mail_attachment";
+    public static final String CRM_LIST_MAIL_ATTACHMENT = "/crm/list_mail_attachment";
 
     /** 附件打包下载 zip,form:AttachmentDTO,返回二进制 */
-    public static final String CRM_DOWNLOAD_ZIP = "/mail/download_zip";
+    public static final String CRM_DOWNLOAD_ZIP = "/crm/download_zip";
 
     /** 获取正式附件下载地址,参数:attachmentId */
-    public static final String CRM_DOWNLOAD_URL = "/mail/download_url";
+    public static final String CRM_DOWNLOAD_URL = "/crm/download_url";
 
     /** 获取草稿附件下载地址,参数:attachmentId */
-    public static final String CRM_DRAFT_DOWNLOAD_URL = "/mail/draft_download_url";
+    public static final String CRM_DRAFT_DOWNLOAD_URL = "/crm/draft_download_url";
 
     /** 下载草稿附件文件流,参数:attachmentId */
-    public static final String CRM_DRAFT_DOWNLOAD = "/mail/draft_download";
+    public static final String CRM_DRAFT_DOWNLOAD = "/crm/draft_download";
 
     /** 下载正式附件文件流,参数:attachmentId */
-    public static final String CRM_DOWNLOAD = "/mail/download";
+    public static final String CRM_DOWNLOAD = "/crm/download";
 
     /** 根据邮箱账号查询端口/服务器配置,参数:mailAccount */
-    public static final String CRM_MAIL_PORT_CONFIG = "/mail/mail_port_config";
+    public static final String COMMON_MAIL_PORT_CONFIG = "/common/mail_port_config";
 
     // ========================= CRM 邮箱账户 /smtp/pop/setting =========================
 

+ 1 - 1
ui/smarttrade-platform/src/api/emails/index.js

@@ -1,6 +1,6 @@
 import { get, post, put, remove, upload } from '@/utils/request'
 
-export const getMailsPort = (mailAccount) => post('/router/rest/mail/mail_port_config', { mailAccount })
+export const getMailsPort = (mailAccount) => post('/router/rest/mail/common/mail_port_config', { mailAccount })
 export const emailsTest = (data) => post('/router/rest/mkt/email/account/test_connect', data)
 export const addEmailsSetting = (data) => post('/router/rest/mkt/email/account/save', data)
 export const getUserEmails = () => post('/router/rest/mkt/email/account/personal_mail_account')

+ 1 - 1
ui/sp-storlead-center/src/api/emails/index.ts

@@ -134,7 +134,7 @@ export const emailsTest = (data: EmailsForm) => {
  */
 export const getMailsPort = (mailAccount: string) => {
     return request({
-        url: '/mail/mail_port_config',
+        url: '/mail/common/mail_port_config',
         method: 'post',
         data: { mailAccount }
     });

+ 1 - 1
ui/sp-user-center/src/api/emails/index.ts

@@ -134,7 +134,7 @@ export const emailsTest = (data: EmailsForm) => {
  */
 export const getMailsPort = (mailAccount: string) => {
     return request({
-        url: '/mail/mail_port_config',
+        url: '/mail/common/mail_port_config',
         method: 'post',
         data: { mailAccount }
     });