fix: 钉钉机器人消息类型优化

This commit is contained in:
JiangQiming 2023-01-31 16:48:01 +08:00
parent 2553b2dafc
commit ea4552a2b8
1 changed files with 53 additions and 27 deletions

View File

@ -120,15 +120,15 @@
] ]
" "
> >
<!-- <a-input <a-input
v-model:value=" v-model:value="
formData.template.markdown?.title formData.template.markdown.title
" "
placeholder="请输入标题" placeholder="请输入标题"
/> --> />
</a-form-item> </a-form-item>
</template> </template>
<!-- <template <template
v-if=" v-if="
formData.template.messageType === 'link' formData.template.messageType === 'link'
" "
@ -141,7 +141,7 @@
> >
<a-input <a-input
v-model:value=" v-model:value="
formData.template.link?.title formData.template.link.title
" "
placeholder="请输入标题" placeholder="请输入标题"
/> />
@ -149,21 +149,40 @@
<a-form-item label="图片链接"> <a-form-item label="图片链接">
<a-input <a-input
v-model:value=" v-model:value="
formData.template.link?.picUrl formData.template.link.picUrl
" "
placeholder="请输入图片链接" placeholder="请输入图片链接"
/> >
<template #addonAfter>
<a-upload
name="file"
:action="FILE_UPLOAD"
:headers="{
[TOKEN_KEY]:
LocalStore.get(
TOKEN_KEY,
),
}"
:showUploadList="false"
@change="
(e) => handleChange(e)
"
>
<AIcon type="UploadOutlined" />
</a-upload>
</template>
</a-input>
</a-form-item> </a-form-item>
<a-form-item label="内容链接"> <a-form-item label="内容链接">
<a-input <a-input
v-model:value=" v-model:value="
formData.template.link formData.template.link
?.messageUrl .messageUrl
" "
placeholder="请输入内容链接" placeholder="请输入内容链接"
/> />
</a-form-item> </a-form-item>
</template> --> </template>
</template> </template>
</template> </template>
<!-- 微信 --> <!-- 微信 -->
@ -456,7 +475,7 @@
<script setup lang="ts"> <script setup lang="ts">
import { getImage } from '@/utils/comm'; import { getImage } from '@/utils/comm';
import { Form } from 'ant-design-vue'; import { Form, UploadChangeParam } from 'ant-design-vue';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import { IVariableDefinitions, TemplateFormData } from '../types'; import { IVariableDefinitions, TemplateFormData } from '../types';
import { import {
@ -475,6 +494,10 @@ import ToUser from './components/ToUser.vue';
import ToOrg from './components/ToOrg.vue'; import ToOrg from './components/ToOrg.vue';
import ToTag from './components/ToTag.vue'; import ToTag from './components/ToTag.vue';
import { FILE_UPLOAD } from '@/api/comm';
import { LocalStore } from '@/utils/comm';
import { TOKEN_KEY } from '@/utils/variable';
const router = useRouter(); const router = useRouter();
const route = useRoute(); const route = useRoute();
const useForm = Form.useForm; const useForm = Form.useForm;
@ -537,14 +560,6 @@ watch(
}, },
); );
// computed(() => {
// // console.log('formData.value.type: ', formData.value.type);
// Object.assign(
// formData.value.template,
// TEMPLATE_FIELD_MAP[formData.value.type][formData.value.provider],
// );
// });
// //
const formRules = ref({ const formRules = ref({
type: [{ required: true, message: '请选择通知方式' }], type: [{ required: true, message: '请选择通知方式' }],
@ -637,6 +652,15 @@ const getConfigList = async () => {
}; };
getConfigList(); getConfigList();
/**
* link消息类型 图片链接
*/
const handleChange = (info: UploadChangeParam) => {
if (info.file.status === 'done') {
formData.value.template.link.picUrl = info.file.response?.result;
}
};
/** /**
* 配置选择改变 * 配置选择改变
*/ */
@ -672,10 +696,12 @@ getSignsList();
*/ */
const btnLoading = ref<boolean>(false); const btnLoading = ref<boolean>(false);
const handleSubmit = () => { const handleSubmit = () => {
if (formData.value.type === 'email') delete formData.value.configId if (formData.value.type === 'email') delete formData.value.configId;
if (formData.value.template.messageType === 'markdown') delete formData.value.template.link
if (formData.value.template.messageType === 'link') delete formData.value.template.markdown
// console.log('formData.value: ', formData.value);
validate() validate()
.then(async () => { .then(async () => {
// console.log('formData.value: ', formData.value);
formData.value.template.ttsCode = formData.value.template.ttsCode =
formData.value.template.templateCode; formData.value.template.templateCode;
btnLoading.value = true; btnLoading.value = true;
@ -700,13 +726,13 @@ const handleSubmit = () => {
}; };
// test // test
watch( // watch(
() => formData.value, // () => formData.value,
(val) => { // (val) => {
console.log('formData.value: ', val); // console.log('formData.value: ', val);
}, // },
{ deep: true }, // { deep: true },
); // );
// test // test
</script> </script>