From d44daabfeed9d8e3c6d53313cae7b5d6a441f6ff Mon Sep 17 00:00:00 2001 From: ccongli <1441652193@qq.com> Date: Wed, 11 Oct 2023 13:53:19 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=A1=A5=E5=85=85=E6=8F=90=E4=BA=A42?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/admin/user/UserController.java | 2 +- .../admin/user/UserProfileController.java | 14 ++ .../user/vo/profile/UserProfileRespVO.java | 35 ++++ .../vo/profile/UserProfileUpdateReqVO.java | 2 +- yunxi-ui-admin-vben/.env | 6 +- yunxi-ui-admin-vben/src/utils/dict.ts | 1 + .../src/views/system/user/user.data.ts | 60 ++++++ .../src/views/users/mine/index.vue | 187 +++++++++++------- 8 files changed, 230 insertions(+), 77 deletions(-) diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserController.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserController.java index fc91ade4..e354df95 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserController.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserController.java @@ -22,6 +22,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; import io.swagger.v3.oas.annotations.Operation; +import org.apache.commons.lang3.StringUtils; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -204,5 +205,4 @@ public class UserController { list.sort(Comparator.comparing(AdminUserDO::getId)); return success(UserConvert.INSTANCE.convertList04(list)); } - } diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserProfileController.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserProfileController.java index c1f811d1..e7140571 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserProfileController.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/UserProfileController.java @@ -65,16 +65,30 @@ public class UserProfileController { // 获得用户角色 List userRoles = roleService.getRoleListFromCache(permissionService.getUserRoleIdListByUserId(user.getId())); resp.setRoles(UserConvert.INSTANCE.convertList(userRoles)); + String deptNames = ""; // 获得部门信息 if (user.getDeptId() != null) { DeptDO dept = deptService.getDept(user.getDeptId()); resp.setDept(UserConvert.INSTANCE.convert02(dept)); + deptNames = deptNames + dept.getName() + ","; } + if(deptNames.length() > 0){ + deptNames = deptNames.substring(0, deptNames.length() - 1); + } + resp.setDeptNames(deptNames); + String postNames = ""; // 获得岗位信息 if (CollUtil.isNotEmpty(user.getPostIds())) { List posts = postService.getPostList(user.getPostIds()); resp.setPosts(UserConvert.INSTANCE.convertList02(posts)); + for (PostDO postDO : posts) { + postNames = postNames + postDO.getName() + ","; + } + } + if(postNames.length() > 0){ + postNames = postNames.substring(0, postNames.length() - 1); } + resp.setPostNames(postNames); // 获得社交用户信息 List socialUsers = socialService.getSocialUserList(user.getId(), UserTypeEnum.ADMIN.getValue()); resp.setSocialUsers(UserConvert.INSTANCE.convertList03(socialUsers)); diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java index dad3c365..b376f812 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java @@ -33,6 +33,41 @@ public class UserProfileRespVO extends UserBaseVO { @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED, example = "时间戳格式") private LocalDateTime createTime; + @Schema(description = "部门名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "事业部,传感部") + private String deptNames; + + @Schema(description = "职务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "董事长,周经理") + private String postNames; + + /** + * 籍贯 + */ + private String nativePlace; + /** + * 学历 + */ + private String education; + /** + * 专业 + */ + private String speciality; + /** + * 毕业院校 + */ + private String graduationInstitution; + /** + * 毕业时间 + */ + private LocalDateTime institutionDatatime; + /** + * 毕业时间 + */ + private LocalDateTime birthDatetime; + /** + * 个人简介 + */ + private String personalProfile; + /** * 所属角色 */ diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java index efd41144..98cbed1b 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java @@ -10,7 +10,7 @@ import javax.validation.constraints.Size; @Schema(description = "管理后台 - 用户个人信息更新 Request VO") @Data -public class UserProfileUpdateReqVO { +public class UserProfileUpdateReqVO extends UserProfileRespVO{ @Schema(description = "用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") @Size(max = 30, message = "用户昵称长度不能超过 30 个字符") diff --git a/yunxi-ui-admin-vben/.env b/yunxi-ui-admin-vben/.env index 5f9b194b..40b893df 100644 --- a/yunxi-ui-admin-vben/.env +++ b/yunxi-ui-admin-vben/.env @@ -1,11 +1,11 @@ # 端口号 -VITE_PORT = 80 +VITE_PORT = 8090 # 网站标题 -VITE_GLOB_APP_TITLE = 芋道管理系统 +VITE_GLOB_APP_TITLE = 云息Saas平台 # 简称,用于配置文件名字 不要出现空格、数字开头等特殊字符 -VITE_GLOB_APP_SHORT_NAME = Yudao_Admin +VITE_GLOB_APP_SHORT_NAME = Yunxi_Saas_Admin # 租户开关 VITE_GLOB_APP_TENANT_ENABLE = true diff --git a/yunxi-ui-admin-vben/src/utils/dict.ts b/yunxi-ui-admin-vben/src/utils/dict.ts index 75a8f678..e7b0d1f1 100644 --- a/yunxi-ui-admin-vben/src/utils/dict.ts +++ b/yunxi-ui-admin-vben/src/utils/dict.ts @@ -169,4 +169,5 @@ export enum DICT_TYPE { industryClassify = 'industry_classify', //客户星级 customerSource = 'customer_source', //客户星级 enterpriseNature = 'enterprise_nature', //客户星级 + XUELI = 'XUELI', //学历 } diff --git a/yunxi-ui-admin-vben/src/views/system/user/user.data.ts b/yunxi-ui-admin-vben/src/views/system/user/user.data.ts index 5c8b3a61..e0fca052 100644 --- a/yunxi-ui-admin-vben/src/views/system/user/user.data.ts +++ b/yunxi-ui-admin-vben/src/views/system/user/user.data.ts @@ -154,6 +154,12 @@ export const formSchema: FormSchema[] = [ handleTree: 'id', }, }, + { + label: '工号', + field: 'jobNumber', + required: true, + component: 'Input', + }, { label: '手机号码', field: 'mobile', @@ -161,6 +167,12 @@ export const formSchema: FormSchema[] = [ defaultValue: 0, component: 'InputNumber', }, + { + label: '微信号', + field: 'wechatAccount', + required: true, + component: 'Input', + }, { label: '邮箱', field: 'email', @@ -187,6 +199,54 @@ export const formSchema: FormSchema[] = [ options: getDictOptions(DICT_TYPE.SYSTEM_USER_SEX), }, }, + { + label: '出生日期', + field: 'birthDatetime', + component: 'DatePicker', + componentProps: { + showTime: false, + format: 'YYYY-MM-DD', + valueFormat: 'x', + }, + }, + { + label: '籍贯', + field: 'nativePlace', + component: 'Input', + }, + { + label: '学历', + field: 'education', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.XUELI), + }, + }, + { + label: '专业', + field: 'speciality', + component: 'Input', + }, + { + label: '毕业院校', + field: 'graduationInstitution', + component: 'Input', + }, + { + label: '毕业时间', + field: 'institutionDatatime', + component: 'DatePicker', + componentProps: { + showTime: false, + format: 'YYYY-MM-DD', + valueFormat: 'x', + }, + }, + { + label: '个人简介', + field: 'personalProfile', + component: 'InputTextArea', + }, { label: '岗位', field: 'postIds', diff --git a/yunxi-ui-admin-vben/src/views/users/mine/index.vue b/yunxi-ui-admin-vben/src/views/users/mine/index.vue index f47166cc..1f69a5cb 100644 --- a/yunxi-ui-admin-vben/src/views/users/mine/index.vue +++ b/yunxi-ui-admin-vben/src/views/users/mine/index.vue @@ -1,7 +1,7 @@