From bce47a35454c801d9b077feb614417610f43b48b Mon Sep 17 00:00:00 2001 From: houjishuang <46269784@qq.com> Date: Thu, 10 Jul 2025 16:28:59 +0800 Subject: [PATCH] hjhc --- .../user/controller/SysUserController.java | 9 +++ .../user/entity/dto/SysInnerUserInfo.java | 62 +++++++++++++++++++ .../system/user/service/SysUserService.java | 3 + .../user/service/impl/SysUserServiceImpl.java | 56 ++++++++++++++--- src/main/resources/application-master.yml | 2 +- 5 files changed, 124 insertions(+), 8 deletions(-) create mode 100644 src/main/java/com/coscoshipping/ebtp/system/user/entity/dto/SysInnerUserInfo.java diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysUserController.java b/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysUserController.java index 0f569ca..e16fd7d 100644 --- a/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysUserController.java +++ b/src/main/java/com/coscoshipping/ebtp/system/user/controller/SysUserController.java @@ -3,6 +3,7 @@ package com.coscoshipping.ebtp.system.user.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; +import com.coscoshipping.ebtp.system.user.entity.dto.SysInnerUserInfo; import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO; import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.PathVariable; @@ -120,4 +121,12 @@ public class SysUserController{ return BaseResponse.success(iSysUserService.getPage(sysUserVO)); } + + @ApiOperation("查询内部用户数据") + @PostMapping("/innerUserInfo") + public BaseResponse getInnerUserInfo(@RequestParam String employeeNumber){ + + return BaseResponse.success(iSysUserService.getInnerUserInfo(employeeNumber)); + + } } diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/entity/dto/SysInnerUserInfo.java b/src/main/java/com/coscoshipping/ebtp/system/user/entity/dto/SysInnerUserInfo.java new file mode 100644 index 0000000..e521456 --- /dev/null +++ b/src/main/java/com/coscoshipping/ebtp/system/user/entity/dto/SysInnerUserInfo.java @@ -0,0 +1,62 @@ +package com.coscoshipping.ebtp.system.user.entity.dto; + +import com.coscoshipping.ebtp.system.role.entity.SysRole; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class SysInnerUserInfo { + + @ApiModelProperty(value = "用户id") + private String userId; + + @ApiModelProperty(value = "密码") + private String password; + + @ApiModelProperty(value = "中文姓名") + private String name; + + @ApiModelProperty(value = "一般情况下,等于name字段值,如部门内有重名的情况,可以以特殊名称标明,例如:张明(大),张明(小)等") + private String displayName; + + @ApiModelProperty(value = "portal的实际id,不一定为统一邮件前缀") + private String portalId; + + @ApiModelProperty(value = "状态") + private Integer status; + + @ApiModelProperty(value = "HR员工编码(非正式用户无该信息)") + private String employeeNumber; + + @ApiModelProperty(value = "用户办公电话") + private String officePhone; + + @ApiModelProperty(value = "手机号码(用于接收短信提醒)等") + private String mobile; + + @ApiModelProperty(value = "统一邮件") + private String email; + + @ApiModelProperty(value = "性别") + private String sex; + + @ApiModelProperty(value = "部门机构ID") + private String orgId; + + @ApiModelProperty(value = "部门机构名称") + private String orgName; + + @ApiModelProperty(value = "岗位") + private String position; + + @ApiModelProperty(value = "公司ID") + private String companyId; + + @ApiModelProperty(value = "公司名称") + private String companyName; + + @ApiModelProperty(value = "角色") + private String roles; +} diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/service/SysUserService.java b/src/main/java/com/coscoshipping/ebtp/system/user/service/SysUserService.java index d1fc57f..f5012f1 100644 --- a/src/main/java/com/coscoshipping/ebtp/system/user/service/SysUserService.java +++ b/src/main/java/com/coscoshipping/ebtp/system/user/service/SysUserService.java @@ -4,6 +4,7 @@ package com.coscoshipping.ebtp.system.user.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.chinaunicom.mall.ebtp.common.base.service.IBaseService; import com.coscoshipping.ebtp.system.user.entity.SysUser; +import com.coscoshipping.ebtp.system.user.entity.dto.SysInnerUserInfo; import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO; /** @@ -33,5 +34,7 @@ public interface SysUserService extends IBaseService{ */ Boolean deleteUserById(String roleId); + public SysInnerUserInfo getInnerUserInfo(String employeeNumber); + } diff --git a/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysUserServiceImpl.java b/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysUserServiceImpl.java index 0a71afa..3506f08 100644 --- a/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysUserServiceImpl.java +++ b/src/main/java/com/coscoshipping/ebtp/system/user/service/impl/SysUserServiceImpl.java @@ -1,13 +1,21 @@ package com.coscoshipping.ebtp.system.user.service.impl; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest; +import com.coscoshipping.ebtp.system.org.entity.SysOrg; +import com.coscoshipping.ebtp.system.org.service.SysOrgService; +import com.coscoshipping.ebtp.system.role.entity.SysRole; +import com.coscoshipping.ebtp.system.role.entity.vo.AllRolesAndAssignRoleVO; +import com.coscoshipping.ebtp.system.user.entity.dto.SysInnerUserInfo; import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO; +import com.coscoshipping.ebtp.system.userrole.service.SysUserRoleService; import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl; import com.chinaunicom.mall.ebtp.common.util.PropertyUtils; @@ -19,18 +27,23 @@ import java.time.LocalDateTime; /** * 对数据表 sys_user 操作的 serviceImpl - * @author yss * + * @author yss */ @Service -public class SysUserServiceImpl extends BaseServiceImpl implements SysUserService { +public class SysUserServiceImpl extends BaseServiceImpl implements SysUserService { + @Autowired + private SysOrgService sysOrgService; + + @Autowired + private SysUserRoleService sysUserRoleService; @Override public IPage getPage(SysUserVO sysUserVO) { LambdaQueryWrapper query = buildQueryWrapper(sysUserVO); - if(null == sysUserVO.getBasePageRequest()){ + if (null == sysUserVO.getBasePageRequest()) { sysUserVO.setBasePageRequest(new BasePageRequest()); } //查询 @@ -43,7 +56,7 @@ public class SysUserServiceImpl extends BaseServiceImpl public Boolean insertByVo(SysUserVO vo) { vo.setUserId(PropertyUtils.getSnowflakeId()).setCreateDate(LocalDateTime.now()); // SysUser add = BeanUtil.toBean(VO, SysUser.class); - validEntityBeforeSave(vo,false); + validEntityBeforeSave(vo, false); boolean flag = baseMapper.insert(vo) > 0; return flag; } @@ -51,7 +64,7 @@ public class SysUserServiceImpl extends BaseServiceImpl @Override public Boolean updateByVo(SysUserVO vo) { // SysUser update = BeanUtil.toBean(vo, SysUser.class); - validEntityBeforeSave(vo,true); + validEntityBeforeSave(vo, true); boolean flag = baseMapper.updateById(vo) > 0; return flag; } @@ -64,13 +77,13 @@ public class SysUserServiceImpl extends BaseServiceImpl /** * 保存前的数据校验 */ - private void validEntityBeforeSave(SysUser entity,boolean isUpdate){ + private void validEntityBeforeSave(SysUser entity, boolean isUpdate) { //TODO 做一些数据校验,如唯一约束 } private LambdaQueryWrapper buildQueryWrapper(SysUserVO vo) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(vo.getUserId()), SysUser::getUserId , vo.getUserId()); + lqw.eq(StringUtils.isNotBlank(vo.getUserId()), SysUser::getUserId, vo.getUserId()); lqw.like(StringUtils.isNotBlank(vo.getName()), SysUser::getName, vo.getName()); lqw.eq(StringUtils.isNotBlank(vo.getPortalId()), SysUser::getPortalId, vo.getPortalId()); lqw.like(StringUtils.isNotBlank(vo.getDisplayName()), SysUser::getDisplayName, vo.getDisplayName()); @@ -87,4 +100,33 @@ public class SysUserServiceImpl extends BaseServiceImpl lqw.orderByDesc(SysUser::getCreateDate); return lqw; } + + + public SysInnerUserInfo getInnerUserInfo(String employeeNumber) { + if (org.apache.commons.lang3.StringUtils.isBlank(employeeNumber) + ) { + return null; + } + + + SysUser sysUser = this.baseMapper.selectOne(new LambdaQueryWrapper().eq(SysUser::getEmployeeNumber, employeeNumber)); + if (sysUser == null) { + return null; + } + SysInnerUserInfo sysInnerUserInfo = new SysInnerUserInfo(); + BeanUtil.copyProperties(sysUser, sysInnerUserInfo); + SysOrg company = sysOrgService.getCompanyByOrgId(sysUser.getOrgId()); + sysInnerUserInfo.setCompanyName(company != null ? company.getOrgName() : ""); + sysInnerUserInfo.setCompanyId(company != null ? company.getOrgId() : ""); + AllRolesAndAssignRoleVO allRolesAndAssignRole = sysUserRoleService.getAllRolesAndAssignRole(sysUser.getUserId()); + if ((allRolesAndAssignRole != null)&&(allRolesAndAssignRole.getAllRole() != null)){ + StringBuilder sb = new StringBuilder(); + for (SysRole role : allRolesAndAssignRole.getAllRole()) { + sb.append(role.getRoleName()).append(","); + } + sysInnerUserInfo.setRoles(sb.toString().substring(0,sb.length()-1)); + } + return sysInnerUserInfo; + + } } diff --git a/src/main/resources/application-master.yml b/src/main/resources/application-master.yml index 90570f2..c213c91 100644 --- a/src/main/resources/application-master.yml +++ b/src/main/resources/application-master.yml @@ -81,7 +81,7 @@ spring: redis: sentinel: master: mymaster - nodes: 10.60.161.59:26379, 10.60.161.59:26380, 10.60.161.59:26381 + nodes: 192.168.110.231:26379 #, 192.168.110.231:26380, 192.168.110.231:26381 password: pass database: sharding: 1