企标数据权限配置 重点标准跟踪清单展示

This commit is contained in:
宋伟佳
2022-03-16 16:22:56 +08:00
parent beef71c7c0
commit a14d9744b2
2 changed files with 102 additions and 1 deletions
+101
View File
@@ -40,6 +40,12 @@
v-btn-permission="'bb2571b08179edb36880aae169cb2e54'"
size="mini">配置法规库权限
</el-button>
<el-button type="primary"
class="common-button-primary add-button"
@click="roleDataAdd"
v-btn-permission="''"
size="mini">配置法规库数据权限
</el-button>
<el-button type="primary"
class="common-button-primary add-button"
@click="RolesAdd(1)"
@@ -181,6 +187,37 @@
</el-button>
</div>
</el-dialog>
<el-dialog
title="标准法规树数据"
:visible.sync="modalflag2"
:wrapperClosable="false"
@close="closeDialogData2"
size="800px">
<div class="myDialog">
<el-tree
v-if="modalflag2"
node-key="id"
class="filter-tree"
:data="treeData4"
:props="defaultProps3"
:default-checked-keys="nodeList4"
default-expand-all
highlight-current
:expand-on-click-node="false"
:show-checkbox="true"
:check-strictly="true"
@check="nodeClick3"
ref="tree4">
</el-tree>
</div>
<div slot="footer">
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="closeDialogData2">取消
</el-button>
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="confirmDialogData2">
确定
</el-button>
</div>
</el-dialog>
<el-dialog
:title="addRoleTitle"
:visible.sync="addModel"
@@ -394,12 +431,15 @@ export default {
],
addModel: false,
treeData3: [],
treeData4: [],
defaultProps3: {
children: 'children',
label: 'menuName'
},
nodeList2: [],
nodeList4: [],
modalflag: false,
modalflag2: false,
sideClose: false, // 边栏收展状态
filterText: '',
treeData: [],
@@ -606,6 +646,7 @@ export default {
if(list1.length > 0){
this.treeData3 = this.sortByKey(list1,"displaySeq")
this.treeData4 = this.sortByKey(list1,"displaySeq")
}
@@ -651,9 +692,27 @@ export default {
}
})
},
//配置数据确定按钮
confirmDialogData2(){
let menuIds = this.$refs.tree4.getCheckedKeys().join(',')
this.$http.postData('tsRoleMeunData/ts-role-menu-data/saveBatch', {
menuIds: menuIds,
roleId: this.id
}, {}, res => {
if (res.ok) {
this.$message.success('设置权限成功')
this.modalflag2 = false
}else{
this.$message.warning(res.message)
}
})
},
closeDialogData() {
this.modalflag = false
},
closeDialogData2() {
this.modalflag2 = false
},
/** 父子节点的级联 */
nodeClick(currentObj, treeStatus) {
// 用于:父子节点严格互不关联时,父节点勾选变化时通知子节点同步变化,实现单向关联。
@@ -671,6 +730,30 @@ export default {
}
}
},
/** 父子节点的级联 */
nodeClick3(currentObj, treeStatus) {
// 用于:父子节点严格互不关联时,父节点勾选变化时通知子节点同步变化,实现单向关联。
let selected = treeStatus.checkedKeys.indexOf(currentObj.id) // -1未选中
// 选中
if (selected !== -1) {
// 子节点只要被选中父节点就被选中
this.selectedParent4(currentObj)
// 统一处理子节点为相同的勾选状态
this.uniteChildSame4(currentObj, true)
} else {
// 未选中 处理子节点全部未选中
if (currentObj.children.length !== 0) {
this.uniteChildSame4(currentObj, false)
}
}
},
// 统一处理子节点为相同的勾选状态
uniteChildSame4(treeList, isSelected) {
this.$refs.tree4.setChecked(treeList.id, isSelected)
for (let i = 0; i < treeList.children.length; i++) {
this.uniteChildSame4(treeList.children[i], isSelected)
}
},
// 统一处理子节点为相同的勾选状态
uniteChildSame(treeList, isSelected) {
this.$refs.tree3.setChecked(treeList.id, isSelected)
@@ -686,6 +769,14 @@ export default {
this.selectedParent(currentNode.parent)
}
},
// 统一处理父节点为选中
selectedParent4(currentObj) {
let currentNode = this.$refs.tree4.getNode(currentObj)
if (currentNode.parent.key !== undefined) {
this.$refs.tree4.setChecked(currentNode.parent, true)
this.selectedParent4(currentNode.parent)
}
},
nodeClick2(currentObj, treeStatus) {
// 用于:父子节点严格互不关联时,父节点勾选变化时通知子节点同步变化,实现单向关联。
let selected = treeStatus.checkedKeys.indexOf(currentObj.id) // -1未选中
@@ -726,6 +817,16 @@ export default {
}
})
},
roleDataAdd(){
this.$http.get('tsRoleMeunData/ts-role-menu-data/list', {
ids: this.id
}, {}, res => {
if (res.ok) {
this.nodeList4 = res.data
this.modalflag2 = true
}
})
},
closeDialog() {
this.treeData2 = []
this.modalshowflag = false
@@ -39,7 +39,7 @@ export default {
library: false,
list: [],
tabValue: "",
menuName: ["国家/地区清单", "车型类别清单"/*, "重点标准跟踪清单"*/, "其他清单", "项目清单"]
menuName: ["国家/地区清单", "车型类别清单","重点标准跟踪清单", "其他清单", "项目清单"]
};
},
methods: {