diff --git a/src/views/system/mail/template/template.data.ts b/src/views/system/mail/template/template.data.ts index ca6038e..0da5a3a 100644 --- a/src/views/system/mail/template/template.data.ts +++ b/src/views/system/mail/template/template.data.ts @@ -170,9 +170,8 @@ export const formSchema: FormSchema[] = [ ] // 发送邮件 - // 这里加上前缀 防止和表单其他字段重名 -export const keyPrefix = 'key$-' +const keyPrefix = 'key$-' export const baseSendSchemas: FormSchema[] = [ { field: 'code', diff --git a/src/views/system/sms/template/smsTemplate.data.ts b/src/views/system/sms/template/smsTemplate.data.ts index a49063b..27ab3e0 100644 --- a/src/views/system/sms/template/smsTemplate.data.ts +++ b/src/views/system/sms/template/smsTemplate.data.ts @@ -1,3 +1,5 @@ +import { h } from 'vue' +import { ScrollContainer } from '@/components/Container' import type { BasicColumn, FormSchema } from '@/components/Table' import { useRender } from '@/components/Table' import { DICT_TYPE, getDictOptions } from '@/utils/dict' @@ -171,6 +173,8 @@ export const formSchema: FormSchema[] = [ ] // 发送短信 +// 这里加上前缀 防止和表单其他字段重名 +const keyPrefix = 'key$-' export const baseSendSchemas: FormSchema[] = [ { field: 'content', @@ -178,10 +182,19 @@ export const baseSendSchemas: FormSchema[] = [ label: '模板内容 ', required: false, defaultValue: '', - componentProps: { - options: { - readonly: true, - }, + render({ model }) { + let content: string = model.content + Object.keys(model).forEach((key) => { + if (!key.startsWith(keyPrefix)) + return + + const realKey = key.split(keyPrefix)[1] + content = content.replace(`{${realKey}}`, model[key]) + }) + return h(ScrollContainer, { + innerHTML: content, + style: { border: '1px solid #e8e8e8', borderRadius: '4px', padding: '10px' }, + }) }, }, {