From 1d8d4a1ab4d40bce596c47c2a7a76bc1a60c4faf Mon Sep 17 00:00:00 2001 From: xxm Date: Tue, 25 Oct 2022 22:48:19 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E6=B6=88=E6=81=AF=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Form/src/helper.ts | 2 +- .../develop/dynamicform/DynamicFormList.vue | 2 +- .../notice/template/MessageTemplate.api.ts | 15 +++++ .../notice/template/MessageTemplateEdit.vue | 64 +++++++++++++++---- .../notice/template/MessageTemplateList.vue | 46 ++++++++++--- .../notice/template/TemplateRender.vue | 5 ++ 6 files changed, 110 insertions(+), 24 deletions(-) create mode 100644 src/views/modules/notice/template/TemplateRender.vue diff --git a/src/components/Form/src/helper.ts b/src/components/Form/src/helper.ts index c0231ae1..c1a73f4f 100644 --- a/src/components/Form/src/helper.ts +++ b/src/components/Form/src/helper.ts @@ -48,7 +48,7 @@ export function setComponentRuleType(rule: ValidationRule, component: ComponentT export function processDateValue(attr: Recordable, component: string) { const { valueFormat, value } = attr if (valueFormat) { - attr.value = isObject(value) ? dateUtil(value).format(valueFormat) : value + attr.value = isObject(value) ? dateUtil(value as any).format(valueFormat) : value } else if (DATE_TYPE.includes(component) && value) { attr.value = dateUtil(attr.value) } diff --git a/src/views/modules/develop/dynamicform/DynamicFormList.vue b/src/views/modules/develop/dynamicform/DynamicFormList.vue index f628ca89..5bb71077 100644 --- a/src/views/modules/develop/dynamicform/DynamicFormList.vue +++ b/src/views/modules/develop/dynamicform/DynamicFormList.vue @@ -129,7 +129,7 @@ // 设计 function design(record) {} - // 设计 + // 预览 function preview(record) {} // 删除 diff --git a/src/views/modules/notice/template/MessageTemplate.api.ts b/src/views/modules/notice/template/MessageTemplate.api.ts index 6e0fa18e..839ecb21 100644 --- a/src/views/modules/notice/template/MessageTemplate.api.ts +++ b/src/views/modules/notice/template/MessageTemplate.api.ts @@ -61,6 +61,21 @@ export const findAll = () => { }) } +/** + * 编码是否被使用 + */ +export const existsByCode = (code) => { + return defHttp.get>({ + url: '/message/template/existsByCode', + params: { code }, + }) +} +export const existsByCodeNotId = (code, id) => { + return defHttp.get>({ + url: '/message/template/existsByCodeNotId', + params: { code, id }, + }) +} /** * 消息模板 */ diff --git a/src/views/modules/notice/template/MessageTemplateEdit.vue b/src/views/modules/notice/template/MessageTemplateEdit.vue index af30abc7..b11c26ae 100644 --- a/src/views/modules/notice/template/MessageTemplateEdit.vue +++ b/src/views/modules/notice/template/MessageTemplateEdit.vue @@ -8,7 +8,15 @@ :mask-closable="showable" @cancel="handleCancel" > - + @@ -18,14 +26,21 @@ - - - - + + + + - + @@ -58,18 +69,24 @@ import BQuery from '/@/components/Bootx/Query/BQuery.vue' import { FormEditType } from '/@/enums/formTypeEnum' import { useMessage } from '/@/hooks/web/useMessage' - import { QueryField } from '/@/components/Bootx/Query/Query' + import { QueryField, STRING } from '/@/components/Bootx/Query/Query' + import Icon from '/@/components/Icon/src/Icon.vue' + import TemplateRender from './TemplateRender.vue' // 使用hooks const { handleTableChange, pageQueryResHandel, resetQueryParams, pagination, pages, model, loading } = useTablePage(queryPage) const { notification, createMessage, createConfirm } = useMessage() // 查询条件 - const fields = [] as QueryField[] + const fields = [ + { field: 'code', type: STRING, name: '编码', placeholder: '请输入编码' }, + { field: 'name', type: STRING, name: '名称', placeholder: '请输入名称' }, + ] as QueryField[] const xTable = $ref() const xToolbar = $ref() const messageTemplateEdit = $ref() + const templateRender = $ref() onMounted(() => { vxeBind() @@ -101,13 +118,24 @@ function show(record) { messageTemplateEdit.init(record.id, FormEditType.Show) } + // 渲染测试 + function render(record) { + TemplateRender.init(record.id) + } // 删除 function remove(record) { - del(record.id).then(() => { - createMessage.success('删除成功') + createConfirm({ + iconType: 'warning', + title: '警告', + content: '是否删除该表单', + onOk: () => { + del(record.id).then(() => { + notification.success({ message: '删除成功' }) + queryPage() + }) + }, }) - queryPage() } diff --git a/src/views/modules/notice/template/TemplateRender.vue b/src/views/modules/notice/template/TemplateRender.vue new file mode 100644 index 00000000..2b112b58 --- /dev/null +++ b/src/views/modules/notice/template/TemplateRender.vue @@ -0,0 +1,5 @@ + + + + +