| | |
| | | <template> |
| | | <div class="system-user"> |
| | | <div class="pane"> |
| | | <!-- 组织架构 --> |
| | | <div class="dept" :class="[isExpand ? '_expand' : '_collapse']"> |
| | | <cl-dept-tree |
| | | @row-click="onDeptRowClick" |
| | | @user-add="onDeptUserAdd" |
| | | @list-change="onDeptListChange" |
| | | /> |
| | | </div> |
| | | <div class="system-user"> |
| | | <div class="pane"> |
| | | <!-- 组织架构 --> |
| | | <div class="dept" |
| | | :class="[isExpand ? '_expand' : '_collapse']"> |
| | | <cl-dept-tree @row-click="onDeptRowClick" |
| | | @user-add="onDeptUserAdd" |
| | | @list-change="onDeptListChange" /> |
| | | </div> |
| | | |
| | | <!-- 成员列表 --> |
| | | <div class="user"> |
| | | <div class="header"> |
| | | <div class="icon" @click="deptExpand"> |
| | | <i class="el-icon-arrow-left" v-if="isExpand"></i> |
| | | <i class="el-icon-arrow-right" v-else></i> |
| | | </div> |
| | | <!-- 成员列表 --> |
| | | <div class="user"> |
| | | <div class="header"> |
| | | <div class="icon" |
| | | @click="deptExpand"> |
| | | <i class="el-icon-arrow-left" |
| | | v-if="isExpand"></i> |
| | | <i class="el-icon-arrow-right" |
| | | v-else></i> |
| | | </div> |
| | | |
| | | <span>成员列表</span> |
| | | </div> |
| | | <span>成员列表</span> |
| | | </div> |
| | | |
| | | <div class="container"> |
| | | <cl-crud :ref="setRefs('crud')" :on-refresh="onRefresh" @load="onLoad"> |
| | | <el-row type="flex"> |
| | | <cl-refresh-btn /> |
| | | <cl-add-btn /> |
| | | <cl-multi-delete-btn /> |
| | | <el-button |
| | | v-permission="service.base.sys.user.permission.move" |
| | | size="mini" |
| | | type="success" |
| | | :disabled="selects.ids.length == 0" |
| | | @click="toMove()" |
| | | >转移</el-button |
| | | > |
| | | <cl-flex1 /> |
| | | <cl-search-key /> |
| | | </el-row> |
| | | <div class="container"> |
| | | <cl-crud :ref="setRefs('crud')" |
| | | :on-refresh="onRefresh" |
| | | @load="onLoad"> |
| | | <el-row type="flex"> |
| | | <cl-refresh-btn /> |
| | | <cl-add-btn /> |
| | | <cl-multi-delete-btn /> |
| | | <el-button v-permission="service.base.sys.user.permission.move" |
| | | size="mini" |
| | | type="success" |
| | | :disabled="selects.ids.length == 0" |
| | | @click="toMove()">转移</el-button> |
| | | <cl-flex1 /> |
| | | <cl-search-key /> |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <cl-table |
| | | :ref="setRefs('table')" |
| | | v-bind="table" |
| | | @selection-change="onSelectionChange" |
| | | > |
| | | <!-- 头像 --> |
| | | <template #column-headImg="{ scope }"> |
| | | <cl-avatar |
| | | shape="square" |
| | | size="medium" |
| | | :src="scope.row.headImg" |
| | | :style="{ margin: 'auto' }" |
| | | /> |
| | | </template> |
| | | <el-row> |
| | | <cl-table :ref="setRefs('table')" |
| | | v-bind="table" |
| | | @selection-change="onSelectionChange"> |
| | | <!-- 头像 --> |
| | | <template #column-headImg="{ scope }"> |
| | | <cl-avatar shape="square" |
| | | size="medium" |
| | | :src="scope.row.headImg" |
| | | :style="{ margin: 'auto' }" /> |
| | | </template> |
| | | |
| | | <!-- 权限 --> |
| | | <template #column-roleName="{ scope }"> |
| | | <el-tag |
| | | v-for="(item, index) in scope.row.roleNameList" |
| | | :key="index" |
| | | disable-transitions |
| | | size="small" |
| | | effect="dark" |
| | | style="margin: 2px" |
| | | >{{ item }}</el-tag |
| | | > |
| | | </template> |
| | | <!-- 权限 --> |
| | | <template #column-roleName="{ scope }"> |
| | | <el-tag v-for="(item, index) in scope.row.roleNameList" |
| | | :key="index" |
| | | disable-transitions |
| | | size="small" |
| | | effect="dark" |
| | | style="margin: 2px">{{ item }}</el-tag> |
| | | </template> |
| | | |
| | | <!-- 单个转移 --> |
| | | <template #slot-move-btn="{ scope }"> |
| | | <el-button |
| | | v-permission="service.base.sys.user.permission.move" |
| | | type="text" |
| | | size="mini" |
| | | @click="toMove(scope.row)" |
| | | >转移</el-button |
| | | > |
| | | </template> |
| | | </cl-table> |
| | | </el-row> |
| | | <!-- 单个转移 --> |
| | | <template #slot-move-btn="{ scope }"> |
| | | <el-button v-permission="service.base.sys.user.permission.move" |
| | | type="text" |
| | | size="mini" |
| | | @click="toMove(scope.row)">转移</el-button> |
| | | </template> |
| | | </cl-table> |
| | | </el-row> |
| | | |
| | | <el-row type="flex"> |
| | | <cl-flex1 /> |
| | | <cl-pagination /> |
| | | </el-row> |
| | | <el-row type="flex"> |
| | | <cl-flex1 /> |
| | | <cl-pagination /> |
| | | </el-row> |
| | | |
| | | <cl-upsert |
| | | :ref="setRefs('upsert')" |
| | | v-bind="upsert" |
| | | :on-submit="onUpsertSubmit" |
| | | /> |
| | | </cl-crud> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <cl-upsert :ref="setRefs('upsert')" |
| | | v-bind="upsert" |
| | | :on-submit="onUpsertSubmit" /> |
| | | </cl-crud> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 部门移动 --> |
| | | <cl-dept-move :ref="setRefs('dept-move')" @success="refresh({ page: 1 })" /> |
| | | </div> |
| | | <!-- 部门移动 --> |
| | | <cl-dept-move :ref="setRefs('dept-move')" |
| | | @success="refresh({ page: 1 })" /> |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | |
| | | // 刷新监听 |
| | | async function onRefresh(params: any, { next, render }: any) { |
| | | const { list } = await next(params); |
| | | console.log(list, "list"); |
| | | |
| | | render( |
| | | list.map((e: any) => { |
| | | console.log(e, "刷新打印e"); |
| | | if (e.roleName) { |
| | | e.roleNameList = e.roleName.split(","); |
| | | } |