|
|
@ -2,13 +2,13 @@
|
|
|
|
<el-card class="box-card">
|
|
|
|
<el-card class="box-card">
|
|
|
|
<el-form class="search" :inline="true" :model="vm" ref="vm" label-position="right" label-width="90px">
|
|
|
|
<el-form class="search" :inline="true" :model="vm" ref="vm" label-position="right" label-width="90px">
|
|
|
|
<el-form-item label="角色代码" prop="code">
|
|
|
|
<el-form-item label="角色代码" prop="code">
|
|
|
|
<el-input v-model="vm.code" clearable size="mini" placeholder="请输入角色代码"></el-input>
|
|
|
|
<el-input v-model="vm.code" @keyup.enter.native="onSearch" clearable size="mini" placeholder="请输入角色代码"></el-input>
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
<el-form-item label="角色名称" prop="name">
|
|
|
|
<el-form-item label="角色名称" prop="name">
|
|
|
|
<el-input v-model="vm.name" clearable size="mini" placeholder="请输入角色名称"></el-input>
|
|
|
|
<el-input v-model="vm.name" @keyup.enter.native="onSearch" clearable size="mini" placeholder="请输入角色名称"></el-input>
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
<el-form-item label="角色描述" prop="comment">
|
|
|
|
<el-form-item label="角色描述" prop="comment">
|
|
|
|
<el-input v-model="vm.comment" clearable size="mini" placeholder="请输入角色描述"></el-input>
|
|
|
|
<el-input v-model="vm.comment" @keyup.enter.native="onSearch" clearable size="mini" placeholder="请输入角色描述"></el-input>
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
<el-form-item label="开始日期" prop="startDate">
|
|
|
|
<el-form-item label="开始日期" prop="startDate">
|
|
|
|
<el-date-picker v-model="vm.startDate" clearable size="mini" placeholder="请输入开始日期" type="datetime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
|
|
|
|
<el-date-picker v-model="vm.startDate" clearable size="mini" placeholder="请输入开始日期" type="datetime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
|
|
|
@ -166,25 +166,28 @@
|
|
|
|
</span>
|
|
|
|
</span>
|
|
|
|
</el-dialog>
|
|
|
|
</el-dialog>
|
|
|
|
|
|
|
|
|
|
|
|
<el-dialog class="form-dialog" :title="formRes.title" :visible.sync="formRes.dialog">
|
|
|
|
<el-dialog width="540px" :title="formRes.title" :visible.sync="formRes.dialog">
|
|
|
|
<el-row style="padding: 0 10px 10px 10px;">
|
|
|
|
<el-row style="padding: 0 10px 10px 10px;">
|
|
|
|
<el-col :span="12">
|
|
|
|
<el-col :span="12">
|
|
|
|
<el-input
|
|
|
|
<el-input
|
|
|
|
clearable
|
|
|
|
clearable
|
|
|
|
size="mini"
|
|
|
|
size="mini"
|
|
|
|
v-model="formRes.treeFilter"
|
|
|
|
v-model="treeFilter"
|
|
|
|
prefix-icon="el-icon-search"
|
|
|
|
prefix-icon="el-icon-search"
|
|
|
|
placeholder="输入过滤关键字"
|
|
|
|
placeholder="输入过滤关键字"
|
|
|
|
@keyup.enter.native="$refs.tree.filter(formRes.treeFilter)"/>
|
|
|
|
@keyup.enter.native="$refs.tree.filter(treeFilter)"/>
|
|
|
|
</el-col>
|
|
|
|
</el-col>
|
|
|
|
<el-col :span="11" offset="1">
|
|
|
|
<el-col :span="11" offset="1">
|
|
|
|
<el-button-group>
|
|
|
|
<el-button-group>
|
|
|
|
<el-tooltip effect="dark" content="关键字过滤资源" placement="bottom">
|
|
|
|
<el-tooltip effect="dark" content="关键字过滤资源" placement="bottom">
|
|
|
|
<el-button size="mini" type="primary" icon="el-icon-search" @click="$refs.tree.filter(formRes.treeFilter)">查询</el-button>
|
|
|
|
<el-button size="mini" type="primary" icon="el-icon-search" @click="$refs.tree.filter(treeFilter)">查询</el-button>
|
|
|
|
|
|
|
|
</el-tooltip>
|
|
|
|
|
|
|
|
<el-tooltip effect="dark" content="刷新" placement="bottom">
|
|
|
|
|
|
|
|
<el-button size="mini" type="primary" icon="el-icon-refresh" @click="onTreeLoad">刷新</el-button>
|
|
|
|
</el-tooltip>
|
|
|
|
</el-tooltip>
|
|
|
|
<el-tooltip effect="dark" content="勾选父节点时是否关联勾选所有子节点" placement="bottom">
|
|
|
|
<el-tooltip effect="dark" content="勾选父节点时是否关联勾选所有子节点" placement="bottom">
|
|
|
|
<el-button v-if="!formRes.strictly" @click="formRes.strictly = !formRes.strictly" size="mini" type="primary" icon="el-icon-share">关联</el-button>
|
|
|
|
<el-button v-if="!treeStrictly" @click="treeStrictly = !treeStrictly" size="mini" type="primary" icon="el-icon-share">关联</el-button>
|
|
|
|
<el-button v-if="formRes.strictly" @click="formRes.strictly = !formRes.strictly" size="mini" icon="el-icon-share">关联</el-button>
|
|
|
|
<el-button v-if="treeStrictly" @click="treeStrictly = !treeStrictly" size="mini" icon="el-icon-share">关联</el-button>
|
|
|
|
</el-tooltip>
|
|
|
|
</el-tooltip>
|
|
|
|
</el-button-group>
|
|
|
|
</el-button-group>
|
|
|
|
</el-col>
|
|
|
|
</el-col>
|
|
|
@ -192,16 +195,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
<el-tree
|
|
|
|
<el-tree
|
|
|
|
ref="tree"
|
|
|
|
ref="tree"
|
|
|
|
|
|
|
|
accordion
|
|
|
|
node-key="id"
|
|
|
|
node-key="id"
|
|
|
|
show-checkbox
|
|
|
|
show-checkbox
|
|
|
|
:data="treeData"
|
|
|
|
:data="treeData"
|
|
|
|
@check="onCheck"
|
|
|
|
@check="onCheck"
|
|
|
|
:check-strictly="true"
|
|
|
|
:check-strictly="true"
|
|
|
|
:expand-on-click-node="false"
|
|
|
|
:expand-on-click-node="true"
|
|
|
|
:filter-node-method="onTreeFilter">
|
|
|
|
:filter-node-method="onTreeFilter"
|
|
|
|
|
|
|
|
:default-expanded-keys="treeExpand">
|
|
|
|
<div class="tree" slot-scope="{ node, data }">
|
|
|
|
<div class="tree" slot-scope="{ node, data }">
|
|
|
|
<el-tooltip class="item" effect="dark" :content="data.resValue" placement="right">
|
|
|
|
<el-tooltip class="item" effect="dark" :content="data.resValue" placement="right">
|
|
|
|
<span>{{ data.resName }}<span style="color: #409EFF">[{{data.resCode}}]</span></span>
|
|
|
|
<span>
|
|
|
|
|
|
|
|
{{ data.resName }}
|
|
|
|
|
|
|
|
<span style="color: #409EFF">[{{data.resCode}}]</span>
|
|
|
|
|
|
|
|
<span style="color: #ff0000" v-if="data.free">[免费]</span>
|
|
|
|
|
|
|
|
</span>
|
|
|
|
</el-tooltip>
|
|
|
|
</el-tooltip>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</el-tree>
|
|
|
|
</el-tree>
|
|
|
@ -257,9 +266,10 @@
|
|
|
|
dialog: false,
|
|
|
|
dialog: false,
|
|
|
|
roleId: null,
|
|
|
|
roleId: null,
|
|
|
|
roleCode: null,
|
|
|
|
roleCode: null,
|
|
|
|
treeFilter: '',
|
|
|
|
|
|
|
|
strictly:true//是否严格遵循复制不关联
|
|
|
|
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
treeFilter: '',
|
|
|
|
|
|
|
|
treeExpand: [],
|
|
|
|
|
|
|
|
treeStrictly:true,//是否严格遵循复制不关联
|
|
|
|
treeData: []
|
|
|
|
treeData: []
|
|
|
|
},
|
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
methods: {
|
|
|
@ -364,22 +374,21 @@
|
|
|
|
|| data.resCode.indexOf(value) !== -1
|
|
|
|
|| data.resCode.indexOf(value) !== -1
|
|
|
|
|| data.resValue.indexOf(value) !== -1;
|
|
|
|
|| data.resValue.indexOf(value) !== -1;
|
|
|
|
},
|
|
|
|
},
|
|
|
|
onLoadTree: function () {
|
|
|
|
onTreeLoad: function () {
|
|
|
|
new Ajax("wsys", "res", "tree").post({}, function (response) {
|
|
|
|
new Ajax("wsys", "res", "tree").post({}, function (response) {
|
|
|
|
if (response.errors.length > 0) {
|
|
|
|
if (response.errors.length > 0) {
|
|
|
|
nav.e(response.errors[0].message);
|
|
|
|
nav.e(response.errors[0].message);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
this.treeData = response.result;
|
|
|
|
this.treeData = response.result;
|
|
|
|
this.treeData.forTree(function (item) {
|
|
|
|
// 默认展开第一个节点
|
|
|
|
item.disabled = item.free;
|
|
|
|
this.treeExpand = [response.result[0].id];
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}.bind(this))
|
|
|
|
}.bind(this))
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
mounted: function () {
|
|
|
|
mounted: function () {
|
|
|
|
this.onFind();
|
|
|
|
this.onFind();
|
|
|
|
this.onLoadTree();
|
|
|
|
this.onTreeLoad();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
|
|
|
})
|
|
|
|
</script>
|
|
|
|
</script>
|
|
|
|