diff --git a/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/invite/feign/OrgWorkerInviteApi.java b/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/invite/feign/OrgWorkerInviteApi.java new file mode 100644 index 0000000..0775204 --- /dev/null +++ b/orgmanax-api/src/main/java/cn/axzo/orgmanax/api/invite/feign/OrgWorkerInviteApi.java @@ -0,0 +1,80 @@ +package cn.axzo.orgmanax.api.invite.feign; + +import cn.axzo.foundation.page.PageResp; +import cn.axzo.foundation.result.ApiResult; +import cn.axzo.orgmanax.dto.invite.dto.OrgWorkerInviteDTO; +import cn.axzo.orgmanax.dto.invite.req.ApproveOrgWorkerInviteReq; +import cn.axzo.orgmanax.dto.invite.req.CountTeamWorkerInviteReq; +import cn.axzo.orgmanax.dto.invite.req.LeaveOrgWorkerTeamReq; +import cn.axzo.orgmanax.dto.invite.req.OperateOrgWorkerInviteReq; +import cn.axzo.orgmanax.dto.invite.req.PageOrgTeamWorkerInviteReq; +import cn.axzo.orgmanax.dto.invite.req.SaveOrgWorkerInviteReq; +import cn.axzo.orgmanax.dto.invite.req.UpdateOrgWorkerInviteReq; +import cn.axzo.orgmanax.dto.invite.resp.CountTeamWorkerInviteResp; +import java.util.List; +import javax.validation.Valid; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @author syl + * @date 2024/12/17 + */ +@FeignClient( + value = "orgmanax", + url = "${axzo.service.orgmanax:http://orgmanax:8080}") +public interface OrgWorkerInviteApi { + + /** + * 班组 查看邀请列表(是否需要历史申请数据) + */ + @PostMapping("/api/org-gateway/team/worker-invite/page") + ApiResult> page(@RequestBody @Valid PageOrgTeamWorkerInviteReq req); + + /** + * 班组长-工友申请数量 + * 分组count 查询 + */ + @PostMapping("/api/org-gateway/team/worker-invite/group-count") + ApiResult> groupCountWorkerInvite(@RequestBody @Valid CountTeamWorkerInviteReq req); + + /** + * 班组长-班组操作 + * 班组长同意思或拒绝工人 + */ + @PostMapping("/api/org-gateway/team/worker-invite/operate") + ApiResult operateWorkerInvite(@RequestBody @Valid OperateOrgWorkerInviteReq req); + + /** + * 班组长-邀请工人 或者 工人-申请加入班组 + * 新增工人邀请 + */ + @PostMapping("/api/org-gateway/team/worker-invite/save") + ApiResult saveWorkerInvite(@RequestBody @Valid SaveOrgWorkerInviteReq req); + + /** + * 新增工人被退出项目 + */ + @PostMapping("/api/org-gateway/team/worker-invite/quit") + ApiResult> quitWorkerProjectTeam(@RequestBody @Valid List param); + + /** + * 工人-离开班组 + */ + @PostMapping("/api/org-gateway/team/worker-invite/leave") + ApiResult workerLeaveTeam(@RequestBody @Valid LeaveOrgWorkerTeamReq req); + + /** + * 同意指定人在指定班组邀请记录 or 撤销班组下所有邀请记录 + */ + @PostMapping("/api/org-gateway/worker-invite/approve") + ApiResult approveWorkerInvite(@RequestBody @Valid ApproveOrgWorkerInviteReq req); + + /** + * 修改邀请记录 + */ + @PostMapping("/api/org-gateway/worker-invite/update") + ApiResult update(@RequestBody @Valid UpdateOrgWorkerInviteReq req); + +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/OrgWorkerInviteDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/OrgWorkerInviteDTO.java new file mode 100644 index 0000000..e9381a3 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/OrgWorkerInviteDTO.java @@ -0,0 +1,98 @@ +package cn.axzo.orgmanax.dto.invite.dto; + +import java.util.Date; +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @Author zhangran + * @Date 2022/6/17 17:16 + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class OrgWorkerInviteDTO { + /** + * 邀请记录ID + */ + private Long id; + + /** + * 班组id + */ + private Long unitId; + /** + * 班组名称 + */ + private String unitName; + /** + * 工人id + */ + private Long identityId; + /** + * 工人名称 + */ + private String workerName; + /** + * 工人头像地址 + */ + private String workerFaceUrl; + /** + * 基础消息id + */ + private Long msgId; + /** + * 通过消息id + */ + private Long msgSucId; + /** + * 项目通过二维码邀请id + */ + private Long projectWorkerInviteId; + /** + * 状态:1-未处理;2-同意;3-拒绝;4-撤回 + */ + private Integer status; + /** + * 1.工人申请 2.班组邀请 3.项目申请 4.工人申请离开 + */ + private Integer type; + /** + * 邀请记录中的工人工种列表 + */ + List professions; + + /** + * 项目内班组id + */ + private Long projectTeamId; + + /** + * 其它备注信息 json + */ + private String ext; + + /** + * 岗位id + */ + private Long jobId; + + /** + * 创建时间 + */ + private Date createAt; + + /** + * 更新时间 + */ + private Date updateAt; + +// /** +// * 工种和技能标签 +// */ +// private List workerInviteProfessions; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/WorkerInviteProfessionDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/WorkerInviteProfessionDTO.java new file mode 100644 index 0000000..d772ef9 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/WorkerInviteProfessionDTO.java @@ -0,0 +1,36 @@ +package cn.axzo.orgmanax.dto.invite.dto; + +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 工人邀请记录-工人工种 + * + * @author zhangtianyu + * @date 2023/1/29 3:36 PM + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class WorkerInviteProfessionDTO { + /** + * 工种id + */ + private Long professionId; + /** + * 工种名称 + */ + private String professionName; + /** + * 技能标签列表-树形结构 + */ + private List skillTags; + /** + * 技能标签列表-平铺结构 + */ + private List expandedSkillTags; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/WorkerInviteSkillTagDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/WorkerInviteSkillTagDTO.java new file mode 100644 index 0000000..a1fc233 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/dto/WorkerInviteSkillTagDTO.java @@ -0,0 +1,40 @@ +package cn.axzo.orgmanax.dto.invite.dto; + +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 工人邀请记录-技能标签 + * @author zhangtianyu + * @date 2023/1/29 3:36 PM + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class WorkerInviteSkillTagDTO { + /** + * 所属工种id + */ + private Long professionId; + /** + * 父技能标签code + */ + private String parentSkillTagCode; + /** + * 技能标签code + */ + private String skillTagCode; + /** + * 技能标签名称 + */ + private String skillTagName; + /** + * 子技能标签列表 + */ + private List childSkillTags; + +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/enums/TeamWorkerInviteStatusEnum.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/enums/TeamWorkerInviteStatusEnum.java new file mode 100644 index 0000000..6c5eb91 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/enums/TeamWorkerInviteStatusEnum.java @@ -0,0 +1,31 @@ +package cn.axzo.orgmanax.dto.invite.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @author syl + * @date 2024/12/19 + */ +@Getter +@AllArgsConstructor +public enum TeamWorkerInviteStatusEnum { + /** + * 邀请状态 + */ + UNTREATED(1, "未处理"), + + AGREE(2, "同意"), + + REFUSE(3, "拒绝"), + + WITHDRAW(4, "撤回"), + + ABORT(5, "终止"), + + ; + + public final int value; + + public final String desc; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/enums/WorkerInviteType.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/enums/WorkerInviteType.java new file mode 100644 index 0000000..9cf7d1f --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/enums/WorkerInviteType.java @@ -0,0 +1,38 @@ +package cn.axzo.orgmanax.dto.invite.enums; + +import java.util.Arrays; +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * @author syl + * @date 2024/12/17 + */ +@Getter +@AllArgsConstructor +public enum WorkerInviteType { + + /** + * 工人加入班组 + */ + WORKER_JOIN_TEAM(1, "工人加入班组"), + /** + * 工人离开班组 + */ + WORKER_LEAVE_TEAM(2, "工人离开班组"), + /** + * 工人离开项目部 + */ + WORKER_LEAVE_WORKSPACE(3, "工人离开项目部"), + ; + + private final Integer code; + private final String desc; + + + public static WorkerInviteType getByCode(Integer code) { + return Arrays.stream(values()).filter(it -> it.getCode().equals(code)) + .findFirst() + .orElse(null); + } +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/ApproveOrgWorkerInviteReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/ApproveOrgWorkerInviteReq.java new file mode 100644 index 0000000..c7f54f2 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/ApproveOrgWorkerInviteReq.java @@ -0,0 +1,62 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import java.util.List; +import java.util.Set; +import javax.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @ClassName OrganizationalWorkTeamInviteDeleteVO + * @Author zhangran + * @Date 2023/3/4 15:14 + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class ApproveOrgWorkerInviteReq { + + /** + * 邀请记录状态 + * @see TeamWorkerInviteStatusEnum + */ + @NotNull(message = "inviteStatus can not null") + private Integer inviteStatus; + /** + * 班组id + */ + @NotNull(message = "班组不能为空") + private Long unitId; + /** + * 工人id + */ + private List identityIds; + + /** + * 组织架构人员id + */ + private Long nodeUserId; + + /** + * 项目内的班组id + */ + private Long projectTeamId; + + /** + * 邀请记录ID 列表 + */ + private Set inviteIds; + + /** + * 项目内邀请id + */ + private List projectWorkerInviteIds; + + /** + * 平台班组id + */ + private Long platTeamId; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/CountTeamWorkerInviteReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/CountTeamWorkerInviteReq.java new file mode 100644 index 0000000..34cd9b0 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/CountTeamWorkerInviteReq.java @@ -0,0 +1,34 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author zhangran + * @Date 2022/6/17 17:26 + **/ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class CountTeamWorkerInviteReq { + + /** + * 班组id + */ + private Long unitId; + + /** + * 1.工人申请 2.班组邀请 3.项目申请 4.离开班组 + */ + private List types; + + /** + * 状态:1-未处理;2-同意;3-拒绝;4-撤回 + */ + private List statuses; + +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/LeaveOrgWorkerTeamReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/LeaveOrgWorkerTeamReq.java new file mode 100644 index 0000000..2617d89 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/LeaveOrgWorkerTeamReq.java @@ -0,0 +1,38 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import java.util.List; +import javax.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @ClassName OrganizationalWorkerLeaveTeamVO + * @Description 工人离开班组 + * @Author zhangran + * @Date 2022/6/20 15:38 + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class LeaveOrgWorkerTeamReq { + + /** + * 身份id + */ + @NotNull + private Long identityId; + + /** + * 班组id + */ + @NotNull + private List unitIds; + + /** + * 工种和技能标签 + */ + private List workerInviteProfessions; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/OperateOrgWorkerInviteReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/OperateOrgWorkerInviteReq.java new file mode 100644 index 0000000..536b295 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/OperateOrgWorkerInviteReq.java @@ -0,0 +1,49 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import cn.axzo.orgmanax.dto.invite.enums.WorkerInviteType; +import java.util.List; +import javax.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @Description 班组同意或者拒绝 + * @Author zhangran + * @Date 2022/6/17 18:04 + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class OperateOrgWorkerInviteReq { + + /** + * 班组id + */ + private Long unitId; + /** + * 邀请id + */ + @NotNull(message = "请选择工人") + private List inviteIds; + /** + * Boolean.TRUE 同意 Boolean.FALSE 拒绝 + */ + @NotNull(message = "请选择审批类型") + private Boolean flagType; + + /** + * 操作人personId + */ + private Long operatorPersonId; + + /** + * 操作类型 + * @see WorkerInviteType + */ + @NotNull(message = "type can not null") + private WorkerInviteType type; + +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/OrgWorkerInviteProfessionReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/OrgWorkerInviteProfessionReq.java new file mode 100644 index 0000000..10f2a46 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/OrgWorkerInviteProfessionReq.java @@ -0,0 +1,66 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import java.util.List; +import javax.validation.Valid; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @ClassName OrganizationalWorkerInviteProfessionVO + * @Author zhongjie + * @Date 2023/01/29 17:20 + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class OrgWorkerInviteProfessionReq { + + /** + * 工种id + */ + @NotNull(message = "工种id不能为空") + private Long professionId; + + /** + * 工种名称 + */ + @NotEmpty(message = "工种名称不能为空") + private String professionName; + + /** + * 工种code + */ + private String professionCode; + + /** + * 技能标签 + */ + @Valid + private List skillTags; + + @Data + public static class WorkerSkillTag { + + /** + * 父节点技能标签Code第一级就不传 + */ + private String parentSkillTagCode; + + /** + * 技能标签名称 + */ + @NotEmpty(message = "技能标签名称不能为空") + private String skillTagName; + + /** + * 技能标签code + */ + private String skillTagCode; + + } +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/PageOrgTeamWorkerInviteReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/PageOrgTeamWorkerInviteReq.java new file mode 100644 index 0000000..a17f9b7 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/PageOrgTeamWorkerInviteReq.java @@ -0,0 +1,46 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import cn.axzo.foundation.page.PageReqV2; +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @Author zhangran + * @Date 2022/6/17 17:26 + * @Desc 班组申请实体 + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class PageOrgTeamWorkerInviteReq extends PageReqV2 { + + /** + * 班组id + */ + private Long unitId; + + /** + * 1.工人申请 2.班组邀请 3.项目申请 4.离开班组 + */ + private List types; + + /** + * 状态:1-未处理;2-同意;3-拒绝;4-撤回 + */ + private List statuses; + + /** + * 工人身份id + */ + private Long identityId; + +// /** +// * 是否返回历史数据 +// * 现有逻辑改造为true 时 statuses新增值 2-同意;3-拒绝 +// */ +// private Boolean flagHistory; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/SaveOrgWorkerInviteReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/SaveOrgWorkerInviteReq.java new file mode 100644 index 0000000..739d007 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/SaveOrgWorkerInviteReq.java @@ -0,0 +1,91 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import java.util.Collections; +import java.util.List; +import javax.validation.Valid; +import javax.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Description 班组同意或者拒绝 + * @Author zhangran + * @Date 2022/6/17 18:04 + **/ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SaveOrgWorkerInviteReq { + + /** + * 1-工人申请 2-班组邀请 + */ + @NotNull(message = "邀请类型不能为空") + private Integer teamWorkerInviteType; + /** + * 班组id + */ + @NotNull(message = "班组不能为空") + private Long unitId; + /** + * 工人身份id + */ + @NotNull(message = "请选择工人") + private Long identityId; + /** + * Boolean.TRUE 同意 Boolean.FALSE 拒绝 + */ + @NotNull(message = "工人姓名") + private String workerName; + + @NotNull(message = "工人姓名") + private String workerFaceUrl; + + /** + * 平台班组部门nodeId + */ +// @NotNull +// @Min(value = 1) + // todo @yh 这里厍这个节点做什么?没有查到有使用的地方,然后pluto调用方也没有没加这个参数 + Long organizationalNodeId; + + /** + * 项目内班组邀请id + */ + private Long projectInviteId; + + /** + * 工种和技能标签 + */ + @Valid + //@NotNull(message = "工种不能为空") + //@Size(min = 1, message = "请至少选择一个工种") + private List workerInviteProfessions; + + /** + * 项目内班组id + */ + private Long projectTeamId; + + + /** + * 其它备注信息 + */ + private String ext; + + private Integer quitWorkerStatus; + + /** + * 岗位id + */ + private Long jobId; + + /** + * 操作人id todo 实现待定 + */ + private Long operatorId; + +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/UpdateOrgWorkerInviteReq.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/UpdateOrgWorkerInviteReq.java new file mode 100644 index 0000000..74faf2c --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/req/UpdateOrgWorkerInviteReq.java @@ -0,0 +1,31 @@ +package cn.axzo.orgmanax.dto.invite.req; + +import javax.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @Author zr + * @Date 2024/3/2 17:25 + * @Description + **/ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class UpdateOrgWorkerInviteReq { + + /** + * 邀请id + */ + @NotNull(message = "邀请id不能为空") + private Long inviteId; + + /** + * 项目内的邀请id + */ + @NotNull(message = "项目内的邀请id不能为空") + private Long projectWorkerInviteId; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/resp/CountTeamWorkerInviteResp.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/resp/CountTeamWorkerInviteResp.java new file mode 100644 index 0000000..7975720 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/invite/resp/CountTeamWorkerInviteResp.java @@ -0,0 +1,27 @@ +package cn.axzo.orgmanax.dto.invite.resp; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author syl + * @date 2024/12/17 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class CountTeamWorkerInviteResp { + + /** + * 1.工人申请 2.班组邀请 3.项目申请 4.离开班组 + */ + private Integer type; + + /** + * 数量 + */ + private Integer count; +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/job/dto/OrgJobConstants.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/job/dto/OrgJobConstants.java index 7010ba5..b05fc18 100644 --- a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/job/dto/OrgJobConstants.java +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/job/dto/OrgJobConstants.java @@ -47,4 +47,10 @@ public interface OrgJobConstants { * 默认岗位的标识 */ Integer ORG_JOB_DEF_FLAG = 1; + + /** + * 岗位人数无上限 + */ + Long NO_LIMIT_COUNT = -1L; + } diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java new file mode 100644 index 0000000..d001411 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/dto/TeamCategoryDTO.java @@ -0,0 +1,63 @@ +package cn.axzo.orgmanax.dto.project.team.dto; + +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 经营范围DTO + */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +public class TeamCategoryDTO { + /** + * 邀请id/申请id + */ + private Long inviteId; + /** + * 班组id + */ + private Long projectTeamId; + /** + * 经营范围code + */ + private String categoryCode; + /** + * 经营范围名称 + */ + private String categoryName; + + /** + * 父级经营范围code + */ + private String parentCategoryCode; + + /** + * 父级经营范围name + */ + private String parentCategoryName; + + private Integer type; + + private Integer valid; + /** + * 经营范围子级 + */ + private List workScopes; + + public TeamCategoryDTO(String categoryCode, String categoryName) { + this.categoryCode = categoryCode; + this.categoryName = categoryName; + } + + public TeamCategoryDTO(Long inviteId, Long projectTeamId, String categoryCode, String categoryName) { + this.inviteId = inviteId; + this.projectTeamId = projectTeamId; + this.categoryCode = categoryCode; + this.categoryName = categoryName; + } +} diff --git a/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/resp/TeamCategoryResp.java b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/resp/TeamCategoryResp.java new file mode 100644 index 0000000..6d0cd42 --- /dev/null +++ b/orgmanax-dto/src/main/java/cn/axzo/orgmanax/dto/project/team/resp/TeamCategoryResp.java @@ -0,0 +1,29 @@ +package cn.axzo.orgmanax.dto.project.team.resp; + +import cn.axzo.orgmanax.dto.project.team.dto.TeamCategoryDTO; +import java.util.List; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @author syl + * @date 2024/12/18 + */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +public class TeamCategoryResp { + + /** + * 班组id + */ + private Long projectTeamId; + + /** + * 经营范围列表 + */ + private List categoryList; +}