【职工信息】页面调整

master
zengchenxi 10 months ago
parent 52691196e1
commit d980e4e3f7

@ -22,6 +22,9 @@ public class UserPageReqVO extends PageParam {
@Schema(description = "用户账号,模糊匹配", example = "mes") @Schema(description = "用户账号,模糊匹配", example = "mes")
private String username; private String username;
@Schema(description = "昵称,模糊匹配", example = "mes")
private String nickname;
@Schema(description = "手机号码,模糊匹配", example = "mes") @Schema(description = "手机号码,模糊匹配", example = "mes")
private String mobile; private String mobile;

@ -28,6 +28,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
default PageResult<AdminUserDO> selectPage(UserPageReqVO reqVO, Collection<Long> deptIds) { default PageResult<AdminUserDO> selectPage(UserPageReqVO reqVO, Collection<Long> deptIds) {
return selectPage(reqVO, new LambdaQueryWrapperX<AdminUserDO>() return selectPage(reqVO, new LambdaQueryWrapperX<AdminUserDO>()
.likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername()) .likeIfPresent(AdminUserDO::getUsername, reqVO.getUsername())
.likeIfPresent(AdminUserDO::getNickname, reqVO.getNickname())
.likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile()) .likeIfPresent(AdminUserDO::getMobile, reqVO.getMobile())
.eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus()) .eqIfPresent(AdminUserDO::getStatus, reqVO.getStatus())
.betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(AdminUserDO::getCreateTime, reqVO.getCreateTime())

@ -9,8 +9,8 @@
> >
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="员工昵称" prop="nickname"> <el-form-item label="姓名" prop="nickname">
<el-input v-model="formData.nickname" placeholder="请输入员工昵称" /> <el-input v-model="formData.nickname" placeholder="请输入姓名" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -40,15 +40,15 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item v-if="formData.id === undefined" label="员工名称" prop="username"> <el-form-item v-if="formData.id === undefined" label="工号" prop="username">
<el-input v-model="formData.username" placeholder="请输入员工名称" /> <el-input v-model="formData.username" placeholder="请输入工号" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item v-if="formData.id === undefined" label="员工密码" prop="password"> <el-form-item v-if="formData.id === undefined" label="密码" prop="password">
<el-input <el-input
v-model="formData.password" v-model="formData.password"
placeholder="请输入员工密码" placeholder="请输入密码"
show-password show-password
type="password" type="password"
/> />
@ -57,7 +57,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="员工性别"> <el-form-item label="性别">
<el-select v-model="formData.sex" placeholder="请选择"> <el-select v-model="formData.sex" placeholder="请选择">
<el-option <el-option
v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" v-for="dict in getIntDictOptions(DICT_TYPE.SYSTEM_USER_SEX)"
@ -128,9 +128,9 @@ const formData = ref({
roleIds: [] roleIds: []
}) })
const formRules = reactive<FormRules>({ const formRules = reactive<FormRules>({
username: [{ required: true, message: '员工名称不能为空', trigger: 'blur' }], username: [{ required: true, message: '工号不能为空', trigger: 'blur' }],
nickname: [{ required: true, message: '员工昵称不能为空', trigger: 'blur' }], nickname: [{ required: true, message: '姓名不能为空', trigger: 'blur' }],
password: [{ required: true, message: '员工密码不能为空', trigger: 'blur' }], password: [{ required: true, message: '密码不能为空', trigger: 'blur' }],
email: [ email: [
{ {
type: 'email', type: 'email',

@ -16,16 +16,25 @@
:inline="true" :inline="true"
label-width="68px" label-width="68px"
> >
<el-form-item label="员工名称" prop="username"> <el-form-item label="工号" prop="username">
<el-input <el-input
v-model="queryParams.username" v-model="queryParams.username"
placeholder="请输入员工名称" placeholder="请输入工号"
clearable clearable
@keyup.enter="handleQuery" @keyup.enter="handleQuery"
class="!w-240px" class="!w-240px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="手机号码" prop="mobile"> <el-form-item label="姓名" prop="nickname">
<el-input
v-model="queryParams.nickname"
placeholder="请输入姓名"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<!-- <el-form-item label="手机号码" prop="mobile">
<el-input <el-input
v-model="queryParams.mobile" v-model="queryParams.mobile"
placeholder="请输入手机号码" placeholder="请输入手机号码"
@ -37,7 +46,7 @@
<el-form-item label="状态" prop="status"> <el-form-item label="状态" prop="status">
<el-select <el-select
v-model="queryParams.status" v-model="queryParams.status"
placeholder="员工状态" placeholder="状态"
clearable clearable
class="!w-240px" class="!w-240px"
> >
@ -58,7 +67,7 @@
end-placeholder="结束日期" end-placeholder="结束日期"
class="!w-240px" class="!w-240px"
/> />
</el-form-item> </el-form-item>-->
<el-form-item> <el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" />搜索</el-button> <el-button @click="handleQuery"><Icon icon="ep:search" />搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" />重置</el-button> <el-button @click="resetQuery"><Icon icon="ep:refresh" />重置</el-button>
@ -70,7 +79,7 @@
> >
<Icon icon="ep:plus" /> 新增 <Icon icon="ep:plus" /> 新增
</el-button> </el-button>
<el-button <!-- <el-button
type="warning" type="warning"
plain plain
@click="handleImport" @click="handleImport"
@ -86,21 +95,21 @@
v-hasPermi="['system:user:export']" v-hasPermi="['system:user:export']"
> >
<Icon icon="ep:download" />导出 <Icon icon="ep:download" />导出
</el-button> </el-button>-->
</el-form-item> </el-form-item>
</el-form> </el-form>
</ContentWrap> </ContentWrap>
<ContentWrap> <ContentWrap>
<el-table v-loading="loading" :data="list"> <el-table v-loading="loading" :data="list">
<el-table-column label="员工编号" align="center" key="id" prop="id" /> <el-table-column label="序号" type="index" width="100" />
<el-table-column <el-table-column
label="员工名称" label="工号"
align="center" align="center"
prop="username" prop="username"
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
/> />
<el-table-column <el-table-column
label="员工昵称" label="姓名"
align="center" align="center"
prop="nickname" prop="nickname"
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
@ -187,9 +196,9 @@
</el-col> </el-col>
</el-row> </el-row>
<!-- 添加或修改员工对话框 --> <!-- 添加或修改对话框 -->
<UserForm ref="formRef" @success="getList" /> <UserForm ref="formRef" @success="getList" />
<!-- 员工导入对话框 --> <!-- 导入对话框 -->
<UserImportForm ref="importFormRef" @success="getList" /> <UserImportForm ref="importFormRef" @success="getList" />
<!-- 分配角色 --> <!-- 分配角色 -->
<UserAssignRoleForm ref="assignRoleFormRef" @success="getList" /> <UserAssignRoleForm ref="assignRoleFormRef" @success="getList" />
@ -218,6 +227,7 @@ const queryParams = reactive({
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
username: undefined, username: undefined,
nickname: undefined,
mobile: undefined, mobile: undefined,
status: undefined, status: undefined,
deptId: undefined, deptId: undefined,
@ -261,18 +271,18 @@ const openForm = (type: string, id?: number) => {
formRef.value.open(type, id) formRef.value.open(type, id)
} }
/** 员工导入 */ /** 导入 */
const importFormRef = ref() const importFormRef = ref()
const handleImport = () => { const handleImport = () => {
importFormRef.value.open() importFormRef.value.open()
} }
/** 修改员工状态 */ /** 修改状态 */
const handleStatusChange = async (row: UserApi.UserVO) => { const handleStatusChange = async (row: UserApi.UserVO) => {
try { try {
// //
const text = row.status === CommonStatusEnum.ENABLE ? '启用' : '停用' const text = row.status === CommonStatusEnum.ENABLE ? '启用' : '停用'
await message.confirm('确认要"' + text + '""' + row.username + '"员工吗?') await message.confirm('确认要"' + text + '""' + row.username + '"吗?')
// //
await UserApi.updateUserStatus(row.id, row.status) await UserApi.updateUserStatus(row.id, row.status)
// //
@ -293,7 +303,7 @@ const handleExport = async () => {
// //
exportLoading.value = true exportLoading.value = true
const data = await UserApi.exportUser(queryParams) const data = await UserApi.exportUser(queryParams)
download.excel(data, '员工数据.xls') download.excel(data, '数据.xls')
} catch { } catch {
} finally { } finally {
exportLoading.value = false exportLoading.value = false

Loading…
Cancel
Save