Merge remote-tracking branch 'origin/feature/REQ-3488' into feature/REQ-3488-zhh

This commit is contained in:
zhanghonghao 2025-01-08 16:59:30 +08:00
commit 6dcdcba555
41 changed files with 268 additions and 70 deletions

View File

@ -8,6 +8,6 @@ import org.springframework.context.annotation.Configuration;
* @date 2022/4/25 10:48 * @date 2022/4/25 10:48
*/ */
@Configuration @Configuration
@EnableFeignClients(basePackages = "cn.axzo.orgmanax.api.**.feign") @EnableFeignClients(basePackages = "cn.axzo.orgmanax.api.project.worker.feign")
public class OrgmanaxApiConfig { public class OrgmanaxApiConfig {
} }

View File

@ -43,6 +43,6 @@ public interface OrgUserApi {
* @return 通用人员列表 * @return 通用人员列表
*/ */
@PostMapping(value = "/api/org-user/generic/page") @PostMapping(value = "/api/org-user/generic/page")
ApiResult<PageResp<PageOrgUserElementResp>> page(@RequestBody @Valid PageOrgUserReq req); ApiResult<PageResp<PageOrgUserElementResp>> genericPage(@RequestBody @Valid PageOrgUserReq req);
} }

View File

@ -1,9 +1,9 @@
package cn.axzo.orgmanax.api.projectgroup.feign; package cn.axzo.orgmanax.api.project.group.feign;
import cn.axzo.foundation.page.PageResp; import cn.axzo.foundation.page.PageResp;
import cn.axzo.foundation.result.ApiResult; import cn.axzo.foundation.result.ApiResult;
import cn.axzo.orgmanax.dto.projectgroup.req.*; import cn.axzo.orgmanax.dto.project.group.req.*;
import cn.axzo.orgmanax.dto.projectgroup.resp.*; import cn.axzo.orgmanax.dto.project.group.resp.*;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -78,29 +78,6 @@ public interface OrgProjectGroupApi {
// @PostMapping("/api/project-group/group/list") // @PostMapping("/api/project-group/group/list")
// ApiResult<List<ProjectTeamGroupListResp>> groupList(@RequestBody ProjectTeamGroupListReq req); // ApiResult<List<ProjectTeamGroupListResp>> groupList(@RequestBody ProjectTeamGroupListReq req);
/**
* 未分组工人
*
* @param req req
* @author: wxf
* @date: 2022/11/30 11:40
* @return:
* REQ-1483
**/
@PostMapping("api/ungrouped/worker")
ApiResult<List<ProjectDirectGroupUngroupedWorkerResp>> ungroupedWorker(@RequestBody @Valid ProjectDirectGroupUngroupedWorkerReq req);
/**
* 直属小组工人
*
* @param req req
* @author: wxf
* @date: 2022/11/30 14:04
* @return:
**/
@PostMapping("api/direct-group/worker")
ApiResult<List<ProjectDirectGroupWorkerListResp>> workerList(@RequestBody @Valid ProjectDirectGroupWorkerListReq req);
/** /**
* 小组长权限 * 小组长权限
* *

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.api.projectworker.enums; package cn.axzo.orgmanax.api.project.worker.enums;
import lombok.Getter; import lombok.Getter;

View File

@ -0,0 +1,45 @@
package cn.axzo.orgmanax.api.project.worker.feign;
import cn.axzo.foundation.result.ApiResult;
import cn.axzo.orgmanax.dto.project.group.req.ProjectDirectGroupUngroupedWorkerReq;
import cn.axzo.orgmanax.dto.project.group.req.ProjectDirectGroupWorkerListReq;
import cn.axzo.orgmanax.dto.project.group.resp.ProjectDirectGroupUngroupedWorkerResp;
import cn.axzo.orgmanax.dto.project.group.resp.ProjectDirectGroupWorkerListResp;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import javax.validation.Valid;
import java.util.List;
/**
* @author zhanghongbo
* @date 2025/1/8
*/
@FeignClient(
value = "orgmanax",
url = "${axzo.service.orgmanax:http://orgmanax:8080}")
public interface OrgProjectWorkerApi {
/**
* 未分组工人
*
* @param req req
* @author: wxf
* @date: 2022/11/30 11:40
* @return:
* REQ-1483
**/
@PostMapping("api/project-worker/ungrouped/worker")
ApiResult<List<ProjectDirectGroupUngroupedWorkerResp>> ungroupedWorker(@RequestBody @Valid ProjectDirectGroupUngroupedWorkerReq req);
/**
* 直属小组工人
*
* @param req req
* @author: wxf
* @date: 2022/11/30 14:04
* @return:
**/
@PostMapping("api/project-worker/direct-group/worker")
ApiResult<List<ProjectDirectGroupWorkerListResp>> workerList(@RequestBody @Valid ProjectDirectGroupWorkerListReq req);
}

View File

@ -4,9 +4,12 @@ import cn.axzo.orgmanax.dto.common.PersonProfileBriefDTO;
import cn.axzo.orgmanax.dto.common.WorkspaceBriefDTO; import cn.axzo.orgmanax.dto.common.WorkspaceBriefDTO;
import cn.axzo.orgmanax.dto.cooperateship.dto.OrgCooperateShipDTO; import cn.axzo.orgmanax.dto.cooperateship.dto.OrgCooperateShipDTO;
import cn.axzo.orgmanax.dto.job.dto.OrgJobBriefDTO; import cn.axzo.orgmanax.dto.job.dto.OrgJobBriefDTO;
import cn.axzo.orgmanax.dto.node.dto.NodeProfile;
import cn.axzo.orgmanax.dto.node.dto.OrgNodeBriefDTO; import cn.axzo.orgmanax.dto.node.dto.OrgNodeBriefDTO;
import cn.axzo.orgmanax.dto.node.enums.NodeTypeEnum;
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq; import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
import cn.axzo.orgmanax.dto.unit.dto.OrgUnitBriefDTO; import cn.axzo.orgmanax.dto.unit.dto.OrgUnitBriefDTO;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
@ -216,4 +219,29 @@ public class NodeUserDTO implements Serializable {
} }
return (T) Optional.ofNullable(profile).map(p -> JSONObject.parseObject(p.toString(), clazz)).orElse(null); return (T) Optional.ofNullable(profile).map(p -> JSONObject.parseObject(p.toString(), clazz)).orElse(null);
} }
public Long getProjectWorkerId() {
if (ObjectUtil.isEmpty(profile)) {
return null;
}
return profile.getLong("projectWorkerId");
}
public Long getProjectTeamId() {
if (node == null || node.getNodeType() == null) {
return null;
}
Integer nodeType = node.getNodeType();
if (nodeType.equals(NodeTypeEnum.PROJECT_TEAM.getValue())) {
//项目班组
NodeProfile.ProjectTeamProfile projectTeamProfile = node.resolveProfile();
return Optional.ofNullable(projectTeamProfile).orElse(new NodeProfile.ProjectTeamProfile()).getProjectTeamId();
}
if (nodeType.equals(NodeTypeEnum.PROJECT_GROUP.getValue())) {
//项目小组
NodeProfile.ProjectGroupProfile projectGroupProfile = node.resolveProfile();
return Optional.ofNullable(projectGroupProfile).orElse(new NodeProfile.ProjectGroupProfile()).getBelongProjectTeamId();
}
return null;
}
} }

