fix: bug#10618、10608
This commit is contained in:
parent
5abfe399e2
commit
7c42ebc587
|
@ -52,34 +52,50 @@
|
|||
<template v-else>
|
||||
<j-form-item
|
||||
:name="['templateDetailTable', index, 'value']"
|
||||
:rules="{
|
||||
required: record.required,
|
||||
message: '该字段为必填字段',
|
||||
}"
|
||||
:rules="[
|
||||
{
|
||||
required: record.required,
|
||||
message: '该字段为必填字段',
|
||||
},
|
||||
...record.otherRules,
|
||||
]"
|
||||
>
|
||||
<ToUser
|
||||
v-if="record.type === 'user'"
|
||||
v-model:toUser="record.value"
|
||||
:type="data.type"
|
||||
:config-id="data.id"
|
||||
/>
|
||||
<ToOrg
|
||||
v-else-if="record.type === 'org'"
|
||||
:type="data.type"
|
||||
:config-id="data.id"
|
||||
v-model:toParty="record.value"
|
||||
/>
|
||||
<ToTag
|
||||
v-else-if="record.type === 'tag'"
|
||||
:type="data.type"
|
||||
:config-id="data.id"
|
||||
v-model:toTag="record.value"
|
||||
/>
|
||||
<ValueItem
|
||||
v-else
|
||||
v-model:modelValue="record.value"
|
||||
:itemType="record.type"
|
||||
/>
|
||||
<template
|
||||
v-if="
|
||||
data.type === 'dingTalk' ||
|
||||
data.type === 'weixin'
|
||||
"
|
||||
>
|
||||
<ToUser
|
||||
v-if="record.type === 'user'"
|
||||
v-model:toUser="record.value"
|
||||
:type="data.type"
|
||||
:config-id="data.id"
|
||||
/>
|
||||
<ToOrg
|
||||
v-else-if="record.type === 'org'"
|
||||
:type="data.type"
|
||||
:config-id="data.id"
|
||||
v-model:toParty="record.value"
|
||||
/>
|
||||
<ToTag
|
||||
v-else-if="record.type === 'tag'"
|
||||
:type="data.type"
|
||||
:config-id="data.id"
|
||||
v-model:toTag="record.value"
|
||||
/>
|
||||
<ValueItem
|
||||
v-else
|
||||
v-model:modelValue="record.value"
|
||||
:itemType="record.type"
|
||||
/>
|
||||
</template>
|
||||
<template v-else>
|
||||
<ValueItem
|
||||
v-model:modelValue="record.value"
|
||||
:itemType="record.type"
|
||||
/>
|
||||
</template>
|
||||
</j-form-item>
|
||||
</template>
|
||||
</template>
|
||||
|
@ -101,6 +117,8 @@ import { message } from 'jetlinks-ui-components';
|
|||
import ToUser from '@/views/notice/Template/Detail/components/ToUser.vue';
|
||||
import ToOrg from '@/views/notice/Template/Detail/components/ToOrg.vue';
|
||||
import ToTag from '@/views/notice/Template/Detail/components/ToTag.vue';
|
||||
import type { Rule } from 'ant-design-vue/es/form';
|
||||
import { phoneRegEx } from '@/utils/validate';
|
||||
|
||||
type Emits = {
|
||||
(e: 'update:visible', data: boolean): void;
|
||||
|
@ -134,7 +152,7 @@ const getTemplateList = async () => {
|
|||
const { result } = await ConfigApi.getTemplate(params, props.data.id);
|
||||
templateList.value = result;
|
||||
formData.value.templateId = result[0]?.id as string;
|
||||
getTemplateDetail()
|
||||
getTemplateDetail();
|
||||
};
|
||||
|
||||
watch(
|
||||
|
@ -155,7 +173,27 @@ const getTemplateDetail = async () => {
|
|||
(m: any) => ({
|
||||
...m,
|
||||
type: m.expands ? m.expands.businessType : m.type,
|
||||
value: undefined,
|
||||
value: undefined,
|
||||
// 电话字段校验
|
||||
otherRules:
|
||||
m.id === 'calledNumber' || m.id === 'phoneNumber'
|
||||
? [
|
||||
{
|
||||
max: 64,
|
||||
message: '最多可输入64个字符',
|
||||
trigger: 'change',
|
||||
},
|
||||
{
|
||||
trigger: 'change',
|
||||
validator(_rule: Rule, value: string) {
|
||||
if (!value) return Promise.resolve();
|
||||
if (!phoneRegEx(value))
|
||||
return Promise.reject('请输入有效号码');
|
||||
return Promise.resolve();
|
||||
},
|
||||
},
|
||||
]
|
||||
: [],
|
||||
}),
|
||||
);
|
||||
};
|
||||
|
|
|
@ -209,6 +209,7 @@ watch(
|
|||
const onTreeSelect = (keys: any) => {
|
||||
deptId.value = keys[0];
|
||||
pageSize.value = 5;
|
||||
current.value = 1;
|
||||
};
|
||||
|
||||
// 右侧表格
|
||||
|
|
|
@ -194,7 +194,7 @@ const getTemplateDetail = async () => {
|
|||
},
|
||||
},
|
||||
]
|
||||
: '',
|
||||
: [],
|
||||
}),
|
||||
);
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue