|
@@ -3,20 +3,35 @@
|
|
|
<el-dialog title="关联组织" v-model="state.dialogVisible" draggable append-to-body destroy-on-close @close="close" width="500px">
|
|
|
<el-form :model="state.ruleForm" ref="ruleFormRef" label-width="80px" v-loading="state.loading">
|
|
|
<el-form-item label="关联组织" prop="orgArray" :rules="[{ required: true, message: '请选择关联组织', trigger: 'change' }]">
|
|
|
- <el-cascader
|
|
|
- :options="orgData"
|
|
|
- filterable
|
|
|
- :props="{ value: 'id', label: 'name', checkStrictly: true, emitPath: false, multiple: true }"
|
|
|
- placeholder="请选择关联组织"
|
|
|
- class="w100"
|
|
|
- v-model="state.ruleForm.orgArray"
|
|
|
- ref="orgRef"
|
|
|
- @change="changeOrgData"
|
|
|
- collapse-tags
|
|
|
- collapse-tags-tooltip
|
|
|
- :max-collapse-tags="3"
|
|
|
- >
|
|
|
- </el-cascader>
|
|
|
+ <el-tree-select
|
|
|
+ v-model="state.ruleForm.orgArray"
|
|
|
+ :data="orgData"
|
|
|
+ multiple
|
|
|
+ :render-after-expand="false"
|
|
|
+ show-checkbox
|
|
|
+ placeholder="请选择关联组织"
|
|
|
+ ref="orgRef"
|
|
|
+ node-key="id"
|
|
|
+ @change="changeOrgData"
|
|
|
+ :props="{ label: 'name' }"
|
|
|
+ class="w100"
|
|
|
+ check-strictly
|
|
|
+ check-on-click-node
|
|
|
+ collapse-tags
|
|
|
+ collapse-tags-tooltip
|
|
|
+ :max-collapse-tags="3"
|
|
|
+ filterable
|
|
|
+ >
|
|
|
+ <!-- <template #header>
|
|
|
+ <el-checkbox
|
|
|
+ v-model="checkAll"
|
|
|
+ :indeterminate="indeterminate"
|
|
|
+ @change="handleCheckAll"
|
|
|
+ >
|
|
|
+ All
|
|
|
+ </el-checkbox>
|
|
|
+ </template>-->
|
|
|
+ </el-tree-select>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<template #footer>
|
|
@@ -66,11 +81,11 @@ const getOrgData = async () => {
|
|
|
const ruleFormRef = ref<any>(); // 表单ref
|
|
|
const openDialog = async (row: any) => {
|
|
|
try {
|
|
|
+ state.dialogVisible = true;
|
|
|
await getOrgData();
|
|
|
const { result } = await typeDetail(row.id);
|
|
|
state.ruleForm = result;
|
|
|
state.ruleForm.orgArray = result.knowledgeTypeOrgs.map((item: any) => item.orgId);
|
|
|
- state.dialogVisible = true;
|
|
|
} catch (error) {
|
|
|
// 打印错误信息
|
|
|
console.error(error);
|
|
@@ -87,13 +102,13 @@ const closeDialog = () => {
|
|
|
// 选择适用部门
|
|
|
const orgRef = ref<RefType>();
|
|
|
const changeOrgData = () => {
|
|
|
- let currentNode = orgRef.value.getCheckedNodes();
|
|
|
- state.ruleForm.typeOrgDtos = currentNode.map((item: any) => {
|
|
|
- return {
|
|
|
- orgId: item.value,
|
|
|
- orgName: item.label,
|
|
|
- };
|
|
|
- });
|
|
|
+ const currentNode = orgRef.value.getCheckedNodes();
|
|
|
+ state.ruleForm.typeOrgDtos = currentNode.map((item: any) => {
|
|
|
+ return {
|
|
|
+ orgId: item.id,
|
|
|
+ orgName: item.name,
|
|
|
+ };
|
|
|
+ });
|
|
|
};
|
|
|
// 保存
|
|
|
const onSubmit = async (formEl: FormInstance | undefined) => {
|