|
@@ -1,4 +1,5 @@
|
|
|
import React, { useState, useImperativeHandle, forwardRef } from 'react';
|
|
import React, { useState, useImperativeHandle, forwardRef } from 'react';
|
|
|
|
|
+import { useTranslation } from 'react-i18next';
|
|
|
import { Modal, Form, Input, message } from 'antd';
|
|
import { Modal, Form, Input, message } from 'antd';
|
|
|
import { emailTemplateApi, MailSendReqVO } from '../../api/emailTemplate';
|
|
import { emailTemplateApi, MailSendReqVO } from '../../api/emailTemplate';
|
|
|
|
|
|
|
@@ -13,6 +14,7 @@ export interface MailTemplateSendFormRef {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const MailTemplateSendForm = forwardRef<MailTemplateSendFormRef, MailTemplateSendFormProps>(({ onSuccess }, ref) => {
|
|
const MailTemplateSendForm = forwardRef<MailTemplateSendFormRef, MailTemplateSendFormProps>(({ onSuccess }, ref) => {
|
|
|
|
|
+ const { t } = useTranslation();
|
|
|
const [dialogVisible, setDialogVisible] = useState(false);
|
|
const [dialogVisible, setDialogVisible] = useState(false);
|
|
|
const [formLoading, setFormLoading] = useState(false);
|
|
const [formLoading, setFormLoading] = useState(false);
|
|
|
const [form] = Form.useForm();
|
|
const [form] = Form.useForm();
|
|
@@ -34,9 +36,12 @@ const MailTemplateSendForm = forwardRef<MailTemplateSendFormRef, MailTemplateSen
|
|
|
setTemplateContent(data.content || '');
|
|
setTemplateContent(data.content || '');
|
|
|
setTemplateCode(data.code || '');
|
|
setTemplateCode(data.code || '');
|
|
|
|
|
|
|
|
- // 解析参数
|
|
|
|
|
- if (data.params) {
|
|
|
|
|
- const paramsArray = data.params.split(',').map((p: string) => p.trim()).filter((p: string) => p);
|
|
|
|
|
|
|
+ // 解析参数(params 可能为字符串或数组)
|
|
|
|
|
+ if (data.params != null && data.params !== '') {
|
|
|
|
|
+ const raw = data.params;
|
|
|
|
|
+ const paramsArray = Array.isArray(raw)
|
|
|
|
|
+ ? raw.map((p: any) => String(p).trim()).filter((p: string) => p)
|
|
|
|
|
+ : String(raw).split(',').map((p: string) => p.trim()).filter((p: string) => p);
|
|
|
setTemplateParams(paramsArray);
|
|
setTemplateParams(paramsArray);
|
|
|
|
|
|
|
|
// 初始化表单参数值
|
|
// 初始化表单参数值
|
|
@@ -102,10 +107,12 @@ const MailTemplateSendForm = forwardRef<MailTemplateSendFormRef, MailTemplateSen
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
|
<Modal
|
|
<Modal
|
|
|
- title="测试"
|
|
|
|
|
|
|
+ title={t('mailTemplate.test')}
|
|
|
open={dialogVisible}
|
|
open={dialogVisible}
|
|
|
onCancel={() => setDialogVisible(false)}
|
|
onCancel={() => setDialogVisible(false)}
|
|
|
onOk={submitForm}
|
|
onOk={submitForm}
|
|
|
|
|
+ okText={t('common.save')}
|
|
|
|
|
+ cancelText={t('common.cancel')}
|
|
|
confirmLoading={formLoading}
|
|
confirmLoading={formLoading}
|
|
|
width={600}
|
|
width={600}
|
|
|
destroyOnClose
|
|
destroyOnClose
|