View File

@ -83,15 +83,44 @@ public class NodeUserProfile {
*/ */
public static class ProjectGroupWorkerProfile { public static class ProjectGroupWorkerProfile {
// 新冗余字段
/** /**
* 项目小组人员id * 项目小组人员主键id
*/ */
private Long projectGroupWorkerId; private Long projectGroupWorkerId;
/** /**
* 状态 状态 0-有效 1-无效 * 状态 状态 0-有效 1-无效
*/ */
private Integer status; private Integer status;
//
// /**
// * 所属的项目内班组id
// */
// private Long belongProjectTeamId;
//
// /**
// * (合作小组才有)原项目内班组id
// */
// private Long sourceProjectTeamId;
// /**
// * 小组id
// */
// private Long projectGroupId;
/**
* 项目内工人id
*/
private Long projectWorkerId;
// /**
// * 小组类型 0-直属小组 1-合作小组
// */
// private Integer groupType;
/**
* 是否删除 0: 其他删除
*/
private Long isDelete;
} }
private static final Map<Integer, Class<?>> typeClassMapping = ImmutableMap.of( private static final Map<Integer, Class<?>> typeClassMapping = ImmutableMap.of(

View File

@ -208,7 +208,7 @@ public class ListNodeUserReq extends PageReqV2 {
private String keyword; private String keyword;
/** /**
* 状态1未激活 2已激活 3施工中 4已退场 * 状态1未激活 2已激活 3施工中 4已退场
* @see cn.axzo.orgmanax.api.projectworker.enums.ProjectWorkerStatusEnum * @see cn.axzo.orgmanax.api.project.worker.enums.ProjectWorkerStatusEnum
*/ */
private Collection<Integer> projectWorkerStatuses; private Collection<Integer> projectWorkerStatuses;
/** /**
@ -307,6 +307,8 @@ public class ListNodeUserReq extends PageReqV2 {
*/ */
private DistinctRule distinctRule; private DistinctRule distinctRule;
//
// 指定聚合信息 // 指定聚合信息
/** /**
* 聚合信息needs * 聚合信息needs

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.enums; package cn.axzo.orgmanax.dto.project.group.enums;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Getter; import lombok.Getter;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import cn.axzo.foundation.page.PageReqV2; import cn.axzo.foundation.page.PageReqV2;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import cn.axzo.foundation.page.PageReqV2; import cn.axzo.foundation.page.PageReqV2;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import cn.axzo.foundation.page.PageReqV2; import cn.axzo.foundation.page.PageReqV2;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import cn.axzo.foundation.page.PageReqV2; import cn.axzo.foundation.page.PageReqV2;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.req; package cn.axzo.orgmanax.dto.project.group.req;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;

View File

@ -1,6 +1,6 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import cn.axzo.orgmanax.dto.projectgroup.enums.ProjectGroupOwnerPermissionEnum; import cn.axzo.orgmanax.dto.project.group.enums.ProjectGroupOwnerPermissionEnum;
import lombok.Data; import lombok.Data;
import java.util.List; import java.util.List;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import cn.axzo.orgmanax.dto.project.team.dto.TeamCategoryAggregateDTO; import cn.axzo.orgmanax.dto.project.team.dto.TeamCategoryAggregateDTO;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.Data; import lombok.Data;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;

View File

@ -1,4 +1,4 @@
package cn.axzo.orgmanax.dto.projectgroup.resp; package cn.axzo.orgmanax.dto.project.group.resp;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;

View File

@ -269,11 +269,6 @@ public class NodeUserServiceImpl implements NodeUserService {
return listReq; return listReq;
} }
@Override
public List<SearchEntNodeUserResp> searchEntUser(SearchEntNodeUserReq req) {
return nodeUserFoundationService.searchEntUser(req);
}
/** /**
* 处理 findBy 查询通过查询结果再次查询的情况 findByTopNodeId findByAncestorNodeId * 处理 findBy 查询通过查询结果再次查询的情况 findByTopNodeId findByAncestorNodeId
* *
@ -321,6 +316,11 @@ public class NodeUserServiceImpl implements NodeUserService {
return nodeUserQueryRepository.page(findByReq); return nodeUserQueryRepository.page(findByReq);
} }
@Override
public List<SearchEntNodeUserResp> searchEntUser(SearchEntNodeUserReq req) {
return nodeUserFoundationService.searchEntUser(req);
}
private void assemble(ListNodeUserReq req, List<NodeUserDTO> records) { private void assemble(ListNodeUserReq req, List<NodeUserDTO> records) {
assembleUnit(req, records); assembleUnit(req, records);
assembleJob(req, records); assembleJob(req, records);

View File

@ -29,7 +29,7 @@ public class OrgUserController implements OrgUserApi {
} }
@Override @Override
public ApiResult<PageResp<PageOrgUserElementResp>> page(PageOrgUserReq req) { public ApiResult<PageResp<PageOrgUserElementResp>> genericPage(PageOrgUserReq req) {
return ApiResult.success(); return ApiResult.success();
} }
} }

View File

@ -0,0 +1,38 @@
package cn.axzo.orgmanax.server.projectworker.controller;
import cn.axzo.foundation.result.ApiResult;
import cn.axzo.orgmanax.api.project.worker.feign.OrgProjectWorkerApi;
import cn.axzo.orgmanax.dto.project.group.req.ProjectDirectGroupUngroupedWorkerReq;
import cn.axzo.orgmanax.dto.project.group.req.ProjectDirectGroupWorkerListReq;
import cn.axzo.orgmanax.dto.project.group.resp.ProjectDirectGroupUngroupedWorkerResp;
import cn.axzo.orgmanax.dto.project.group.resp.ProjectDirectGroupWorkerListResp;
import cn.axzo.orgmanax.server.projectworker.service.OrgProjectWorkerService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.List;
/**
* @author zhanghongbo
* @date 2025/1/8
*/
@RestController
@Slf4j
@AllArgsConstructor
public class OrgProjectWorkerController implements OrgProjectWorkerApi {
private OrgProjectWorkerService orgProjectWorkerService;
@Override
public ApiResult<List<ProjectDirectGroupUngroupedWorkerResp>> ungroupedWorker(@Valid ProjectDirectGroupUngroupedWorkerReq req) {
orgProjectWorkerService.ungroupedWorker(req);
return null;
}
@Override
public ApiResult<List<ProjectDirectGroupWorkerListResp>> workerList(@Valid ProjectDirectGroupWorkerListReq req) {
return null;
}
}

View File

@ -0,0 +1,14 @@
package cn.axzo.orgmanax.server.projectworker.service;
import cn.axzo.orgmanax.dto.project.group.req.ProjectDirectGroupUngroupedWorkerReq;
import cn.axzo.orgmanax.dto.project.group.resp.ProjectDirectGroupUngroupedWorkerResp;
import java.util.List;
/**
* @author zhanghongbo
* @date 2025/1/8
*/
public interface OrgProjectWorkerService {
List<ProjectDirectGroupUngroupedWorkerResp> ungroupedWorker(ProjectDirectGroupUngroupedWorkerReq req);
}

View File

@ -0,0 +1,68 @@
package cn.axzo.orgmanax.server.projectworker.service.impl;
import cn.axzo.orgmanax.api.project.worker.enums.ProjectWorkerStatusEnum;
import cn.axzo.orgmanax.dto.common.IdentityType;
import cn.axzo.orgmanax.dto.node.req.ListNodeReq;
import cn.axzo.orgmanax.dto.nodeuser.dto.NodeUserDTO;
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
import cn.axzo.orgmanax.dto.project.group.req.ProjectDirectGroupUngroupedWorkerReq;
import cn.axzo.orgmanax.dto.project.group.resp.ProjectDirectGroupUngroupedWorkerResp;
import cn.axzo.orgmanax.server.node.service.NodeService;
import cn.axzo.orgmanax.server.nodeuser.service.NodeUserService;
import cn.axzo.orgmanax.server.projectworker.service.OrgProjectWorkerService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author zhanghongbo
* @date 2025/1/8
*/
@Service
@Slf4j
@AllArgsConstructor
public class OrgProjectWorkerServiceImpl implements OrgProjectWorkerService {
private NodeUserService nodeUserService;
private NodeService nodeService;
@Override
public List<ProjectDirectGroupUngroupedWorkerResp> ungroupedWorker(ProjectDirectGroupUngroupedWorkerReq req) {
// //查询班组下工人
// List<NodeUserDTO> nodeUserDTOS4Team = nodeUserService.list(ListNodeUserReq.builder()
// .workspaceId(req.getWorkspaceId())
// .platTeamId(req.getPlatTeamId())
// .identityType(IdentityType.WORKER.getCode())
// .projectWorkerStatuses(Lists.newArrayList(ProjectWorkerStatusEnum.INACTIVE.getValue(), ProjectWorkerStatusEnum.ACTIVE.getValue()))
// .build());
// if (ObjectUtil.isEmpty(nodeUserDTOS4Team)) {
// return Collections.emptyList();
// }
//
// //查询班组下的直属小组工人
// nodeService.list(ListNodeReq.builder()
// .platTeamIds(Sets.newHashSet(req.getPlatTeamId()))
// .workspaceIds(Sets.newHashSet(req.getWorkspaceId()))
// .groupType(ProjectGroupTypeEnum.DIRECTLY_UNDER.getValue())
// .build());
//
//
// List<NodeUserDTO> nodeUserDTOS = nodeUserService.list(ListNodeUserReq.builder()
// .workspaceId(req.getWorkspaceId())
// .platTeamId(req.getPlatTeamId())
// .projectWorkerStatuses(Lists.newArrayList(ProjectWorkerStatusEnum.INACTIVE.getValue(), ProjectWorkerStatusEnum.ACTIVE.getValue()))
// .build());
return null;
}
}

View File

@ -1,11 +1,8 @@
package cn.axzo.orgmanax.server.workerprofession.service.impl; package cn.axzo.orgmanax.server.workerprofession.service.impl;
import cn.axzo.orgmanax.dto.workerprofession.dto.ProjectWorkerProfessionDTO; import cn.axzo.orgmanax.dto.workerprofession.dto.ProjectWorkerProfessionDTO;
import com.google.common.collect.Maps;
import cn.axzo.foundation.dao.support.mysql.MybatisPlusOperatorProcessor;
import cn.axzo.foundation.dao.support.wrapper.Operator;
import cn.axzo.foundation.page.PageResp; import cn.axzo.foundation.page.PageResp;
import cn.axzo.orgmanax.api.projectworker.enums.ProjectWorkerStatusEnum; import cn.axzo.orgmanax.api.project.worker.enums.ProjectWorkerStatusEnum;
import cn.axzo.orgmanax.dto.common.IdentityType; import cn.axzo.orgmanax.dto.common.IdentityType;
import cn.axzo.orgmanax.dto.common.util.NumberUtil; import cn.axzo.orgmanax.dto.common.util.NumberUtil;
import cn.axzo.orgmanax.dto.common.util.TreeUtil; import cn.axzo.orgmanax.dto.common.util.TreeUtil;