权限优化

master
xy 1 year ago
parent 4b7895f818
commit ae64c0f0d0

@ -12,7 +12,6 @@ NProgress.configure({ showSpinner: false }) // NProgress Configuration
const whiteList = ['/login'] // no redirect whitelist
router.beforeEach(async(to, from, next) => {
console.log(from.path,to.path)
// start progress bar
NProgress.start()

@ -65,15 +65,18 @@
ref="newElTree"
node-key="code"
lazy
:check-strictly="true"
:check-strictly="false"
show-checkbox
:default-expanded-keys="defaultExpanded"
:default-checked-keys="defaultChecked"
:props="{
label: 'name',
isLeaf: (data, node) => {
return data.level >= 5;
}
}"
:load="loadNode"></el-tree>
:load="loadNode"
@check="nodeCheck"></el-tree>
</div>
</el-scrollbar>
@ -116,9 +119,17 @@ export default {
originalType:[],
list:[],
newElTreeTag: 0,
defaultExpanded: [],
defaultChecked: [],
}
},
methods: {
nodeCheck(checked,{ checkedKeys,checkedNodes }) {
if(checked.level !== 5 && !!checkedNodes.find(i => i === checked)) {
this.defaultExpanded.push(checked.code)
}
},
async loadNode (node, resolve) {
const list = await this.getList(node?.data?.code || 0,node?.data?.level || 0)
resolve(list)
@ -132,21 +143,11 @@ export default {
},
checkNewTreeNodes (level = 0) {
this.$nextTick(() => {
// if (level === 0) {
// this.$refs['newElTree'].setCheckedKeys([])
//
// }
let user = this.users.find(i => i.id == this.activeUser)
if (user && user.village) {
let village = new Map()
user.village.forEach(item => {
village.set(item.village_code,item)
})
this.$refs['newElTree'].setCheckedKeys([...village.values()].map(i => Number(i.village_code)))
}
})
let user = this.users.find(i => i.id == this.activeUser)
if(user && user.village) {
this.defaultExpanded = user.village.filter(i => i.level !== 5).map(i => Number(i.village_code))
this.defaultChecked = user.village.filter(i => i.level === 5).map(i => Number(i.village_code))
}
},
async getList(pcode = 0,level = 0){
@ -158,10 +159,6 @@ export default {
} else {
return res.list
}
// const res = await getList(this.select)
// this.total = res.total
// this.list = res.data
// console.log(this.list)
},
async getAdminTypes(){
@ -275,7 +272,7 @@ export default {
return
}
delete submitUser.village
submitUser.village_code = this.$refs['newElTree']?.getCheckedNodes()?.filter(i => i.level === 5)?.map(i => i.code)?.toString()
submitUser.village_code = this.$refs['newElTree']?.getCheckedNodes()?.map(i => i.code)?.toString() || ""
Promise.all([...areaPromiseAll,...typePromiseAll,save(submitUser)]).then(res => {
this.getAdminTypes()
this.getAdminAreas()

Loading…
Cancel
Save