|
|
|
@ -14,14 +14,16 @@
@@ -14,14 +14,16 @@
|
|
|
|
|
* Copyright © 2020-2022 <a href="http://www.entfrm.com/">entfrm</a> All rights reserved. |
|
|
|
|
* author entfrm开发团队-王翔 |
|
|
|
|
*/ |
|
|
|
|
import { ref, unref} from 'vue'; |
|
|
|
|
import { reactive } from 'vue'; |
|
|
|
|
import { BasicForm, useForm } from '/@/components/Form'; |
|
|
|
|
import { institutionFormSchema } from './org.data'; |
|
|
|
|
import { addOrg, getOrg, editOrg } from '/@/api/platform/common/controller/org'; |
|
|
|
|
import { BasicModal, ModalProps, useModalInner } from '/@/components/Modal'; |
|
|
|
|
|
|
|
|
|
/** 通用变量统一声明区域 */ |
|
|
|
|
const tag = ref<Nullable<string>>(''); |
|
|
|
|
const state = reactive({ |
|
|
|
|
tag: '' |
|
|
|
|
}); |
|
|
|
|
/** https://v3.cn.vuejs.org/api/options-data.html#emits */ |
|
|
|
|
const emit = defineEmits(['success', 'register']); |
|
|
|
|
const [registerForm, { resetFields, setFieldsValue, validate, clearValidate, updateSchema }] = useForm({ |
|
|
|
@ -35,11 +37,11 @@
@@ -35,11 +37,11 @@
|
|
|
|
|
await resetFields(); |
|
|
|
|
await clearValidate(); |
|
|
|
|
// 处理设置数据 |
|
|
|
|
tag.value = data._tag; |
|
|
|
|
state.tag = data._tag; |
|
|
|
|
const id = data.record?.id; |
|
|
|
|
const props: Partial<ModalProps> = { confirmLoading: false }; |
|
|
|
|
// 采用tag标签区分操作 |
|
|
|
|
switch (unref(tag)) { |
|
|
|
|
switch (state.tag) { |
|
|
|
|
case 'add': |
|
|
|
|
props.title = '新增机构'; |
|
|
|
|
break; |
|
|
|
@ -47,16 +49,13 @@
@@ -47,16 +49,13 @@
|
|
|
|
|
props.title = '编辑机构'; |
|
|
|
|
const result = await getOrg(id); |
|
|
|
|
const org = result.result; |
|
|
|
|
if (result?.extend) { |
|
|
|
|
await updateSchema({ |
|
|
|
|
field: 'regionIds', |
|
|
|
|
componentProps: { |
|
|
|
|
displayRender: value => { |
|
|
|
|
result?.extend.join(' / '); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
org.regionIds = result.extend; |
|
|
|
|
await updateSchema({ |
|
|
|
|
field: 'regionIds', |
|
|
|
|
componentProps: { |
|
|
|
|
displayRenderArray: result.extend |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
await setFieldsValue(org); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
@ -71,8 +70,9 @@
@@ -71,8 +70,9 @@
|
|
|
|
|
const formData = await validate(); |
|
|
|
|
// 处理提交之前逻辑 |
|
|
|
|
setModalProps({ confirmLoading: true }); |
|
|
|
|
formData.regionIds = formData.regionIds.join(); |
|
|
|
|
// 采用tag标签区分操作 |
|
|
|
|
switch (unref(tag)) { |
|
|
|
|
switch (state.tag) { |
|
|
|
|
case 'add': |
|
|
|
|
await addOrg(formData); |
|
|
|
|
break; |
|
|
|
|