| | |
| | | <template> |
| | | <div> |
| | | <!-- <div class="body" style="background-color: #ffffff; padding: 20px 10px 0 20px;">--> |
| | | <div class="body" style="background-color: #ffffff; padding: 20px 10px 0 20px;" :style="{height:mainHeight+'px'}"> |
| | | <div> |
| | | <div class="body" :style="{height:mainHeight+'px'}"> |
| | | <div style="padding: 10px 5px 0 0"> |
| | | <el-form |
| | | ref="form" |
| | | :model="form" |
| | |
| | | inline |
| | | style="display: flex;justify-content: space-between" |
| | | > |
| | | <div style="display: flex;justify-content: space-around;width: 85%"> |
| | | <div class="elForm"> |
| | | <el-form-item label="角色编码" style=" display: flex;"> |
| | | <el-input v-model="form.RoleCode" placeholder="请输入" style="width: calc(100%-30px)" /> |
| | | <el-input v-model="form.RoleCode" placeholder="请输入" style="width: 200px" /> |
| | | </el-form-item> |
| | | <el-form-item label="角色名称" style=" display: flex;"> |
| | | <el-input v-model="form.RoleName" placeholder="请输入" style="width: calc(100%-30px)" /> |
| | | <el-input v-model="form.RoleName" placeholder="请输入" style="width: 200px" /> |
| | | </el-form-item> |
| | | <el-form-item label="角色类型" style=" display: flex;"> |
| | | <el-select v-model="form.RoleTypeCode" filterable style="width: calc(100%-30px)" placeholder="请选择"> |
| | | <el-select v-model="form.RoleTypeCode" :popper-append-to-body="false" filterable style="width: 200px" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in RoleTypeCodeArr2" |
| | | :key="item.roletype_code" |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="创建人员" style=" display: flex;"> |
| | | <el-input v-model="form.UserName" style="width: calc(100%-30px)" placeholder="请输入" /> |
| | | <el-input v-model="form.UserName" style="width: 200px" placeholder="请输入" /> |
| | | </el-form-item> |
| | | </div> |
| | | <div style="display: flex;align-items: start;margin-top: 5px;"> |
| | |
| | | </div> |
| | | </el-form> |
| | | </div> |
| | | <div style="margin-bottom: 20px;display: flex; z-index: 2"> |
| | | <el-divider /> |
| | | <div style="margin-left: 10px;display: flex"> |
| | | <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">新增</el-button> |
| | | <el-button type="primary" icon="el-icon-setting" @click="settingButton">设置</el-button> |
| | | <el-button type="primary" icon="el-icon-upload2" @click="upload">导入</el-button> |
| | | </div> |
| | | |
| | | <div style="display: flex;border: 1px solid #eee"> |
| | | <el-divider /> |
| | | <div class="elTableDiv"> |
| | | <el-table |
| | | :data="tableData" |
| | | border |
| | | stripe |
| | | :height="tableHeight" |
| | | :style="{width: 100+'%',height:tableHeight+'px'}" |
| | | highlight-current-row |
| | | :header-cell-style="this.$headerCellStyle" |
| | |
| | | |
| | | <!-- 新增修改对话框--> |
| | | <el-dialog |
| | | :title="operation==='add'?'添加':'修改'" |
| | | :title="operation==='add'?'新增':'修改'" |
| | | :visible.sync="dialogVisible" |
| | | width="50%" |
| | | top="15vh" |
| | |
| | | <el-select |
| | | v-model="dialogForm.RoleTypeCode" |
| | | filterable |
| | | :popper-append-to-body="false" |
| | | style="width: 220px" |
| | | placeholder="请选择" |
| | | > |
| | |
| | | width="50%" |
| | | top="15vh" |
| | | class="settingDialogVisible" |
| | | @closed="handleCloseSetting" |
| | | @close="handleCloseSetting" |
| | | > |
| | | <div style="margin-bottom: 20px;display: flex"> |
| | |
| | | <el-table-column |
| | | width="50" |
| | | label="序号" |
| | | type="index" |
| | | prop="RowNum" |
| | | /> |
| | | <el-table-column |
| | | prop="roletype_code" |
| | |
| | | <el-dialog |
| | | title="角色关联用户" |
| | | :visible.sync="userDialogVisible" |
| | | width="90%" |
| | | width="80%" |
| | | top="15vh" |
| | | class="userDialogVisible" |
| | | @closed="handleCloseUser" |
| | |
| | | ref="dialogCascaderUser" |
| | | key="cascaderKey" |
| | | filterable |
| | | :append-to-body="false" |
| | | :options="StuOrgArr" |
| | | :props="defaultProps" |
| | | class="userDialogVisibleInput" |
| | |
| | | <el-select |
| | | v-model="dialogFormUser.isrole" |
| | | filterable |
| | | :popper-append-to-body="false" |
| | | style="width: 220px" |
| | | placeholder="请选择" |
| | | class="userDialogVisibleInput" |
| | |
| | | // 获取页面高度 |
| | | getHeight() { |
| | | this.$nextTick(() => { |
| | | this.mainHeight = window.innerHeight - 200 |
| | | this.mainHeight = window.innerHeight - 250 |
| | | this.tableHeight = this.mainHeight - 100 |
| | | }) |
| | | }, |
| | |
| | | this.RoleTypeCodeArr.splice(index, 1) |
| | | } |
| | | }) |
| | | this.getRoleTypeSearch2() |
| | | }, |
| | | // 设置对话框取消事件 |
| | | settingDialogVisibleCancel() { |
| | |
| | | // 设置表单取消事件 |
| | | formSettingCancel(row) { |
| | | this.RoleTypeCodeArr.forEach((item, index) => { |
| | | if (item.isVisible === 1) { |
| | | if (item.isVisible === 1 && item.roletype_code === row.roletype_code) { |
| | | this.RoleTypeCodeArr.splice(index, 1) |
| | | } |
| | | }) |
| | |
| | | this.$nextTick(() => { |
| | | $('input:checkbox').eq(0).prop('checked', true)// 自定义单选框回显 |
| | | }) |
| | | }, 10) |
| | | }, 100) |
| | | this.dialogFormRight.rightCurrentCode = this.dialogFormRight.rightPCArr[0].code |
| | | } |
| | | // 3.第三种情况PC未选中,APP已选中 |
| | |
| | | this.$nextTick(() => { |
| | | $('input:checkbox').eq(1).prop('checked', true)// 自定义单选框回显 |
| | | }) |
| | | }, 10) |
| | | }, 100) |
| | | this.dialogFormRight.rightCurrentCode = this.dialogFormRight.rightAPPArr[0].code |
| | | } |
| | | // 4.第四种情况PC已选中,APP已选中 |
| | |
| | | $('input:checkbox').eq(0).prop('checked', true)// 自定义单选框回显 |
| | | $('input:checkbox').eq(1).prop('checked', true)// 自定义单选框回显 |
| | | }) |
| | | }, 10) |
| | | }, 100) |
| | | this.dialogFormRight.rightCurrentCode = this.dialogFormRight.rightPCArr[0].code |
| | | } |
| | | this.dialogFormRight.rightOperationArr.push({ |
| | |
| | | this.dialogVisibleRight = false |
| | | }, |
| | | // 权限对话框确认事件 |
| | | async rightDialogVisibleConfirm() { |
| | | async rightDialogVisibleConfirm() { |
| | | const rightPCArrSelected = []// 保存提交树选中 PC |
| | | const rightAPPArrSelected = []// 保存提交树选中 APP |
| | | |
| | |
| | | height: 30px; |
| | | display: flex; |
| | | align-items: center; |
| | | //border: 1px solid $main_color; |
| | | border: none; |
| | | padding: 0 20px; |
| | | } |
| | | ::v-deep .el-button--primary:hover { |
| | | border: none; |
| | | } |
| | | |
| | | ::v-deep .el-button--info { |
| | | ::v-deep .el-button--info{ |
| | | //background-color: $main_color !important; |
| | | height: 30px; |
| | | display: flex; |
| | | align-items: center; |
| | | padding: 0 20px; |
| | | } |
| | | |
| | | ::v-deep .el-pagination.is-background .el-pager li:not(.disabled).active { |
| | | background-color: $main_color !important; |
| | | } |
| | | |
| | | ::v-deep .el-dialog__footer { |
| | | display: flex; |
| | | justify-content: flex-end; |
| | | } |
| | | |
| | | .footerButton { |
| | |
| | | height: 30px; |
| | | display: flex; |
| | | align-items: center; |
| | | padding: 0 20px; |
| | | } |
| | | |
| | | ::v-deep .el-button--default:hover { |
| | |
| | | |
| | | ::v-deep .el-input__inner { |
| | | height: 30px; |
| | | line-height:30px; |
| | | line-height: 30px; |
| | | } |
| | | ::v-deep .el-input__inner:focus { |
| | | border-color: $main_color; |
| | | } |
| | | |
| | | ::v-deep .el-table .caret-wrapper { |
| | |
| | | ::v-deep .el-radio.is-bordered + .el-radio.is-bordered { |
| | | margin: 10px 30px 0px 0; |
| | | } |
| | | .body ::v-deep .el-divider{ |
| | | border: 1px solid #eee; |
| | | width: 99%; |
| | | margin: 10px auto; |
| | | } |
| | | .body ::v-deep .el-form-item{ |
| | | margin-bottom: 0; |
| | | } |
| | | ::v-deep .el-input__inner:focus { |
| | | border-color: $main_color; |
| | | } |
| | | |
| | | ::v-deep .el-select .el-input__inner:focus{ |
| | | border-color: $main_color; |
| | | } |
| | | |
| | | ::v-deep .el-select-dropdown__item.selected{ |
| | | color: $main_color; |
| | | } |
| | | |
| | | ::v-deep .el-textarea__inner:focus{ |
| | | border-color: $main_color; |
| | | } |
| | | |
| | | </style> |