From ff087240b3dee29ce4e14ad0836e76b9fdf312cf Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期二, 19 八月 2025 09:28:07 +0800 Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/lianhelihua_sh --- admin/src/components/business/OperaManagersWindow.vue | 98 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 92 insertions(+), 6 deletions(-) diff --git a/admin/src/components/business/OperaManagersWindow.vue b/admin/src/components/business/OperaManagersWindow.vue index e106aac..5a93fea 100644 --- a/admin/src/components/business/OperaManagersWindow.vue +++ b/admin/src/components/business/OperaManagersWindow.vue @@ -6,8 +6,37 @@ @confirm="confirm" > <el-form :model="form" ref="form" :rules="rules"> - <el-form-item label="閫夋嫨璐熻矗浜猴細" prop="memberId"> - <el-select v-model="form.memberId" filterable remote :remote-method="loadMember" :loading="loading" placeholder="鍙緭鍏ュ鍚� | 鎵嬫満鍙� | 閮ㄩ棬鍚嶇О杩涜鎼滅储"> + <el-form-item label="璁剧疆鑼冨洿" prop="isMember" :required="true"> + <el-radio-group v-model="form.isMember"> + <el-radio :label="0">閫夋嫨閮ㄩ棬</el-radio> +<!-- <el-radio :label="1">閮ㄩ棬鍙婂叾涓嬬骇閮ㄩ棬鍛樺伐</el-radio>--> + <el-radio :label="2">鎸囧畾浜哄憳</el-radio> + </el-radio-group> + </el-form-item> + <el-form-item label="鎵�灞炵粍缁�" prop="companyIds" v-if="form.isMember==0 || form.isMember==1" :required="true"> +<!-- <treeselect + v-model="form.companyId" + placeholder="璇烽�夋嫨" + :options="companyTree" + :normalizer="normalizeOptions" + :default-expand-level="1" + noChildrenText="娌℃湁瀛愰�夐」" + noOptionsText="娌℃湁鍙�夐」" + noResultsText="娌℃湁鍖归厤鐨勭粨鏋�" />--> + <el-tree + ref="tree" + :data="companyTree" + show-checkbox + node-key="id" + default-expand-all + @check-change="changeTree" + :expand-on-click-node="false" + :check-on-click-node="false" + :props="{id:'id',children: 'childList',label: 'name',isLeaf:'isLeaf'}"> + </el-tree> + </el-form-item> + <el-form-item label="閫夋嫨璐熻矗浜猴細" prop="memberIds" v-if="form.isMember==2" :required="true"> + <el-select v-model="form.memberIds" filterable :multiple="true" :loading="loading" placeholder="鍙緭鍏ュ鍚� | 鎵嬫満鍙� | 閮ㄩ棬鍚嶇О杩涜鎼滅储"> <el-option v-for="item in memberList" :key="item.id" @@ -35,6 +64,9 @@ import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' import { allList } from '@/api/business/member' +import { treeList, allList as companyList } from '@/api/business/company' +import { createRoleMenu } from '@/api/system/role' +import { create } from '@/api/business/managers' export default { name: 'OperaManagersWindow', @@ -45,17 +77,28 @@ // 琛ㄥ崟鏁版嵁 form: { type: '', + companyId: null, memberId: '', + memberIds: [], + companyIds: [], remark: '', isQw: 0, - isEmail: 0 + isEmail: 0, + isMember: 0 }, + companyTree: [], loading: false, memberList: [], // 楠岃瘉瑙勫垯 rules: { - memberId: [ + memberIds: [ { required: true, message: '璇烽�夋嫨璐熻矗浜�' } + ], + companyIds: [ + { required: true, message: '璇烽�夋嫨閮ㄩ棬' } + ], + isMember: [ + { required: true, message: '閫夋嫨璁剧疆鑼冨洿' } ] } } @@ -67,10 +110,52 @@ }) }, methods: { + loadData (node, resolve) { + console.log(node) + if(!node.hasChildren || (node.childList && node.childList.length >0)){ + return + } + companyList({ parentId: node.id }) + .then(res => { + node.childList = res + }) + }, + changeTree (node) { + const selectedMenus = this.$refs.tree.getCheckedNodes(false, true) + this.form.companyIds = selectedMenus.map(menu => menu.id) + console.log(this.form.companyIds) + }, + getfindCompanyTreePage () { + treeList({}) + .then(res => { + if (res && res.length > 0) { + res[0].fsStatus = 1 + res[0].isLeaf = res[0].hasChildren + this.companyTree = res + // 鎵惧嚭鍙惰妭鐐� + // this.companyTree = this.companyTree.filter(menu => this.companyTree.findIndex(m => m.parentId === menu.id) === -1) + console.log(res) + // this.searchForm.erpOrgId = res[0].erpId + } + }) + }, + + // 瑙勮寖鍖栭�夐」鏁版嵁鐨勬柟娉� + normalizeOptions (node) { + if (node.childList && !node.childList.length) { + delete node.childList + } + return { + id: node.id, + label: node.name, + children: node.childList + } + }, loadMember (query) { this.memberList = [] + console.log(query) if (!query || query == '') { - return + // return } this.loading = true allList({ @@ -95,7 +180,8 @@ this.form[this.configData['field.id']] = null }) this.memberList = [] - // this.loadMember() + this.getfindCompanyTreePage() + this.loadMember() } } } -- Gitblit v1.9.3