From 66806e57ec328287f863f6542d64256a7e306e9c Mon Sep 17 00:00:00 2001 From: Lei OT Date: Fri, 25 Oct 2024 17:06:16 +0800 Subject: [PATCH] =?UTF-8?q?test:=20=E4=BF=9D=E5=AD=98=E9=82=AE=E4=BB=B6?= =?UTF-8?q?=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/actions/EmailActions.js | 13 ++-- src/config.js | 1 + .../Online/Input/EmailEditorPopup.jsx | 65 ++++++++++++------- 3 files changed, 53 insertions(+), 26 deletions(-) diff --git a/src/actions/EmailActions.js b/src/actions/EmailActions.js index 14c152b..8184ad8 100644 --- a/src/actions/EmailActions.js +++ b/src/actions/EmailActions.js @@ -1,5 +1,5 @@ import { fetchJSON, postForm } from '@/utils/request'; -import { API_HOST } from '@/config'; +import { API_HOST, EMAIL_HOST } from '@/config'; import testData from './test1.json'; /** @@ -18,11 +18,16 @@ export const salesSignature = async (opisn, lgc = 1) => { }; export const postSendEmail = async (body) => { + const { attaList, atta, content, ...bodyData } = body; const formData = new FormData(); - Object.keys(body).forEach(function (key) { - formData.append(key, body[key]); + Object.keys(bodyData).forEach(function (key) { + formData.append(key, bodyData[key]); }); - const { errcode, result } = await postForm(`http://202.103.68.18:888/service-mail/sendmail`, formData); + attaList.forEach(function (item) { + formData.append('attachment', item); + }); + const result = await postForm(`${EMAIL_HOST}/sendmail`, formData); + return result; }; export const getEmailDetailAction = async (param) => { diff --git a/src/config.js b/src/config.js index 0776c8e..488d0e4 100644 --- a/src/config.js +++ b/src/config.js @@ -8,6 +8,7 @@ export const API_HOST = 'http://202.103.68.157:8889/v2'; // export const API_HOST = 'https://p9axztuwd7x8a7.mycht.cn/whatsapp_server'; export const WS_URL = 'wss://p9axztuwd7x8a7.mycht.cn/whatsapp_server'; // prod: export const VONAGE_URL = 'https://p9axztuwd7x8a7.mycht.cn/vonage-server'; // 语音和视频接口: +export const EMAIL_HOST = 'http://202.103.68.231:888/service-mail'; export const DATE_FORMAT = 'YYYY-MM-DD'; export const DATETIME_FORMAT = 'YYYY-MM-DD HH:mm:ss'; diff --git a/src/views/Conversations/Online/Input/EmailEditorPopup.jsx b/src/views/Conversations/Online/Input/EmailEditorPopup.jsx index 21e557e..b9de703 100644 --- a/src/views/Conversations/Online/Input/EmailEditorPopup.jsx +++ b/src/views/Conversations/Online/Input/EmailEditorPopup.jsx @@ -10,6 +10,7 @@ import LexicalEditor from '@/components/LexicalEditor'; import { isEmpty } from '@/utils/commons'; import './EmailEditor.css'; +import { postSendEmail } from '@/actions/EmailActions'; const getAbstract = (longtext) => { const lines = longtext.split('\n'); @@ -46,21 +47,6 @@ const EmailEditorPopup = ({ open, setOpen, fromEmail, reference, quote = {}, ini form.setFieldValue('abstract', getAbstract(textContent)); }; - const onHandleSend = () => { - console.log('onSend callback', '\nisRichText', isRichText); - // console.log(form.getFieldsValue()); - const body = structuredClone(form.getFieldsValue()); - body.content = isRichText ? htmlContent : textContent; - body.fromEmail = newFromEmail || fromEmail; - console.log('body', body); - form.validateFields().then((values) => { - form.resetFields(); - }); - // .catch((err) => {}) - - // setOpen(false); - }; - const [newFromEmail, setNewFromEmail] = useState(''); const [initialForm, setInitialForm] = useState({}); const [initialContent, setInitialContent] = useState(''); @@ -134,7 +120,8 @@ const EmailEditorPopup = ({ open, setOpen, fromEmail, reference, quote = {}, ini setInitialContent(preQuoteBody); const _formValues = { to: replyToEmail || fromEmail, - cc: quote.cc, + cc: quote.cc || '', + bcc: quote.bcc || '', subject: `Re: ${subject}`, }; const forwardValues = { subject: `Fw: ${subject}` }; @@ -188,9 +175,40 @@ const EmailEditorPopup = ({ open, setOpen, fromEmail, reference, quote = {}, ini return e?.fileList; }; const uploadProps = { - action: 'https://660d2bd96ddfa2943b33731c.mockapi.io/api/upload', + // action: 'https://660d2bd96ddfa2943b33731c.mockapi.io/api/upload', // onChange: handleChange, // multiple: true, + fileList, + beforeUpload: (file) => { + setFileList(prev => [...prev, file]); + return false; + }, + onRemove: (file) => { + const index = fileList.indexOf(file); + const newFileList = fileList.slice(); + newFileList.splice(index, 1); + setFileList(newFileList); + }, + }; + + const onHandleSend = async () => { + console.log('onSend callback', '\nisRichText', isRichText); + // console.log(form.getFieldsValue()); + const body = structuredClone(form.getFieldsValue()); + body.mailcontent = isRichText ? htmlContent : textContent; + body.from = newFromEmail || fromEmail; + body.attaList = fileList; + body.opi_sn = 29; // debug: + body.mat_sn = 278; + console.log('body', body); + await form.validateFields(); + await postSendEmail(body); + // form.validateFields().then((values) => { + // form.resetFields(); + // }); + // .catch((err) => {}) + + // setOpen(false); }; return ( @@ -233,16 +251,16 @@ const EmailEditorPopup = ({ open, setOpen, fromEmail, reference, quote = {}, ini size='small' layout={'inline'} variant={'borderless'} - initialValues={{}} + // initialValues={{}} // onFinish={() => {}} className='email-editor-wrapper *:mb-2 *:border-b *:border-t-0 *:border-x-0 *:border-indigo-100 *:border-solid ' requiredMark={false} // labelCol={{ span: 3 }} > - + {/* */} - + /> */} + + + {!showCc && (