feat(REQ-3488): 人员通用查询接口迁移调整
This commit is contained in:
parent
a5ea6b4f22
commit
2f885b3c48
@ -2,8 +2,11 @@ package cn.axzo.orgmanax.api.orguser.feign;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.dto.orguser.req.ListOrgUserReq;
|
||||
import cn.axzo.orgmanax.dto.orguser.dto.OrgUserDTO;
|
||||
import cn.axzo.orgmanax.dto.orguser.req.ListOrgUserReq;
|
||||
import cn.axzo.orgmanax.dto.orguser.req.PageOrgUserReq;
|
||||
import cn.axzo.orgmanax.dto.orguser.resp.PageOrgUserElementResp;
|
||||
import javax.validation.Valid;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
@ -32,4 +35,14 @@ public interface OrgUserApi {
|
||||
@PostMapping("/api/org-user/list")
|
||||
ApiResult<PageResp<OrgUserDTO>> list(@RequestBody @Validated ListOrgUserReq req);
|
||||
|
||||
/**
|
||||
* TODO: 第三期实现
|
||||
* 通用人员列表分页查询
|
||||
* 和其他接口逻辑、返回结构,完全不同,只能平迁
|
||||
* @param req 分页查询入参
|
||||
* @return 通用人员列表
|
||||
*/
|
||||
@PostMapping(value = "/api/org-user/generic/page")
|
||||
ApiResult<PageResp<PageOrgUserElementResp>> page(@RequestBody @Valid PageOrgUserReq req);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,21 @@
|
||||
package cn.axzo.orgmanax.dto.orguser.enums;
|
||||
|
||||
import lombok.AccessLevel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* @description
|
||||
* 通用人员列表场景枚举
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/8/2
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor(access = AccessLevel.PRIVATE)
|
||||
public enum GenericUserListScenarioEnum {
|
||||
|
||||
ATTENDANCE("考勤");
|
||||
|
||||
private final String desc;
|
||||
}
|
||||
@ -0,0 +1,24 @@
|
||||
package cn.axzo.orgmanax.dto.orguser.enums;
|
||||
|
||||
/**
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/8/2
|
||||
*/
|
||||
public interface IBaseUserFlagEnum {
|
||||
|
||||
/**
|
||||
* 获取用户标签编码
|
||||
*/
|
||||
String getCode();
|
||||
|
||||
/**
|
||||
* 获取用户标签描述
|
||||
*/
|
||||
String getDesc();
|
||||
|
||||
/**
|
||||
* 标签优先级
|
||||
*/
|
||||
int getPriority();
|
||||
}
|
||||
@ -0,0 +1,65 @@
|
||||
package cn.axzo.orgmanax.dto.orguser.req;
|
||||
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.orgmanax.dto.orguser.enums.GenericUserListScenarioEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/8/2
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class PageOrgUserReq extends PageReqV2 {
|
||||
|
||||
/**
|
||||
* 人员列表使用的业务场景
|
||||
* ATTENDANCE: 考勤
|
||||
*
|
||||
* @see GenericUserListScenarioEnum
|
||||
*/
|
||||
@NotNull(message = "业务场景不能为空")
|
||||
private String scenario;
|
||||
|
||||
/**
|
||||
* 项目id
|
||||
*/
|
||||
private Long workspaceId;
|
||||
/**
|
||||
* 当前用户session中的单位id
|
||||
*/
|
||||
private Long sessionOuId;
|
||||
|
||||
/**
|
||||
* 搜索关键字:
|
||||
* * 姓名模糊查询
|
||||
* * 手机号、身份证号精确匹配
|
||||
*/
|
||||
private String keyword;
|
||||
|
||||
/**
|
||||
* 单位id列表
|
||||
*/
|
||||
private List<Long> ouIds;
|
||||
|
||||
/**
|
||||
* 用户标签编码列表
|
||||
*/
|
||||
private List<String> userFlagCodes;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,59 @@
|
||||
package cn.axzo.orgmanax.dto.orguser.resp;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import java.io.Serializable;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* @description 用户基础信息
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/8/2
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrgUserBriefResp implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -1037841970293974523L;
|
||||
|
||||
/**
|
||||
* 自然人id
|
||||
*/
|
||||
private Long personId;
|
||||
/**
|
||||
* 身份id
|
||||
*/
|
||||
private Long identityId;
|
||||
/**
|
||||
* 真实姓名
|
||||
*/
|
||||
private String realName;
|
||||
/**
|
||||
* 用户头像
|
||||
*/
|
||||
private String avatarUrl;
|
||||
/**
|
||||
* 性别
|
||||
* 1:女性
|
||||
* 2:男性
|
||||
*/
|
||||
private Integer genderCode;
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String phone;
|
||||
/**
|
||||
* 身份证号
|
||||
*/
|
||||
private String idNumber;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,45 @@
|
||||
package cn.axzo.orgmanax.dto.orguser.resp;
|
||||
|
||||
import cn.axzo.orgmanax.dto.orguser.enums.IBaseUserFlagEnum;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import java.io.Serializable;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @description 标签实体
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/8/2
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class OrgUserFlagEntityResp implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -6965721030042547822L;
|
||||
|
||||
/**
|
||||
* 标签编码
|
||||
*/
|
||||
private String flagCode;
|
||||
/**
|
||||
* 标签描述
|
||||
*/
|
||||
private String flagDesc;
|
||||
|
||||
public static OrgUserFlagEntityResp from(IBaseUserFlagEnum userFlag) {
|
||||
return OrgUserFlagEntityResp.builder()
|
||||
.flagCode(userFlag.getCode())
|
||||
.flagDesc(userFlag.getDesc())
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,69 @@
|
||||
package cn.axzo.orgmanax.dto.orguser.resp;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/8/2
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class PageOrgUserElementResp implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 4468275572308565888L;
|
||||
|
||||
/**
|
||||
* 用户基础信息
|
||||
*/
|
||||
private OrgUserBriefResp brief;
|
||||
|
||||
/**
|
||||
* 单位id
|
||||
*/
|
||||
private Long ouId;
|
||||
/**
|
||||
* 单位名称
|
||||
*/
|
||||
private String ouName;
|
||||
|
||||
/**
|
||||
* 部门id
|
||||
*/
|
||||
private Long orgNodeId;
|
||||
/**
|
||||
* 部门名称
|
||||
*/
|
||||
private String orgNodeName;
|
||||
/**
|
||||
* 主管标识
|
||||
*/
|
||||
private Boolean managerFlag;
|
||||
|
||||
/**
|
||||
* 岗位id - 主岗
|
||||
*/
|
||||
private Long jobId;
|
||||
/**
|
||||
* 岗位名称 - 主岗
|
||||
*/
|
||||
private String jobName;
|
||||
|
||||
/**
|
||||
* 用户标签列表
|
||||
*/
|
||||
private List<OrgUserFlagEntityResp> userFlagEntities;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JSON.toJSONString(this);
|
||||
}
|
||||
}
|
||||
@ -5,6 +5,8 @@ import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.api.orguser.feign.OrgUserApi;
|
||||
import cn.axzo.orgmanax.dto.orguser.req.ListOrgUserReq;
|
||||
import cn.axzo.orgmanax.dto.orguser.dto.OrgUserDTO;
|
||||
import cn.axzo.orgmanax.dto.orguser.req.PageOrgUserReq;
|
||||
import cn.axzo.orgmanax.dto.orguser.resp.PageOrgUserElementResp;
|
||||
import cn.axzo.orgmanax.server.orguser.service.OrgUserService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
@ -25,4 +27,9 @@ public class OrgUserController implements OrgUserApi {
|
||||
public ApiResult<PageResp<OrgUserDTO>> list(ListOrgUserReq req) {
|
||||
return ApiResult.success(orgUserService.page(req));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<PageResp<PageOrgUserElementResp>> page(PageOrgUserReq req) {
|
||||
return ApiResult.success();
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user