From cb672abe0376bfd07fa27afdddde41ab0f9725f8 Mon Sep 17 00:00:00 2001 From: zhuxinru Date: Fri, 16 Jan 2026 16:17:59 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=9F=A5=E8=AF=A2=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E8=AF=A6=E7=BB=86=E4=BF=A1=E6=81=AF=EF=BC=88=E5=B8=A6=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E8=A7=92=E8=89=B2=E5=B2=97=E4=BD=8D=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resp/capability/ReportTemplateResp.java | 1 + .../entity/resp/system/CIDDeptResp.java | 44 ++++++++++++ .../entity/resp/system/CIDPostResp.java | 47 ++++++++++++ .../entity/resp/system/CIDStaffResp.java | 72 +++++++++++++++++++ .../system/controller/SysUserController.java | 5 ++ .../sdm/system/service/ISysUserService.java | 2 + .../impl/CID/CIDISysUserServiceImpl.java | 23 ++++++ .../service/impl/LocalUserServiceImpl.java | 10 +-- .../main/resources/application-dev-190.yml | 1 + .../src/main/resources/application-dev-65.yml | 1 + .../src/main/resources/application-local.yml | 1 + .../src/main/resources/application-lyric.yml | 1 + .../src/main/resources/application-prod.yml | 1 + 13 files changed, 205 insertions(+), 4 deletions(-) create mode 100644 common/src/main/java/com/sdm/common/entity/resp/system/CIDDeptResp.java create mode 100644 common/src/main/java/com/sdm/common/entity/resp/system/CIDPostResp.java create mode 100644 common/src/main/java/com/sdm/common/entity/resp/system/CIDStaffResp.java diff --git a/common/src/main/java/com/sdm/common/entity/resp/capability/ReportTemplateResp.java b/common/src/main/java/com/sdm/common/entity/resp/capability/ReportTemplateResp.java index bcf883df..c5ffc84b 100644 --- a/common/src/main/java/com/sdm/common/entity/resp/capability/ReportTemplateResp.java +++ b/common/src/main/java/com/sdm/common/entity/resp/capability/ReportTemplateResp.java @@ -8,6 +8,7 @@ import java.time.LocalDateTime; @Data public class ReportTemplateResp { + private Long id; @Schema(description = "报告模版唯一ID") private String uuid; diff --git a/common/src/main/java/com/sdm/common/entity/resp/system/CIDDeptResp.java b/common/src/main/java/com/sdm/common/entity/resp/system/CIDDeptResp.java new file mode 100644 index 00000000..5b287935 --- /dev/null +++ b/common/src/main/java/com/sdm/common/entity/resp/system/CIDDeptResp.java @@ -0,0 +1,44 @@ +package com.sdm.common.entity.resp.system; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class CIDDeptResp implements Serializable { + private static final long serialVersionUID = -5457958807109903023L; + + @Schema(description="部门ID") + private Long deptId; + + @Schema(description="部门编码") + private String deptCode; + + @Schema(description="部门名称") + private String deptName; + + @Schema(description="负责人user_id") + private Long leaderId; + + @Schema(description="排序") + private Integer sortOrder; + + @Schema(description="父级部门ID") + private Long parentId; + + @Schema(description="创建人") + private Long createBy; + + @Schema(description="创建时间") + private Long createTime; + + @Schema(description="修改人") + private Long updateBy; + + @Schema(description="更新时间") + private Long updateTime; + + @Schema(description="所属租户ID") + private Long tenantId; +} diff --git a/common/src/main/java/com/sdm/common/entity/resp/system/CIDPostResp.java b/common/src/main/java/com/sdm/common/entity/resp/system/CIDPostResp.java new file mode 100644 index 00000000..2023ae4b --- /dev/null +++ b/common/src/main/java/com/sdm/common/entity/resp/system/CIDPostResp.java @@ -0,0 +1,47 @@ +package com.sdm.common.entity.resp.system; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class CIDPostResp implements Serializable { + private static final long serialVersionUID = -7325581156410130798L; + + /** + * 岗位ID + */ + @Schema(description="岗位ID") + @NotNull(message = "岗位Id不能为空!") + private Long postId; + + /** + * 岗位编码 + */ + @Schema(description="岗位编码") + @NotBlank(message = "岗位编码不能为空!") + private String postCode; + + /** + * 岗位名称 + */ + @Schema(description="岗位名称") + @NotBlank(message = "岗位名称不能为空!") + private String postName; + + /** + * 岗位排序 + */ + @Schema(description="岗位排序") + @NotNull(message = "岗位排序不能为空!") + private Integer sortOrder; + + /** + * 岗位描述 + */ + @Schema(description="岗位描述") + private String description; +} diff --git a/common/src/main/java/com/sdm/common/entity/resp/system/CIDStaffResp.java b/common/src/main/java/com/sdm/common/entity/resp/system/CIDStaffResp.java new file mode 100644 index 00000000..5cca60e3 --- /dev/null +++ b/common/src/main/java/com/sdm/common/entity/resp/system/CIDStaffResp.java @@ -0,0 +1,72 @@ +package com.sdm.common.entity.resp.system; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +@Data +public class CIDStaffResp implements Serializable { + private static final long serialVersionUID = -7327814323528614516L; + + @Schema(description = "员工ID") + private Long staffId; + + /** + * 员工编号,系统生成 + */ + @Schema(description = "员工编号,系统生成") + private String staffCode; + + /** + * 公司邮箱地址,每个公司的邮箱不一样 + */ + @Schema(description = "公司邮箱地址,每个公司的邮箱不一样") + private String email; + + /** + * 1-是管理员;0-非管理员 + */ + @Schema(description = "1-是管理员;0-非管理员") + private String isAdmin; + + /** + * 所属用户ID + */ + @Schema(description = "所属用户ID") + private Long userId; + + /** + * 所属租户ID + */ + @Schema(description = "所属租户ID") + private Long tenantId; + + /** + * 登录默认员工账号:0-默认;1-非默认 + */ + @Schema(description = "登录默认员工账号:0-默认;1-非默认") + private String loginDefault; + + /** + * 锁定标记,0未锁定,1已锁定 + */ + @Schema(description = "锁定标记,0未锁定,1已锁定") + private String status; + + @Schema(description = "用户信息") + private CIDUserResp userInfo; + + @Schema(description="关联岗位集合") + private List deptList = new ArrayList<>(); + + @Schema(description="关联部门集合") + private List postList = new ArrayList<>(); + + @Schema(description="关联role集合") + private List roleList = new ArrayList<>(); + + +} diff --git a/system/src/main/java/com/sdm/system/controller/SysUserController.java b/system/src/main/java/com/sdm/system/controller/SysUserController.java index 23f8f8c2..326548ed 100644 --- a/system/src/main/java/com/sdm/system/controller/SysUserController.java +++ b/system/src/main/java/com/sdm/system/controller/SysUserController.java @@ -250,5 +250,10 @@ public class SysUserController implements ISysUserFeignClient { return rolePermissionService.getUserPermissions(Long.valueOf(userId)); } + @Operation(summary = "根据用户ids查询用户列表") + @PostMapping("/listUserDetailByIds") + public SdmResponse> listUserDetailByIds(@Parameter(description = "用户查询请求参数") @RequestBody UserQueryReq req) { + return ISysUserService.listUserDetailByIds(req); + } } \ No newline at end of file diff --git a/system/src/main/java/com/sdm/system/service/ISysUserService.java b/system/src/main/java/com/sdm/system/service/ISysUserService.java index 4fc1adf2..f445589d 100644 --- a/system/src/main/java/com/sdm/system/service/ISysUserService.java +++ b/system/src/main/java/com/sdm/system/service/ISysUserService.java @@ -53,4 +53,6 @@ public interface ISysUserService extends IService { SdmResponse> getUserByRoleCode(String roleCode, Long tenantId); + SdmResponse> listUserDetailByIds(UserQueryReq req); + } diff --git a/system/src/main/java/com/sdm/system/service/impl/CID/CIDISysUserServiceImpl.java b/system/src/main/java/com/sdm/system/service/impl/CID/CIDISysUserServiceImpl.java index b01d80d6..77c62ae7 100644 --- a/system/src/main/java/com/sdm/system/service/impl/CID/CIDISysUserServiceImpl.java +++ b/system/src/main/java/com/sdm/system/service/impl/CID/CIDISysUserServiceImpl.java @@ -44,6 +44,9 @@ public class CIDISysUserServiceImpl extends ServiceImpl @Value("${cid.user.listUserByIds}") private String listUserByIds; + @Value("${cid.user.listUserDetailByIds}") + private String listUserDetailByIds; + @Value("${cid.user.queryUserRole}") private String queryUserRole; @@ -301,4 +304,24 @@ public class CIDISysUserServiceImpl extends ServiceImpl return SdmResponse.failed("根据角色编码查询用户失败: "); } } + + @Override + public SdmResponse> listUserDetailByIds(UserQueryReq req) { + try { + log.info("[CIDISysUserServiceImpl] listUserDetailByIds send url:{}, param:{}", cidUrl + listUserDetailByIds, JSONUtil.toJsonStr(req)); + String userJson = HttpUtil.post(cidUrl + listUserDetailByIds, JSONUtil.toJsonStr(req)); + log.info("[CIDISysUserServiceImpl] listUserDetailByIds response:{}", userJson); + SdmResponse> result = JSON.parseObject( + userJson, + new TypeReference>>() {} + ); + if (result != null) { + return result; + } + return SdmResponse.failed("用户不存在"); + } catch (Exception e) { + log.error("查询用户失败", e); + return SdmResponse.failed("查询用户失败: "); + } + } } diff --git a/system/src/main/java/com/sdm/system/service/impl/LocalUserServiceImpl.java b/system/src/main/java/com/sdm/system/service/impl/LocalUserServiceImpl.java index 75817eaa..5126535b 100644 --- a/system/src/main/java/com/sdm/system/service/impl/LocalUserServiceImpl.java +++ b/system/src/main/java/com/sdm/system/service/impl/LocalUserServiceImpl.java @@ -10,14 +10,11 @@ import com.sdm.common.entity.req.system.QueryGroupDetailReq; import com.sdm.common.entity.req.system.UserListReq; import com.sdm.common.entity.req.system.UserQueryReq; import com.sdm.common.entity.resp.PageDataResp; -import com.sdm.common.entity.resp.system.CIDRoleResp; -import com.sdm.common.entity.resp.system.UserTokenResp; +import com.sdm.common.entity.resp.system.*; import com.sdm.common.utils.PageUtils; import com.sdm.system.dao.SysUserMapper; import com.sdm.system.model.entity.*; import com.sdm.system.model.req.user.*; -import com.sdm.common.entity.resp.system.CIDUserResp; -import com.sdm.common.entity.resp.system.SysUserGroupResp; import com.sdm.system.service.*; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.ObjectUtils; @@ -312,4 +309,9 @@ public class LocalUserServiceImpl extends ServiceImpl im return null; } + @Override + public SdmResponse> listUserDetailByIds(UserQueryReq req) { + return null; + } + } diff --git a/system/src/main/resources/application-dev-190.yml b/system/src/main/resources/application-dev-190.yml index b23f2d38..9ad1c4cd 100644 --- a/system/src/main/resources/application-dev-190.yml +++ b/system/src/main/resources/application-dev-190.yml @@ -145,6 +145,7 @@ cid: listUser: /spdm-user/listUser queryUserDetail: /spdm-user/queryUserDetail listUserByIds: /spdm-user/listUserByIds + listUserDetailByIds: /spdm-user/listUserDetailByIds queryUserRole: /spdm-user/queryUserRole queryGroup: /spdm-user/queryGroup queryGroupDetail: /spdm-user/queryGroupDetail diff --git a/system/src/main/resources/application-dev-65.yml b/system/src/main/resources/application-dev-65.yml index 6684e1e1..77fdcfe7 100644 --- a/system/src/main/resources/application-dev-65.yml +++ b/system/src/main/resources/application-dev-65.yml @@ -145,6 +145,7 @@ cid: listUser: /spdm-user/listUser queryUserDetail: /spdm-user/queryUserDetail listUserByIds: /spdm-user/listUserByIds + listUserDetailByIds: /spdm-user/listUserDetailByIds queryUserRole: /spdm-user/queryUserRole queryGroup: /spdm-user/queryGroup queryGroupDetail: /spdm-user/queryGroupDetail diff --git a/system/src/main/resources/application-local.yml b/system/src/main/resources/application-local.yml index 7d722a05..bbd97f59 100644 --- a/system/src/main/resources/application-local.yml +++ b/system/src/main/resources/application-local.yml @@ -145,6 +145,7 @@ cid: listUser: /spdm-user/listUser queryUserDetail: /spdm-user/queryUserDetail listUserByIds: /spdm-user/listUserByIds + listUserDetailByIds: /spdm-user/listUserDetailByIds queryUserRole: /spdm-user/queryUserRole queryGroup: /spdm-user/queryGroup queryGroupDetail: /spdm-user/queryGroupDetail diff --git a/system/src/main/resources/application-lyric.yml b/system/src/main/resources/application-lyric.yml index 1d538498..abca1ded 100644 --- a/system/src/main/resources/application-lyric.yml +++ b/system/src/main/resources/application-lyric.yml @@ -145,6 +145,7 @@ cid: listUser: /spdm-user/listUser queryUserDetail: /spdm-user/queryUserDetail listUserByIds: /spdm-user/listUserByIds + listUserDetailByIds: /spdm-user/listUserDetailByIds queryUserRole: /spdm-user/queryUserRole queryGroup: /spdm-user/queryGroup queryGroupDetail: /spdm-user/queryGroupDetail diff --git a/system/src/main/resources/application-prod.yml b/system/src/main/resources/application-prod.yml index d770208a..9eed89f2 100644 --- a/system/src/main/resources/application-prod.yml +++ b/system/src/main/resources/application-prod.yml @@ -145,6 +145,7 @@ cid: listUser: /spdm-user/listUser queryUserDetail: /spdm-user/queryUserDetail listUserByIds: /spdm-user/listUserByIds + listUserDetailByIds: /spdm-user/listUserDetailByIds queryUserRole: /spdm-user/queryUserRole queryGroup: /spdm-user/queryGroup queryGroupDetail: /spdm-user/queryGroupDetail