From 457f9c817adef8b003ee6379f493798bae5cbb69 Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期一, 19 五月 2025 09:31:19 +0800 Subject: [PATCH] 修改 --- src/views/Admin/components/msgEditMod.vue | 131 ++++++++++++++++++++++++++++++++----------- 1 files changed, 98 insertions(+), 33 deletions(-) diff --git a/src/views/Admin/components/msgEditMod.vue b/src/views/Admin/components/msgEditMod.vue index 7db7432..850b76f 100644 --- a/src/views/Admin/components/msgEditMod.vue +++ b/src/views/Admin/components/msgEditMod.vue @@ -136,11 +136,22 @@ </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" + :maxTagCount="3" + 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> @@ -179,7 +190,7 @@ <h2>短信预览</h2> <div class="mobile"> <div class="mesg"> - <P>【自然灾害风险预警提示】{{form.content}}<br>发布单位:{{form.publishingUnit}}</P> + <P>【新疆自然灾害预警中心】{{form.content}}</P> </div> </div> </div> @@ -195,6 +206,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 +216,8 @@ title: '信息审核', disable: true, visible: false, + SHOW_PARENT, + treeData, confirmLoading: false, leaders: [], userInfo: {}, @@ -276,18 +292,19 @@ const t = this const { baseUrl } = require('../../../../config/env.' + process.env.NODE_ENV) t.uploadUrl= baseUrl + '/attachment/upload/detail' - t.userInfo = getUserInfo() - t.header.uid = t.userInfo.uid - t.form.districtId = t.userInfo.districtId - t.form.publishingUnit = t.userInfo.company - t.getSameLevel() - t.getAreaUsers() }, computed: {}, methods: { openMod(type,data,id){ const t = this t.getLeaders() + t.treeData = [] + t.userInfo = getUserInfo() + t.header.uid = t.userInfo.uid + t.form.districtId = t.userInfo.districtId + t.form.publishingUnit = t.userInfo.company + t.getSameLevel() + t.getAreaUsers() t.form.acceptingUnitIds = [] t.form.peerRecipientIds = [] t.sendLeaders = [] @@ -371,7 +388,22 @@ 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]); + 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('暂无数据') } @@ -383,20 +415,28 @@ // 获取接收单位 async getAreaUsers(){ let t = this - let res = await getAreaWithUserIfo() - if(res.data.code == 100){ - if(res.data.data){ - // const treeD = [] - t.userTitTree(res.data.data) - // treeD.push(t.findNodeById(res.data.data,t.userInfo.districtId)) - t.areaUsers = t.findNodeById(res.data.data,t.userInfo.districtId).children - t.unittype = t.findNodeById(res.data.data,t.userInfo.districtId)?.type - }else{ - console.log('暂无数据') - } - }else{ - this.$message.warning(res.data.msg); - } + // let res = await getAreaWithUserIfo() + // if(res.data.code == 100){ + // if(res.data.data){ + // // const treeD = [] + // const data = JSON.parse(localStorage.getItem('areaUsers')) + // console.log('data',data); + // console.log('res',res.data) + // t.userTitTree(res.data.data) + // // treeD.push(t.findNodeById(res.data.data,t.userInfo.districtId)) + // t.areaUsers = t.findNodeById(res.data.data,t.userInfo.districtId).children + // t.unittype = t.findNodeById(res.data.data,t.userInfo.districtId)?.type + // }else{ + // console.log('暂无数据') + // } + // }else{ + // this.$message.warning(res.data.msg); + // } + const data = JSON.parse(localStorage.getItem('areaUsers')) + t.areaUsers = data; + t.userTitTree(data) + // t.areaUsers = t.findNodeById(data,t.userInfo.districtId).children + t.unittype = t.findNodeById(data,t.userInfo.districtId)?.type }, // 获取领导 @@ -528,19 +568,44 @@ const newAList = [].concat(...aList) for(let i of newAList){ // const {realName,...data} = i - const {id:recipienterId,name: recipienterName,phone: recipienterPhone,company: receiveUnit,realName: recipienterRealName,...rest} = i - const obj = { recipienterId, recipienterName, recipienterRealName, recipienterPhone, receiveUnit,...rest} + const {id:recipienterId,name: recipienterName,phone: recipienterPhone,company: receiveUnit,realName: recipienterRealName, registrationId: registrationId,...rest} = i + const obj = { recipienterId, recipienterName, recipienterRealName, recipienterPhone, receiveUnit, registrationId,...rest} 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