From 11111c61a80e83438778d3eac41ef094d680c9ac Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期二, 06 二月 2024 11:02:19 +0800 Subject: [PATCH] 修改平级 --- src/views/Admin/components/msgEditMod.vue | 76 +++++++++++++++++++++++++++++++++----- 1 files changed, 66 insertions(+), 10 deletions(-) diff --git a/src/views/Admin/components/msgEditMod.vue b/src/views/Admin/components/msgEditMod.vue index 8f922f3..97c4b7a 100644 --- a/src/views/Admin/components/msgEditMod.vue +++ b/src/views/Admin/components/msgEditMod.vue @@ -136,11 +136,21 @@ </a-checkbox> </div> <a-form-model-item> - <a-select mode="multiple" placeholder="选择平级接收单位" v-model="form.recipient" @change="handle" :disabled="disable" :maxTagCount="3"> - <a-select-option v-for="item in filteredOptions" :key="item.id" :value="item.id"> - {{ item.recipientName }}({{item.company}} {{item.phone}}) - </a-select-option> - </a-select> +<!-- <a-select mode="multiple" placeholder="选择平级接收单位" v-model="form.recipient" @change="handle" :disabled="disable" :maxTagCount="3">--> +<!-- <a-select-option v-for="item in filteredOptions" :key="item.id" :value="item.id">--> +<!-- {{ item.recipientName }}({{item.company}} {{item.phone}})--> +<!-- </a-select-option>--> +<!-- </a-select>--> + <a-tree-select + v-model="form.recipient" + style="width: 100%" + :tree-data="treeData" + tree-checkable + placeholder="选择平级接收单位" + :show-checked-strategy="SHOW_PARENT" + search-placeholder="Please select" + @change="handle" + /> </a-form-model-item> </a-col> </a-row> @@ -195,6 +205,9 @@ import {postReview} from "@/api/review"; import axios from "axios"; import {deleteFile} from "@/api/list"; +import {TreeSelect} from "ant-design-vue"; +const SHOW_PARENT = TreeSelect.SHOW_PARENT; +const treeData = []; export default { name: "msgEditMod", data() { @@ -202,6 +215,8 @@ title: '信息审核', disable: true, visible: false, + SHOW_PARENT, + treeData, confirmLoading: false, leaders: [], userInfo: {}, @@ -372,7 +387,23 @@ let res = await getPeerRecipient() if(res.data.code == 100){ if(res.data.data){ - t.filteredOptions = res.data.data + // t.filteredOptions = res.data.data + for (const resKey in res.data.data) { + t.filteredOptions = t.filteredOptions.concat(...res.data.data[resKey]); + console.log(t.filteredOptions,'ops') + const obj = { + title: resKey, + value: resKey, + key: resKey, + children: res.data.data[resKey].map(item => { + item['title'] = item.recipientName + '(' +item.company +item.phone+ ')' + item['value'] = item.id + item['key'] = item.id + return item + }) + } + t.treeData.push(obj) + } }else{ console.log('暂无数据') } @@ -534,14 +565,39 @@ this.form.acceptingUnitIds.push(obj) } this.form.acceptingUnitIds = [...this.form.acceptingUnitIds,...this.sendLeaders] + + if(this.form.recipient.length>0){ - const bList = this.form.recipient.map(item => this.filteredOptions.find(i=>i.id == item)) - for(let i of bList){ - const {id:recipienterId,recipientName: recipienterName,phone: recipienterPhone, company: receiveUnit,...rest} = i - const obj = {recipienterId, recipienterName,recipienterPhone,receiveUnit,unittype:this.unittype,recipienterRealName:recipienterName,...rest} + // const bList = this.form.recipient.map(item => this.filteredOptions.find(i=>i.id == item)) + // for(let i of bList){ + // const {id:recipienterId,recipientName: recipienterName,phone: recipienterPhone, company: receiveUnit,...rest} = i + // const obj = {recipienterId, recipienterName,recipienterPhone,receiveUnit,unittype:this.unittype,recipienterRealName:recipienterName,...rest} + // this.form.peerRecipientIds.push(obj) + // } + let bList = [] + for(let i of this.form.recipient){ + for(let j of this.treeData){ + if(j.value == i){ + bList = bList.concat(j.children) + }else{ + if(j.children && j.children.length>0){ + for(let k of j.children){ + if(k.id == i){ + bList.push(k) + } + } + } + } + } + } + for (let i of bList) { + const {id: recipienterId, recipientName: recipienterName, phone: recipienterPhone, company: receiveUnit, id,province,city,area,town,...rest} = i + const obj = {recipienterId, recipienterName, recipienterPhone, receiveUnit, unittype: this.unittype, recipienterRealName: recipienterName, id,province,city,area,town} this.form.peerRecipientIds.push(obj) } } + + if(this.fileList.length == 0){ this.form.attachments = [] }else{ -- Gitblit v1.9.2