From 57ffebab5fded6f5236bd1b40c4b4e7a6d4ae07f Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: Wed, 31 Jul 2024 09:50:09 +0800
Subject: [PATCH] 驱动下载
---
src/views/Admin/notice.vue | 156 ++++++++++++++++++++++++++++++++-------------------
1 files changed, 98 insertions(+), 58 deletions(-)
diff --git a/src/views/Admin/notice.vue b/src/views/Admin/notice.vue
index 3b8c67e..95a9b6f 100644
--- a/src/views/Admin/notice.vue
+++ b/src/views/Admin/notice.vue
@@ -78,8 +78,8 @@
</a-form-model-item>
</a-col>
</a-row>
- <span><b>发布单位:</b>{{form.publishingUnit}}</span>
- <br /><br />
+<!-- <span><b>发布单位:</b>{{form.publishingUnit}}</span>-->
+<!-- <br /><br />-->
<!-- 子单位-->
<a-row :gutter="24">
<a-col :span="12">
@@ -110,12 +110,24 @@
</a-checkbox>
</div>
<a-form-model-item prop="recipient">
- <a-select mode="multiple" placeholder="选择平级接收单位" v-model="form.recipient" @change="handle"
- :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"-->
+<!-- :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%"
+ :maxTagCount="3"
+ :tree-data="treeData"
+ tree-checkable
+ placeholder="选择平级接收单位"
+ :show-checked-strategy="SHOW_PARENT"
+ search-placeholder="Please select"
+ @change="handle"
+ @focus="getPj()"
+ />
</a-form-model-item>
</a-col>
</a-row>
@@ -130,7 +142,7 @@
</a-form-model-item>
</a-col>
<a-col :span="12" style="text-align: right">
- <a-button type="primary" style="width: 250px;" @click="confirmSend()" v-preventReClick="1500"
+ <a-button type="primary" style="width: 250px;" @click="confirmSend()" v-preventReClick="2000"
:disabled="userInfo.role.id==1?true:false">
确认并提交审核
</a-button>
@@ -141,7 +153,7 @@
<h2>短信预览</h2>
<div class="mobile">
<div class="mesg">
- <P>【自然灾害风险预警提示】{{form.content}}<br>发布单位:{{form.publishingUnit}}</P>
+ <P>【防灾减灾工作提示】{{form.content}}</P>
</div>
</div>
</div>
@@ -166,10 +178,16 @@
import {
deleteFile
} from "@/api/list";
+ import { TreeSelect } from 'ant-design-vue';
+ const SHOW_PARENT = TreeSelect.SHOW_PARENT;
+ const treeData = [];
export default {
name: "notice",
data() {
return {
+ value: [],
+ SHOW_PARENT,
+ treeData,
userInfo: {},
unittype: null,
wrapperCol: {
@@ -301,6 +319,7 @@
components: {},
created() {
const t = this
+ t.treeData = []
t.getAreaUsers()
t.areaUsers = JSON.parse(localStorage.getItem('areaUsers'))
const {
@@ -322,7 +341,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]);
+ 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('暂无数据')
}
@@ -330,7 +365,10 @@
this.$message.warning(res.data.msg);
}
},
-
+ getPj(){
+ this.treeData = []
+ this.getSameLevel()
+ },
// 获取接收单位
async getAreaUsers() {
let t = this
@@ -384,18 +422,25 @@
//选择平级部门部分
handle(selectedItems) {
const t = this
- if (t.form.recipient.length == t.filteredOptions.length) {
- t.checkSlAll = true
- } else {
- t.checkSlAll = false
- }
+ // if (t.form.recipient.length == t.filteredOptions.length) {
+ // t.checkSlAll = true
+ // } else {
+ // t.checkSlAll = false
+ // }
+ const group = t.treeData.map(item => item.value)
+ if (group.length === t.form.recipient.length && group.every((v,i) => v === t.form.recipient[i])) {
+ t.checkSlAll = true
+ } else {
+ t.checkSlAll = false
+ }
},
checkSlChange(e) {
const t = this
t.checkSlAll = !t.checkSlAll
if (t.checkSlAll == true) {
- t.form.recipient = t.filteredOptions.map(i => i.id)
+ // t.form.recipient = t.filteredOptions.map(i => i.id)
+ t.form.recipient = t.treeData.map(item => item.value)
} else {
t.form.recipient = []
}
@@ -487,50 +532,45 @@
const newAList = [].concat(...aList)
for (let i of newAList) {
// const {realName,...data} = i
- const {
- id: recipienterId,
- name: recipienterName,
- phone: recipienterPhone,
- company: receiveUnit,
- realName: recipienterRealName,
- registrationId: registrationId,
- ...rest
- } = i
- const obj = {
- recipienterId,
- recipienterName,
- recipienterRealName,
- recipienterPhone,
- receiveUnit,
- registrationId,
- ...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
- }
- this.form.peerRecipientIds.push(obj)
- }
+ // 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)
+ }
+
}
+
this.form.attachments = this.fileList.map(i => i.response.data.id)
const {
receiver,
@@ -683,4 +723,4 @@
}
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.2