| | |
| | | <div class="top-bar"> |
| | | <el-form ref="form" :inline="true" :model="searchData"> |
| | | <el-form-item label="è§è²åç§°ï¼" class="sermargin"> |
| | | <el-input |
| | | v-model="searchData.roleName" |
| | | class="input-form" |
| | | placeholder="请è¾å
¥è§è²åç§°" |
| | | style="width:250px" |
| | | > |
| | | <el-input v-model="searchData.roleName" class="input-form" placeholder="请è¾å
¥è§è²åç§°" style="width:250px"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æéï¼" class="sermargin"> |
| | | <el-input |
| | | v-model="searchData.permission" |
| | | class="input-form" |
| | | placeholder="请è¾å
¥æé" |
| | | style="width:250px" |
| | | > |
| | | <el-input v-model="searchData.permission" class="input-form" placeholder="请è¾å
¥æé" style="width:250px"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item class="rightBtn"> |
| | | <el-button type="primary" @click="search">æ¥è¯¢</el-button> |
| | | <el-button type="primary" plain @click="reset">éç½®</el-button> |
| | | <el-button type="primary">æ¥è¯¢</el-button> |
| | | <el-button type="primary" plain>éç½®</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-form> |
| | | <el-form-item class="rightBtn"> |
| | | <el-button type="primary" @click="addRole" icon="el-icon-plus">æ°å¢æé</el-button> |
| | | <el-button type="primary" @click="addClickRole" icon="el-icon-plus">æ°å¢è§è²</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | </el-form> |
| | | </div> |
| | | <div class="library-table"> |
| | | <div class="table-box"> |
| | | <el-table |
| | | :max-height="800" |
| | | :cell-style="{textAlign: 'center'}" |
| | | <el-table :max-height="800" :cell-style="{ textAlign: 'center' }" |
| | | :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" |
| | | :data="roleTable" |
| | | style="width: 100%" |
| | | > |
| | | <el-table-column |
| | | type="selection" |
| | | min-width="8%" |
| | | /> |
| | | <el-table-column |
| | | prop="rolename" |
| | | label="è§è²åç§°" |
| | | min-width="20%" |
| | | /> |
| | | <el-table-column |
| | | prop="permission" |
| | | label="æé" |
| | | min-width="20%" |
| | | /> |
| | | <el-table-column |
| | | prop="create_time" |
| | | label="å建æ¶é´" |
| | | min-width="20%" |
| | | /> |
| | | <el-table-column |
| | | prop="update_time" |
| | | label="æ´æ°æ¶é´" |
| | | min-width="20%" |
| | | /> |
| | | <el-table-column |
| | | label="æä½" |
| | | min-width="12%" |
| | | > |
| | | :data="roleTable" style="width: 100%"> |
| | | <el-table-column type="selection" min-width="8%" /> |
| | | <el-table-column prop="rolename" label="è§è²åç§°" min-width="20%" /> |
| | | <el-table-column prop="permission" label="æé" min-width="20%" /> |
| | | <el-table-column prop="create_time" label="å建æ¶é´" min-width="20%" /> |
| | | <el-table-column prop="update_time" label="æ´æ°æ¶é´" min-width="20%" /> |
| | | <el-table-column label="æä½" min-width="12%"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" size="small" >ç¼è¾</el-button> |
| | | <el-button type="text" size="small" >å é¤</el-button> |
| | |
| | | </el-table> |
| | | <!-- åé¡µå¨ --> |
| | | <div class="pagination"> |
| | | <el-pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | :current-page="currentPage" |
| | | :page-sizes="[5, 10, 20]" |
| | | :page-size="pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="total"> |
| | | <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" |
| | | :current-page="currentPage" :page-sizes="[5, 10, 20]" :page-size="pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" :total="total"> |
| | | </el-pagination> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-dialog title="ä¿®æ¹å¯ç " :visible.sync="dialogTableVisible" width="30%"> |
| | | <el-form :model="updateData" ref="updateData" label-position="right" label-width="100px"> |
| | | <el-form-item label="åå¯ç ï¼"> |
| | | <el-input style="width: 300px" v-model="updateData.oldPassWord" placeholder="请è¾å
¥åå¯ç " > |
| | | <el-dialog title="æ°å¢è§è²" :visible.sync="dialogTableVisible" width="60%"> |
| | | <el-form :model="roleAdd" ref="roleAdd" label-position="right" label-width="100px"> |
| | | <el-form-item label="è§è²å:"> |
| | | <el-input style="width: 300px" v-model="roleAdd.roleName" placeholder="请è¾å
¥è§è²å"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ°å¯ç ï¼"> |
| | | <el-input style="width: 300px" v-model="updateData.newPassWord" placeholder="请è¾å
¥æ°å¯ç "> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="确认å¯ç ï¼"> |
| | | <el-input style="width: 300px" v-model="updateData.confirmPassWord" placeholder="忬¡è¾å
¥å¯ç "> |
| | | </el-input> |
| | | <el-form-item label="åè½éæ©:"> |
| | | <el-cascader size="medium " v-model="roleAdd.menuData" :options="menuInfo"> |
| | | <template slot-scope="{ node, data }"> |
| | | <span>{{ data.label }}</span> |
| | | <span v-if="!node.isLeaf"> ({{ }}) </span> |
| | | </template> |
| | | </el-cascader> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="dialogTableVisible = false">å æ¶</el-button> |
| | | <el-button type="primary" @click="changePassword">ç¡® å®</el-button> |
| | | <el-button type="primary" @click="addRole">ç¡® å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getPlanPageList, getStandingPageList } from '@/api/laboratory/measure' |
| | | import { getMenusTree } from '@/api/laboratory/role' |
| | | export default { |
| | | data() { |
| | | return { |
| | | props: { multiple: true }, |
| | | roleAdd: { |
| | | roleName: null, |
| | | menuData: null |
| | | }, |
| | | searchData:{ |
| | | roleName: '', |
| | | permission: '' |
| | | }, |
| | | menuInfo: [], |
| | | roleTable:[{ |
| | | rolename: 'é¨é¿', |
| | | permission: 'ROOT', |
| | |
| | | |
| | | }, |
| | | methods: { |
| | | addRole(){ |
| | | async addClickRole() { |
| | | let res = await getMenusTree(); |
| | | this.menuInfo = res.data |
| | | this.menuInfo.forEach(item => { |
| | | item.select = false |
| | | item.add = false |
| | | item.update = false |
| | | item.delete = false |
| | | if (item.children.length == 0) { |
| | | delete item['children'] |
| | | } else { |
| | | item.children.forEach(c => { |
| | | c.select = false |
| | | c.add = false |
| | | c.update = false |
| | | c.delete = false |
| | | if (c.children.length == 0) { |
| | | delete c['children'] |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | this.dialogTableVisible = true |
| | | // console.log(this.dialogTableVisible) |
| | | }, |
| | | addRole() { |
| | | console.log(this.roleAdd); |
| | | }, |
| | | // search(){}, |
| | | // reset(){}, |
| | |
| | | </script> |
| | | |
| | | <style scoped> |
| | | |
| | | .top-bar{ |
| | | margin: -25px -15px; |
| | | background: #fff; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | padding: 5px 24px 0px 24px; |
| | | |
| | | .sermargin{ |
| | | margin-right: 60px; |
| | | } |
| | | } |
| | | |
| | | .rightBtn{ |
| | | margin-right: 50px |
| | | } |
| | | |
| | | .library-table{ |
| | | background-color: #fff; |
| | | flex: 1; |
| | |
| | | margin-top: 40px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | |
| | | .table-box{ |
| | | padding: 10px 20px; |
| | | margin-top: 0px; |
| | |
| | | /* padding: 20px 20px 10px 20px; */ |
| | | display: flex; |
| | | flex-direction: column; |
| | | |
| | | .el-table { |
| | | flex: 1; |
| | | } |
| | | } |
| | | |
| | | .pagination{ |
| | | display:flex; |
| | | justify-content:end; |
| | | margin-top: 20px |
| | | } |
| | | } |
| | | |
| | | </style> |