Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
zhutianqi
2021-08-30 17:58:45 +08:00
5 changed files with 817 additions and 615 deletions
+125 -19
View File
@@ -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
@@ -95,8 +98,12 @@
<el-dropdown trigger="click" @command="handleCommand">
<i class="iconfont">&#xe61e;</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>
@@ -252,6 +270,7 @@ export default {
name: 'role-manage',
data() {
return {
twoLoading: false,
type: '', // 新增/编辑状态
addRoleTitle: '',
SuperiorRoleData: {},
@@ -444,6 +463,68 @@ export default {
closeDialogData() {
this.modalflag = false
},
/** 父子节点的级联 */
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
@@ -472,16 +553,20 @@ export default {
this.$http.get('lawss/sarMenu', {}, {}, res => {
if (res.ok) {
this.treeData2 = res.data
this.twoLoading = false
}
})
},
roleAdd() { // 配置角色资源
this.treeTwoLoading = true
this.$http.get('sarRole/role/menu', {
roleId: this.id
roleId: this.id,
}, {}, res => {
if (res.ok) {
this.modalshowflag = true
this.nodeList = res.data
this.twoLoading = true
this.modalshowflag = true
this.getTree2()
}
})
},
@@ -532,7 +617,6 @@ export default {
},
mounted() {
this.getTree()
this.getTree2()
this.getTree3()
}
}
@@ -540,44 +624,55 @@ export default {
<style lang="less" scoped>
@import '~@/assets/styles/mixins';
.role-manage {
display: flex;
height: 100%;
/deep/ .el-form-item__content {
width: 100%;
}
.filter-tree1 {
height: 100%;
}
.tree-close {
.tree {
left: -200px !important;
}
.tree-right {
width: calc(~'100% - 15px') !important;
}
.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;
@@ -586,6 +681,7 @@ export default {
height: 100%;
display: flex;
flex-direction: column;
.content {
padding: 0px;
display: flex;
@@ -594,6 +690,7 @@ export default {
flex: auto;
//height: calc(~'100% - 105px - 56px');
}
.pagination {
position: static;
width: 100% !important;
@@ -601,23 +698,32 @@ export default {
}
}
}
/deep/ .el-dialog {
margin-top: 9vh !important;
width: 35%;
}
.myDialog {
/deep/ .el-tree {
height: 300px;
height: 500px;
overflow: auto;
}
}
/deep/ .el-select__tags {
overflow-x: hidden;
}
/deep/ .width-all {
width: 100%;
}
.laws-tree {
/deep/ .clearable {
top: 20px;
}
}
.add-form-item {
display: flex;
}
+68 -5
View File
@@ -11,25 +11,51 @@
<h5>实施预警</h5>
<div class="more">
<el-form :inline="true" :model="dynamic" class="demo-form-inline">
<el-form-item label="标准编号">
<el-input clearable size="small"
v-model="dynamic.standCode"
placeholder="根据标准编号查找">
</el-input>
</el-form-item>
<el-form-item label="标准名称">
<el-input clearable size="small"
v-model="dynamic.standName"
placeholder="根据标准名称查找">
</el-input>
</el-form-item>
<el-form-item label="实施日期" class="choose-time-area">
<el-datePicker
clearable size="small"
v-model="dynamic.putTime"
value-format="yyyy-MM-dd"
placeholder="根据实施日期查找">
</el-datePicker>
</el-form-item>
<el-form-item label="适用车型">
<el-input clearable size="small"
v-model="dynamic.keyword"
v-model="dynamic.applyType"
placeholder="根据适用车型查找">
</el-input>
</el-form-item>
<el-form-item>
<el-button
icon="el-icon-search"
type="primary"
size="small"
@click="searchBtnClick"
class="common-button-primary">
查询
</el-button>
<el-button
size="small"
@click="clearBtnClick"
class="common-button-primary">
清空
</el-button>
</el-form-item>
</el-form>
</div>
<div class="content" style="height: 100%; padding-top: 5px; ">
<el-divider content-position="left" class="dynamic-child-title"></el-divider>
<el-divider content-position="left" class="dynamic-child-title">新车型实施日期预警</el-divider>
<el-table
:data="newItems"
:height="height"
@@ -410,7 +436,14 @@ export default {
activeName: "STANDARD", //tab 默认选中值
// 头部搜索框
dynamic: {
keyWord: "",
//标准编号
standCode: "",
//标准名称
standName: "",
//实施日期
putTime: "",
//适用车型
applyType: "",
},
height: null,
// 新车型实施日期预警
@@ -549,7 +582,14 @@ export default {
searchBtnClick() {
this.$http.get('sys/EarlyWarning/StandWarning', {
...this.pageConfig,
applyType: this.dynamic.keyword
//标准编号
standCode: this.dynamic.standCode,
//标准名称
standName: this.dynamic.standName,
//实施日期
putTime: this.dynamic.putTime,
//适用车型
applyType: this.dynamic.applyType
},{
_this: this,
}, res => {
@@ -567,6 +607,19 @@ export default {
console.log(e)
})
},
clearBtnClick() {
this.dynamic = {
//标准编号
standCode: "",
//标准名称
standName: "",
//实施日期
putTime: "",
//适用车型
applyType: "",
}
this.searchBtnClick()
},
//取消预警
cancelWarning (index, row) {
console.log(index, row)
@@ -882,6 +935,16 @@ export default {
}
.more {
/deep/ .el-input__inner {
width: 155px;
}
.choose-time-area {
/deep/ .el-input__inner {
width: 220px;
}
}
cursor: pointer;
color: #12508e;
position: absolute;
@@ -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="''"
@@ -108,13 +108,27 @@
>
<div class="demo-drawer-content">
<div class="el-drawer-form">
<div class="search-area">
<div class="left">
<div class="search-area-detail">
<div class="left" id="detailSearch">
<el-form :inline="true" :model="sarProStateEO" class="label-input-form">
<el-form-item label="项目名称" class="search-item search-item-last">
<el-form-item label="标准编号" class="search-item search-item-last">
<el-input
v-model="sarProStateEO.productName"
placeholder="根据项目名称查找"
v-model="sarProStateEO.standNumber"
placeholder="根据标准编号查找"
:maxlength="100"
clearable></el-input>
</el-form-item>
<el-form-item label="标准名称" class="search-item search-item-last">
<el-input
v-model="sarProStateEO.standName"
placeholder="根据标准名称查找"
:maxlength="100"
clearable></el-input>
</el-form-item>
<el-form-item label="具体章条" class="search-item search-item-last">
<el-input
v-model="sarProStateEO.specificItem"
placeholder="根据具体章条查找"
:maxlength="100"
clearable></el-input>
</el-form-item>
@@ -230,7 +244,12 @@ name: "technologyInvolveProject",
pageSize: this.$store.getters.userInfo.configContent,
showSarProStateModal: false,
sarProStateEO: {
productName: ''
//标准编号
standNumber: '',
//标准名称
standName: '',
//具体章条
specificItem: '',
},
sarProStateTotal: 0,
sarProStateTotalPage: 1,
@@ -306,11 +325,15 @@ name: "technologyInvolveProject",
this.showSarProStateModal = true
}, // 查询项目数据
clearSearchProState () {
this.sarProStateEO.productName = ''
this.sarProStateEO.standNumber = ''
this.sarProStateEO.standName = ''
this.sarProStateEO.specificItem = ''
this.querySarProStateZero()
}, // 清空条件查询
clearSearchPro () {
this.sarProStateEO.productName = ''
this.sarProStateEO.standNumber = ''
this.sarProStateEO.standName = ''
this.sarProStateEO.specificItem = ''
this.showSarProStateModal = false
}, // 关闭查看事件
pageProStateChange (page) {
@@ -368,5 +391,8 @@ name: "technologyInvolveProject",
.search-area .search-item .el-input--suffix .el-input__inner{
padding-right: 15px;
}
.search-area-detail .el-input__inner{
width: 150px;
}
}
</style>