Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -32,17 +32,20 @@
|
||||
class="common-button-primary add-button"
|
||||
@click="roleAdd"
|
||||
v-btn-permission="'93e75b6ec0b2b6b0b40d2b11adeba88a'"
|
||||
size="mini">配置角色权限</el-button>
|
||||
size="mini">配置角色权限
|
||||
</el-button>
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="roleAddData"
|
||||
v-btn-permission="'bb2571b08179edb36880aae169cb2e54'"
|
||||
size="mini">配置数据权限</el-button>
|
||||
size="mini">配置数据权限
|
||||
</el-button>
|
||||
<el-button type="primary"
|
||||
class="common-button-primary add-button"
|
||||
@click="RolesAdd(1)"
|
||||
v-btn-permission="'3e0cee86b3522d4233df8f1f11ab02c7'"
|
||||
size="mini">新增角色</el-button>
|
||||
size="mini">新增角色
|
||||
</el-button>
|
||||
</div>
|
||||
<div class="content">
|
||||
<el-table
|
||||
@@ -74,7 +77,7 @@
|
||||
label="角色状态"
|
||||
width="170px">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.useFlag===0?'禁用':'启用' }}</span>
|
||||
<span>{{ scope.row.useFlag === 0 ? '禁用' : '启用' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -95,8 +98,12 @@
|
||||
<el-dropdown trigger="click" @command="handleCommand">
|
||||
<i class="iconfont"></i>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item v-btn-permission="'38e362493fd7603dc7fddd1f3ac8971c'" :command="[scope.row, '编辑']">编辑</el-dropdown-item>
|
||||
<el-dropdown-item v-btn-permission="'025368d14944c4c4c86da29109b5f383'" :command="[scope.row, '删除']">删除</el-dropdown-item>
|
||||
<el-dropdown-item v-btn-permission="'38e362493fd7603dc7fddd1f3ac8971c'" :command="[scope.row, '编辑']">
|
||||
编辑
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item v-btn-permission="'025368d14944c4c4c86da29109b5f383'" :command="[scope.row, '删除']">
|
||||
删除
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
@@ -118,20 +125,24 @@
|
||||
v-if="modalshowflag"
|
||||
node-key="id"
|
||||
class="filter-tree"
|
||||
v-loading="twoLoading"
|
||||
:data="treeData2"
|
||||
:props="defaultProps2"
|
||||
:default-checked-keys="nodeList"
|
||||
:expand-on-click-node="false"
|
||||
default-expand-all
|
||||
highlight-current
|
||||
show-checkbox
|
||||
check-strictly
|
||||
:show-checkbox="true"
|
||||
:check-strictly="true"
|
||||
@check="nodeClick2"
|
||||
ref="tree2">
|
||||
</el-tree>
|
||||
</div>
|
||||
<div slot="footer">
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="closeDialog">取消</el-button>
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="confirmDialog">确定</el-button>
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="confirmDialog">
|
||||
确定
|
||||
</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
@@ -151,14 +162,18 @@
|
||||
default-expand-all
|
||||
highlight-current
|
||||
:expand-on-click-node="false"
|
||||
show-checkbox
|
||||
check-strictly
|
||||
:show-checkbox="true"
|
||||
:check-strictly="true"
|
||||
@check="nodeClick"
|
||||
ref="tree3">
|
||||
</el-tree>
|
||||
</div>
|
||||
<div slot="footer">
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="closeDialogData">取消</el-button>
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="confirmDialogData">确定</el-button>
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="closeDialogData">取消
|
||||
</el-button>
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="confirmDialogData">
|
||||
确定
|
||||
</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
@@ -207,7 +222,8 @@
|
||||
</div>
|
||||
<div slot="footer">
|
||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="AddRoleCancel">取消</el-button>
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="AddRoleOk">确定</el-button>
|
||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="AddRoleOk">确定
|
||||
</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<el-drawer
|
||||
@@ -240,8 +256,10 @@
|
||||
icon="el-icon-check"
|
||||
type="primary"
|
||||
@click="SuperiorRoleOk"
|
||||
>确定</el-button>
|
||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="SuperiorRoleCancle">取消</el-button>
|
||||
>确定
|
||||
</el-button>
|
||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="SuperiorRoleCancle">取消
|
||||
</el-button>
|
||||
</div>
|
||||
</el-drawer>
|
||||
</div>
|
||||
@@ -250,8 +268,9 @@
|
||||
<script>
|
||||
export default {
|
||||
name: 'role-manage',
|
||||
data () {
|
||||
data() {
|
||||
return {
|
||||
twoLoading: false,
|
||||
type: '', // 新增/编辑状态
|
||||
addRoleTitle: '',
|
||||
SuperiorRoleData: {},
|
||||
@@ -259,11 +278,11 @@ export default {
|
||||
SuperiorRoleModel: false,
|
||||
addFormRules: {
|
||||
name: [
|
||||
{ required: true, message: '请输入角色名称', trigger: 'blur' },
|
||||
{required: true, message: '请输入角色名称', trigger: 'blur'},
|
||||
{type: 'string', max: 100, message: '角色名称不能超过100个字符', trigger: 'blur'}
|
||||
],
|
||||
useFlag: [
|
||||
{ required: true, message: '请选择角色状态', trigger: 'change' },
|
||||
{required: true, message: '请选择角色状态', trigger: 'change'},
|
||||
]
|
||||
},
|
||||
addForm: {
|
||||
@@ -313,7 +332,7 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleCommand (command) {
|
||||
handleCommand(command) {
|
||||
switch (command[1]) {
|
||||
case '编辑':
|
||||
this.RolesAdd(0, command[0])
|
||||
@@ -323,7 +342,7 @@ export default {
|
||||
break
|
||||
}
|
||||
},
|
||||
deleteRole (row) { // 删除角色
|
||||
deleteRole(row) { // 删除角色
|
||||
this.$confirm('此操作将永久删除该角色, 是否继续?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
@@ -347,33 +366,33 @@ export default {
|
||||
});
|
||||
});
|
||||
},
|
||||
drawerCheck (data) {
|
||||
drawerCheck(data) {
|
||||
var getlist = this.$refs.tree4.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
|
||||
if(getlist.length == 1) {
|
||||
}else {
|
||||
if (getlist.length == 1) {
|
||||
} else {
|
||||
this.$refs.tree4.setCheckedKeys([data.id]);
|
||||
}
|
||||
this.SuperiorRoleData = data
|
||||
},
|
||||
SuperiorRoleOk () { // 上级角色确定
|
||||
SuperiorRoleOk() { // 上级角色确定
|
||||
this.addForm.parentId = this.SuperiorRoleData.id
|
||||
this.addForm.parent = this.SuperiorRoleData.name
|
||||
this.nodeList3 = []
|
||||
this.nodeList3.push(this.addForm.parentId)
|
||||
this.SuperiorRoleModel = false
|
||||
},
|
||||
SuperiorRoleCancle () { // 上级角色取消
|
||||
SuperiorRoleCancle() { // 上级角色取消
|
||||
this.SuperiorRoleModel = false
|
||||
},
|
||||
AddRoleCancel () { // 新增角色取消
|
||||
AddRoleCancel() { // 新增角色取消
|
||||
this.$refs['addForm'].resetFields();
|
||||
this.addModel = false
|
||||
},
|
||||
AddRoleOk () { // 新增角色确定
|
||||
AddRoleOk() { // 新增角色确定
|
||||
this.$refs['addForm'].validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.type === 1) { // 新增
|
||||
this.$http.postData('sarRole/role',this.addForm , {}, res=> {
|
||||
this.$http.postData('sarRole/role', this.addForm, {}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('新增角色成功')
|
||||
this.addModel = false
|
||||
@@ -384,7 +403,7 @@ export default {
|
||||
}
|
||||
})
|
||||
} else { // 编辑
|
||||
this.$http.putData('sarRole/role',this.addForm , {}, res=> {
|
||||
this.$http.putData('sarRole/role', this.addForm, {}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('修改角色信息成功')
|
||||
this.addModel = false
|
||||
@@ -399,10 +418,10 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
SuperiorRole () { // 点击选择上级角色按钮
|
||||
SuperiorRole() { // 点击选择上级角色按钮
|
||||
this.SuperiorRoleModel = true
|
||||
},
|
||||
RolesAdd (type, row) { // 新增/编辑角色按钮
|
||||
RolesAdd(type, row) { // 新增/编辑角色按钮
|
||||
this.type = type
|
||||
if (type === 1) {
|
||||
this.addRoleTitle = '新增角色'
|
||||
@@ -423,79 +442,145 @@ export default {
|
||||
}
|
||||
this.addModel = true
|
||||
},
|
||||
getTree3 () {
|
||||
this.$http.get('sarResource/ts-resource', {}, {}, res=> {
|
||||
getTree3() {
|
||||
this.$http.get('sarResource/ts-resource', {}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.treeData3 = res.data
|
||||
}
|
||||
})
|
||||
},
|
||||
confirmDialogData () {
|
||||
confirmDialogData() {
|
||||
this.$http.postData('sarRole/role/resource', {
|
||||
resourceIds: this.$refs.tree3.getCheckedKeys().concat(this.$refs.tree3.getHalfCheckedKeys()),
|
||||
roleId: this.id
|
||||
}, {}, res=> {
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('设置权限成功')
|
||||
this.modalflag = false
|
||||
}
|
||||
})
|
||||
},
|
||||
closeDialogData () {
|
||||
closeDialogData() {
|
||||
this.modalflag = false
|
||||
},
|
||||
roleAddData () {
|
||||
/** 父子节点的级联 */
|
||||
nodeClick(currentObj, treeStatus) {
|
||||
// 用于:父子节点严格互不关联时,父节点勾选变化时通知子节点同步变化,实现单向关联。
|
||||
let selected = treeStatus.checkedKeys.indexOf(currentObj.id) // -1未选中
|
||||
// 选中
|
||||
if (selected !== -1) {
|
||||
// 子节点只要被选中父节点就被选中
|
||||
this.selectedParent(currentObj)
|
||||
// 统一处理子节点为相同的勾选状态
|
||||
this.uniteChildSame(currentObj, true)
|
||||
} else {
|
||||
// 未选中 处理子节点全部未选中
|
||||
if (currentObj.children.length !== 0) {
|
||||
this.uniteChildSame(currentObj, false)
|
||||
}
|
||||
}
|
||||
},
|
||||
// 统一处理子节点为相同的勾选状态
|
||||
uniteChildSame(treeList, isSelected) {
|
||||
this.$refs.tree3.setChecked(treeList.id, isSelected)
|
||||
for (let i = 0; i < treeList.children.length; i++) {
|
||||
this.uniteChildSame(treeList.children[i], isSelected)
|
||||
}
|
||||
},
|
||||
// 统一处理父节点为选中
|
||||
selectedParent(currentObj) {
|
||||
let currentNode = this.$refs.tree3.getNode(currentObj)
|
||||
if (currentNode.parent.key !== undefined) {
|
||||
this.$refs.tree3.setChecked(currentNode.parent, true)
|
||||
this.selectedParent(currentNode.parent)
|
||||
}
|
||||
},
|
||||
nodeClick2(currentObj, treeStatus) {
|
||||
// 用于:父子节点严格互不关联时,父节点勾选变化时通知子节点同步变化,实现单向关联。
|
||||
let selected = treeStatus.checkedKeys.indexOf(currentObj.id) // -1未选中
|
||||
// 选中
|
||||
if (selected !== -1) {
|
||||
// 子节点只要被选中父节点就被选中
|
||||
this.selectedParent2(currentObj)
|
||||
// 统一处理子节点为相同的勾选状态
|
||||
this.uniteChildSame2(currentObj, true)
|
||||
} else {
|
||||
// 未选中 处理子节点全部未选中
|
||||
if (currentObj.children.length !== 0) {
|
||||
this.uniteChildSame2(currentObj, false)
|
||||
}
|
||||
}
|
||||
},
|
||||
// 统一处理子节点为相同的勾选状态
|
||||
uniteChildSame2(treeList, isSelected) {
|
||||
this.$refs.tree2.setChecked(treeList.id, isSelected)
|
||||
for (let i = 0; i < treeList.children.length; i++) {
|
||||
this.uniteChildSame2(treeList.children[i], isSelected)
|
||||
}
|
||||
},
|
||||
selectedParent2(currentObj) {
|
||||
let currentNode = this.$refs.tree2.getNode(currentObj)
|
||||
if (currentNode.parent.key !== undefined) {
|
||||
this.$refs.tree2.setChecked(currentNode.parent, true)
|
||||
this.selectedParent2(currentNode.parent)
|
||||
}
|
||||
},
|
||||
roleAddData() {
|
||||
this.$http.get('sarRole/role/resource', {
|
||||
roleId: this.id
|
||||
}, {}, res=> {
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.nodeList2 = res.data
|
||||
this.modalflag = true
|
||||
}
|
||||
})
|
||||
},
|
||||
closeDialog () {
|
||||
closeDialog() {
|
||||
this.modalshowflag = false
|
||||
},
|
||||
confirmDialog () {
|
||||
confirmDialog() {
|
||||
this.$http.postData('sarRole/role/menu', {
|
||||
menuIds: this.$refs.tree2.getCheckedKeys().concat(this.$refs.tree2.getHalfCheckedKeys()),
|
||||
roleId: this.id
|
||||
}, {}, res=> {
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.$message.success('设置权限成功')
|
||||
this.modalshowflag = false
|
||||
}
|
||||
})
|
||||
},
|
||||
getTree2 () {
|
||||
this.$http.get('lawss/sarMenu', {}, {}, res=> {
|
||||
getTree2() {
|
||||
this.$http.get('lawss/sarMenu', {}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.treeData2 = res.data
|
||||
this.twoLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
roleAdd () { // 配置角色资源
|
||||
roleAdd() { // 配置角色资源
|
||||
this.treeTwoLoading = true
|
||||
this.$http.get('sarRole/role/menu', {
|
||||
roleId: this.id
|
||||
}, {}, res=> {
|
||||
roleId: this.id,
|
||||
}, {}, res => {
|
||||
if (res.ok) {
|
||||
this.modalshowflag = true
|
||||
this.nodeList = res.data
|
||||
this.twoLoading = true
|
||||
this.modalshowflag = true
|
||||
this.getTree2()
|
||||
}
|
||||
})
|
||||
},
|
||||
handleNodeClick (data) {
|
||||
handleNodeClick(data) {
|
||||
this.id = data.id
|
||||
this.getData()
|
||||
},
|
||||
getData () {
|
||||
getData() {
|
||||
this.$http.get('sarRole/role/id', {
|
||||
roleId: this.id
|
||||
},{
|
||||
}, {
|
||||
_this: this,
|
||||
loading: 'Loading'
|
||||
}, res=> {
|
||||
}, res => {
|
||||
if (res.ok) {
|
||||
this.data = []
|
||||
this.data.push(res.data)
|
||||
@@ -506,14 +591,14 @@ export default {
|
||||
if (!value) return true;
|
||||
return data.name.indexOf(value) !== -1;
|
||||
},
|
||||
treeCollapse () {
|
||||
treeCollapse() {
|
||||
this.sideClose = !this.sideClose
|
||||
},
|
||||
getTree () {
|
||||
getTree() {
|
||||
this.$http.get('sarRole/role', {}, {
|
||||
_this: this,
|
||||
loading: 'treeLoading'
|
||||
}, res=> {
|
||||
}, res => {
|
||||
this.treeData = res.data
|
||||
this.id = res.data[0].id
|
||||
this.getData()
|
||||
@@ -525,68 +610,79 @@ export default {
|
||||
this.$refs.tree.filter(val);
|
||||
}
|
||||
},
|
||||
computed:{
|
||||
computed: {
|
||||
newForm() {
|
||||
return JSON.parse(JSON.stringify(this.addForm))
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
mounted() {
|
||||
this.getTree()
|
||||
this.getTree2()
|
||||
this.getTree3()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import '~@/assets/styles/mixins';
|
||||
.role-manage {
|
||||
@import '~@/assets/styles/mixins';
|
||||
|
||||
.role-manage {
|
||||
display: flex;
|
||||
height: 100%;
|
||||
/deep/.el-form-item__content {
|
||||
|
||||
/deep/ .el-form-item__content {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.filter-tree1 {
|
||||
height: 100%;
|
||||
}
|
||||
.tree-close{
|
||||
.tree{
|
||||
|
||||
.tree-close {
|
||||
.tree {
|
||||
left: -200px !important;
|
||||
}
|
||||
.tree-right{
|
||||
|
||||
.tree-right {
|
||||
width: calc(~'100% - 15px') !important;
|
||||
}
|
||||
.side-bar-collapse{
|
||||
|
||||
.side-bar-collapse {
|
||||
background: #5596CC !important;
|
||||
color: #FFF;
|
||||
}
|
||||
}
|
||||
|
||||
.tree-closed {
|
||||
width: 15px !important;
|
||||
}
|
||||
|
||||
.tree-content {
|
||||
background: #fff;
|
||||
width: 16%;
|
||||
position: relative;
|
||||
|
||||
.tree {
|
||||
width: 95%;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.tree-collapse {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.tree-right {
|
||||
overflow-y: hidden;
|
||||
padding:0;
|
||||
padding: 0;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.content{
|
||||
|
||||
.content {
|
||||
padding: 0px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@@ -594,31 +690,41 @@ export default {
|
||||
flex: auto;
|
||||
//height: calc(~'100% - 105px - 56px');
|
||||
}
|
||||
.pagination{
|
||||
|
||||
.pagination {
|
||||
position: static;
|
||||
width: 100% !important;
|
||||
left: 0 !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
.myDialog {
|
||||
/deep/.el-tree {
|
||||
height: 300px;
|
||||
}
|
||||
|
||||
/deep/ .el-dialog {
|
||||
margin-top: 9vh !important;
|
||||
width: 35%;
|
||||
}
|
||||
.myDialog {
|
||||
/deep/ .el-tree {
|
||||
height: 500px;
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
/deep/.el-select__tags {
|
||||
}
|
||||
|
||||
/deep/ .el-select__tags {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
/deep/.width-all{
|
||||
}
|
||||
|
||||
/deep/ .width-all {
|
||||
width: 100%;
|
||||
}
|
||||
.laws-tree{
|
||||
/deep/.clearable {
|
||||
}
|
||||
|
||||
.laws-tree {
|
||||
/deep/ .clearable {
|
||||
top: 20px;
|
||||
}
|
||||
}
|
||||
.add-form-item {
|
||||
}
|
||||
|
||||
.add-form-item {
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -2613,6 +2613,13 @@ export default {
|
||||
},
|
||||
// 清空搜索框
|
||||
clearAllSearch (flag) {
|
||||
if (flag==='standCommonlySearch'){
|
||||
this.standCommonlySearch.standNumber='';
|
||||
this.standCommonlySearch.standSort='';
|
||||
this.standCommonlySearch.page=1;
|
||||
|
||||
}
|
||||
this.getDomesticStandardTable(this.standCommonlySearch)
|
||||
|
||||
if (flag === 'sarStandardsSearch') {
|
||||
this.sarStandardsSearch.standSort = ''
|
||||
|
||||
@@ -39,9 +39,9 @@
|
||||
</div>
|
||||
</el-card>
|
||||
<div class="action-bar">
|
||||
<el-button plain class="common-button-primary" v-btn-permission="''" size="mini" @click="transfer">调取</el-button>
|
||||
<el-button plain class="common-button-primary" v-btn-permission="''" size="mini" @click="deleteList">批量删除
|
||||
</el-button>
|
||||
<!-- <el-button plain class="common-button-primary" v-btn-permission="''" size="mini" @click="transfer">调取</el-button>-->
|
||||
<!-- <el-button plain class="common-button-primary" v-btn-permission="''" size="mini" @click="deleteList">批量删除-->
|
||||
<!-- </el-button>-->
|
||||
<el-button class="common-button-default export-button"
|
||||
size="mini" @click="exportStandard"
|
||||
v-btn-permission="''"
|
||||
|
||||
Reference in New Issue
Block a user