From 05cf6324ea8322164d99a3d3d4161fe374534b3b Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期日, 18 二月 2024 15:22:29 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- platform/src/views/system/user.vue | 104 ++++++++++++++++++++++++++-------------------------- 1 files changed, 52 insertions(+), 52 deletions(-) diff --git a/platform/src/views/system/user.vue b/platform/src/views/system/user.vue index 532e469..6ebbe61 100644 --- a/platform/src/views/system/user.vue +++ b/platform/src/views/system/user.vue @@ -2,21 +2,21 @@ <TableLayout :permissions="['system:user:query']"> <!-- 鎼滅储琛ㄥ崟 --> <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="80px" inline> - <el-form-item label="鐢ㄦ埛鍚�" prop="username"> - <el-input v-model="searchForm.username" v-trim placeholder="璇疯緭鍏ョ敤鎴峰悕" @keypress.enter.native="search"/> - </el-form-item> +<!-- <el-form-item label="鐢ㄦ埛鍚�" prop="username">--> +<!-- <el-input v-model="searchForm.username" v-trim placeholder="璇疯緭鍏ョ敤鎴峰悕" @keypress.enter.native="search"/>--> +<!-- </el-form-item>--> <el-form-item label="濮撳悕" prop="realname"> - <el-input v-model="searchForm.realname" v-trim placeholder="璇疯緭鍏ュ鍚�" @keypress.enter.native="search"/> + <el-input v-model="searchForm.realname" v-trim placeholder="璇疯緭鍏�" @keypress.enter.native="search"/> </el-form-item> - <el-form-item label="鎵嬫満鍙风爜" prop="mobile"> - <el-input v-model="searchForm.mobile" v-trim placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" @keypress.enter.native="search"/> - </el-form-item> - <el-form-item label="鎵�灞為儴闂�" prop="rootDeptId"> - <DepartmentSelect v-model="searchForm.rootDeptId" placeholder="璇烽�夋嫨鎵�灞為儴闂�" clearable/> - </el-form-item> - <el-form-item label="宀椾綅" prop="positionId"> - <PositionSelect v-model="searchForm.positionId" placeholder="璇烽�夋嫨宀椾綅" clearable/> - </el-form-item> +<!-- <el-form-item label="鎵嬫満鍙风爜" prop="mobile">--> +<!-- <el-input v-model="searchForm.mobile" v-trim placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" @keypress.enter.native="search"/>--> +<!-- </el-form-item>--> +<!-- <el-form-item label="鎵�灞為儴闂�" prop="rootDeptId">--> +<!-- <DepartmentSelect v-model="searchForm.rootDeptId" placeholder="璇烽�夋嫨鎵�灞為儴闂�" clearable/>--> +<!-- </el-form-item>--> +<!-- <el-form-item label="宀椾綅" prop="positionId">--> +<!-- <PositionSelect v-model="searchForm.positionId" placeholder="璇烽�夋嫨宀椾綅" clearable/>--> +<!-- </el-form-item>--> <section> <el-button type="primary" icon="el-icon-search" @click="search">鎼滅储</el-button> <el-button @click="reset">閲嶇疆</el-button> @@ -25,60 +25,44 @@ <!-- 琛ㄦ牸鍜屽垎椤� --> <template v-slot:table-wrap> <ul class="toolbar" v-permissions="['system:user:create', 'system:user:delete']"> - <li v-permissions="['system:user:create']"><el-button icon="el-icon-plus" type="primary" @click="$refs.operaUserWindow.open('鏂板缓鐢ㄦ埛')">鏂板缓</el-button></li> - <li v-permissions="['system:user:delete']"><el-button icon="el-icon-delete" @click="deleteByIdInBatch">鍒犻櫎</el-button></li> + <li v-permissions="['system:user:create']"><el-button type="primary" @click="$refs.operaUserWindow.open('鏂板璐﹀彿')">鏂板璐﹀彿</el-button></li> +<!-- <li v-permissions="['system:user:delete']"><el-button icon="el-icon-delete" @click="deleteByIdInBatch">鍒犻櫎</el-button></li>--> </ul> +<!-- @selection-change="handleSelectionChange"--> <el-table v-loading="isWorking.search" :data="tableData.list" :default-sort = "{prop: 'createTime', order: 'descending'}" stripe - border - @selection-change="handleSelectionChange" @sort-change="handleSortChange" > - <el-table-column type="selection" width="55"></el-table-column> - <!-- <el-table-column prop="avatar" label="澶村儚" width="80px" class-name="table-column-avatar" fixed="left"> - <template slot-scope="{row}"> - <img :src="row.avatar == null ? '/static/avatar/man.png' : row.avatar"> + <el-table-column label="搴忓彿" width="80px"> + <template slot-scope="scope"> + <span>{{scope.$index + 1}}</span> </template> - </el-table-column> --> - <el-table-column prop="realname" label="濮撳悕" min-width="100px" fixed="left"></el-table-column> - <el-table-column prop="username" label="鐢ㄦ埛鍚�" min-width="120px"></el-table-column> - <el-table-column prop="empNo" label="宸ュ彿" sortable="custom" sort-by="EMP_NO" min-width="80px"></el-table-column> - <el-table-column prop="department" label="閮ㄩ棬" min-width="120px"> - <template slot-scope="{row}">{{row.department == null ? '' : row.department.name}}</template> </el-table-column> - <el-table-column prop="position" label="宀椾綅" min-width="160px" class-name="table-column-strings"> + <el-table-column prop="username" label="璐﹀彿" min-width="120px"></el-table-column> + <el-table-column prop="realname" label="濮撳悕" min-width="100px"></el-table-column> + <el-table-column prop="mobile" label="鑱旂郴鏂瑰紡" min-width="100px"></el-table-column> + <el-table-column prop="roles" label="瑙掕壊" min-width="160px" class-name="table-column-strings"> <template slot-scope="{row}"> <ul> - <li v-for="position in row.positions" :key="position.id">{{position.name}}</li> + <li v-for="role in row.roles" :key="role.id">{{role.name}}</li> </ul> </template> </el-table-column> - <el-table-column prop="sex" label="鎬у埆" sortable="custom" sort-by="SEX" min-width="80px"> + <el-table-column label="鍚敤鐘舵��" min-width="100px"> <template slot-scope="{row}"> - {{row.sex | sex}} + <el-switch + @change="changeStatus($event, row)" + v-model="row.status" + active-color="#13ce66" + inactive-color="#ff4949" + :active-value="0" + :inactive-value="1"> + </el-switch> </template> </el-table-column> - <el-table-column prop="mobile" label="鎵嬫満鍙风爜" min-width="100px"></el-table-column> - <el-table-column prop="email" label="閭" min-width="180px"></el-table-column> - <el-table-column prop="birthday" label="鐢熸棩" sortable="custom" sort-by="BIRTHDAY" min-width="100px"></el-table-column> - <el-table-column prop="roles" label="瑙掕壊" min-width="160px" class-name="table-column-strings"> - <template slot-scope="{row}"> - <ul> - <li v-for="role in row.roles" :key="role.id">{{role.name}}</li> - </ul> - </template> - </el-table-column> - <el-table-column prop="createUser" label="鍒涘缓浜�" min-width="100px"> - <template slot-scope="{row}">{{row.createUserInfo == null ? '' : row.createUserInfo.username}}</template> - </el-table-column> - <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" sortable="custom" sort-by="CREATE_TIME" min-width="140px"></el-table-column> - <el-table-column prop="updateUser" label="鏇存柊浜�" min-width="100px"> - <template slot-scope="{row}">{{row.updateUserInfo == null ? '' : row.updateUserInfo.username}}</template> - </el-table-column> - <el-table-column prop="updateTime" label="鏇存柊鏃堕棿" sortable="custom" sort-by="UPDATE_TIME" min-width="140px"></el-table-column> <el-table-column v-if="containPermissions(['system:user:update', 'system:user:createUserRole', 'system:user:resetPwd', 'system:user:delete'])" label="鎿嶄綔" @@ -87,9 +71,10 @@ > <template v-if="isAdmin || (row.id !== userInfo.id && row.roles.findIndex(r => r.code === adminCode) === -1)" slot-scope="{row}"> <el-button type="text" icon="el-icon-edit" @click="$refs.operaUserWindow.open('缂栬緫鐢ㄦ埛', row)" v-permissions="['system:user:update']">缂栬緫</el-button> + <el-button type="text" @click="$refs.allocationEnterprises.open('鍒嗛厤浼佷笟', row)">鍒嗛厤浼佷笟</el-button> <el-button type="text" icon="el-icon-s-custom" @click="$refs.roleConfigWindow.open(row)" v-permissions="['system:user:createUserRole']">閰嶇疆瑙掕壊</el-button> <el-button type="text" @click="$refs.resetPwdWindow.open(row)" v-permissions="['system:user:resetPwd']">閲嶇疆瀵嗙爜</el-button> - <el-button v-if="!row.fixed" type="text" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:user:delete']">鍒犻櫎</el-button> +<!-- <el-button v-if="!row.fixed" type="text" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:user:delete']">鍒犻櫎</el-button>--> </template> </el-table-column> </el-table> @@ -105,6 +90,8 @@ <RoleConfigWindow ref="roleConfigWindow" @success="handlePageChange(tableData.pagination.pageIndex)"/> <!-- 閲嶇疆瀵嗙爜 --> <ResetPwdWindow ref="resetPwdWindow"/> + <!-- 鍒嗛厤浼佷笟 --> + <allocationEnterprises ref="allocationEnterprises" @success="handlePageChange(tableData.pagination.pageIndex)"/> </TableLayout> </template> @@ -113,20 +100,21 @@ import TableLayout from '@/layouts/TableLayout' import BaseTable from '@/components/base/BaseTable' import OperaUserWindow from '@/components/system/user/OperaUserWindow' +import allocationEnterprises from '@/components/system/user/allocationEnterprises' import RoleConfigWindow from '@/components/system/user/RoleConfigWindow' import ResetPwdWindow from '@/components/system/user/ResetPwdWindow' import DepartmentSelect from '@/components/common/DepartmentSelect' import PositionSelect from '@/components/common/PositionSelect' +import { updUserStatus } from '@/api/system/user' export default { name: 'SystemUser', extends: BaseTable, - components: { PositionSelect, DepartmentSelect, ResetPwdWindow, RoleConfigWindow, OperaUserWindow, TableLayout, Pagination }, + components: { allocationEnterprises, PositionSelect, DepartmentSelect, ResetPwdWindow, RoleConfigWindow, OperaUserWindow, TableLayout, Pagination }, data () { return { // 鎼滅储 searchForm: { - type:0, username: '', // 鍚嶅瓧 realname: '', // 濮撳悕 rootDeptId: null, // 閮ㄩ棬ID @@ -146,6 +134,18 @@ }] }) this.search() + }, + methods: { + changeStatus(status, row) { + updUserStatus({ + id: row.id, + status + }).then(res => { + this.search() + }).catch(err => { + row.status = row.status === 0 ? 1 : 0 + }) + } } } </script> -- Gitblit v1.9.3