feat(REQ-3282): 增加apollo调用相关
This commit is contained in:
parent
3f72843c79
commit
90937eeb8d
@ -1,11 +1,12 @@
|
|||||||
package cn.axzo.orgmanax.infra.client.apollo;
|
package cn.axzo.orgmanax.infra.client.apollo;
|
||||||
|
|
||||||
import cn.axzo.orgmanax.infra.client.apollo.dto.CheckProjectTeamWorkerIsFinishGroupTaskResp;
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloCheckProjectTeamWorkerIsFinishGroupTaskResp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloGetUnFinishGroupTaskByIdResp;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* apollo 服务调用
|
* apollo 小组任务单相关
|
||||||
*/
|
*/
|
||||||
public interface ApolloGroupTaskOrderClient {
|
public interface ApolloGroupTaskOrderClient {
|
||||||
|
|
||||||
@ -13,6 +14,14 @@ public interface ApolloGroupTaskOrderClient {
|
|||||||
* 查询项目内班组下 某一批工人是否有未完成直属小组任务单
|
* 查询项目内班组下 某一批工人是否有未完成直属小组任务单
|
||||||
* @return 任务单详情
|
* @return 任务单详情
|
||||||
*/
|
*/
|
||||||
List<CheckProjectTeamWorkerIsFinishGroupTaskResp> checkProjectTeamWorkerIsFinishGroupTask(Long projectTeamId, List<Long> workerIds);
|
List<ApolloCheckProjectTeamWorkerIsFinishGroupTaskResp> checkProjectTeamWorkerIsFinishGroupTask(Long projectTeamId, List<Long> workerIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据直属小组id查询未完成的任务单
|
||||||
|
*
|
||||||
|
* @param groupId 小组id
|
||||||
|
* @return 任务单详情
|
||||||
|
*/
|
||||||
|
List<ApolloGetUnFinishGroupTaskByIdResp> getUnFinishGroupTaskById(Long groupId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,31 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo;
|
||||||
|
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloGetTaskProcessingDetailByAfterTimeReq;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloGetTaskProcessingDetailByAfterTimeResp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloQueryEffectiveProjectTaskOrderReq;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloQueryEffectiveProjectTaskOrderResp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.common.dto.PageResult;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* apollo 任务单相关
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/10
|
||||||
|
*/
|
||||||
|
public interface ApolloTaskOrderClient {
|
||||||
|
/**
|
||||||
|
* 查询项目内生效的任务单
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloQueryEffectiveProjectTaskOrderResp> queryEffectiveProjectTaskOrder(ApolloQueryEffectiveProjectTaskOrderReq req);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询某个时间段 以后的任务单,供 基础那边使用, 他们定了 type 类型 2,4 还有订单的状态(完成) 全量的数据,没有区分 workspaceId \ projectId
|
||||||
|
* 查询的是 TaskOrder 表,用 TaskProcessingDetail 类去接收
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
PageResult<ApolloGetTaskProcessingDetailByAfterTimeResp> getTaskProcessingDetailByAfterTime(ApolloGetTaskProcessingDetailByAfterTimeReq req);
|
||||||
|
}
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo;
|
||||||
|
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* apollo 任务单相关
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/10
|
||||||
|
*/
|
||||||
|
public interface ApolloTeamTaskOrderClient {
|
||||||
|
/**
|
||||||
|
* 获取项目内班组是否有未完结任务单
|
||||||
|
* @param workspaceId
|
||||||
|
* @param projectTeamIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloCheckProjectTeamTaskIsCompleteResp> checkProjectTeamTaskIsComplete(Long workspaceId, Set<Long> projectTeamIds);
|
||||||
|
}
|
||||||
@ -0,0 +1,73 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo;
|
||||||
|
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
public interface ApolloWorkerTaskOrderClient {
|
||||||
|
/**
|
||||||
|
* 通过班组id和工人id获取工人未完成的任务单数
|
||||||
|
* @param teamId
|
||||||
|
* @param workerId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloTaskOrderResp> listUnCompleteWorkerTaskOrder(Long teamId, Long workerId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id和工人id获取工人未完成的任务单数
|
||||||
|
* @param projectId
|
||||||
|
* @param projectTeamId
|
||||||
|
* @param workerId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloTaskOrderResp> listUnCompleteWorkerTaskOrderNew(Long projectId, Long projectTeamId, Long workerId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id和工人id获取工人未完成的任务单数-批量
|
||||||
|
* @param reqs
|
||||||
|
* @return 数量,已人作为key
|
||||||
|
*/
|
||||||
|
Map<Long,Long> batchUnCompleteWorker(List<ApolloBatchUnCompleteWorkerReq> reqs);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* workspaceId和工人ids查询是否有未完成任务单
|
||||||
|
* @param workspaceId
|
||||||
|
* @param workerIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloCheckWorkerTaskIsFinishResp> checkWorkerTaskIsFinish(Long workspaceId, List<Long> workerIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id获取班组未完成任务单数
|
||||||
|
* @param teamId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloTaskOrderResp> listUnCompleteTeamTaskOrder(Long teamId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过工人id和项目部id获取 未开始和施工中任务
|
||||||
|
* @param workspaceId
|
||||||
|
* @param workerId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloTaskOrderResp> listWorkerTaskByWorkerIdAndWorkspaceId(Long workspaceId, Long workerId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 撤销未派发工人任务单
|
||||||
|
* @param workspaceId
|
||||||
|
* @param workerId
|
||||||
|
*/
|
||||||
|
void cancelUnDistributeWorkerTask(Long workspaceId, Long workerId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取用户标签-用于清洗
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<ApolloGetPersonTagByCleanResp> getPersonTagByClean(ApolloGetPersonTagByCleanReq req);
|
||||||
|
}
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloBatchUnCompleteWorkerReq {
|
||||||
|
}
|
||||||
@ -0,0 +1,20 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloCheckProjectTeamTaskIsCompleteResp {
|
||||||
|
/**
|
||||||
|
* 项目内班组id
|
||||||
|
*/
|
||||||
|
private Long projectTeamId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否有未完成任务单 0否 1是
|
||||||
|
*/
|
||||||
|
private Integer isComplete;
|
||||||
|
}
|
||||||
@ -6,7 +6,7 @@ import lombok.Data;
|
|||||||
* 检查项目内班组下工人是否有未完成的直属小组单
|
* 检查项目内班组下工人是否有未完成的直属小组单
|
||||||
**/
|
**/
|
||||||
@Data
|
@Data
|
||||||
public class CheckProjectTeamWorkerIsFinishGroupTaskResp {
|
public class ApolloCheckProjectTeamWorkerIsFinishGroupTaskResp {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloCheckWorkerTaskIsFinishResp {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工人id
|
||||||
|
*/
|
||||||
|
private Long workerId;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否有未完成的任务单
|
||||||
|
*/
|
||||||
|
private Boolean isFinish = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 未完成任务的数量
|
||||||
|
*/
|
||||||
|
private Integer unFinishCount=0;
|
||||||
|
}
|
||||||
@ -0,0 +1,18 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import javax.validation.constraints.Size;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloGetPersonTagByCleanReq {
|
||||||
|
@Valid
|
||||||
|
@Size(max = 50)
|
||||||
|
List<ApolloWorkspaceAndPersonReq> personReqList;
|
||||||
|
}
|
||||||
@ -0,0 +1,51 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloGetPersonTagByCleanResp {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 服务名
|
||||||
|
*/
|
||||||
|
private String appCode;
|
||||||
|
/**
|
||||||
|
* 标签名
|
||||||
|
*/
|
||||||
|
private String tagName;
|
||||||
|
/**
|
||||||
|
* 标签code
|
||||||
|
*/
|
||||||
|
private String tagCode;
|
||||||
|
/**
|
||||||
|
* 操作类型 PersonTagTypeEnum(UPSERT,DELETE)
|
||||||
|
*/
|
||||||
|
private String type = "UPSERT";
|
||||||
|
/**
|
||||||
|
* 自然人id
|
||||||
|
*/
|
||||||
|
private Long personId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目部
|
||||||
|
*/
|
||||||
|
private Long workspaceId;
|
||||||
|
/**
|
||||||
|
* 单位id
|
||||||
|
*/
|
||||||
|
private Long organizationalUnitId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 部门节点id
|
||||||
|
*/
|
||||||
|
private Long organizationalNodeId;
|
||||||
|
/**
|
||||||
|
* 业务自定义属性值 json 类型
|
||||||
|
*/
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,40 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import cn.axzo.orgmanax.infra.client.common.dto.PageRequest;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloGetTaskProcessingDetailByAfterTimeReq extends PageRequest {
|
||||||
|
/**
|
||||||
|
* 任务单号 支持批量
|
||||||
|
*/
|
||||||
|
private List<String> taskNos;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 状态集合(必填)
|
||||||
|
* 任务单状态的枚举,可支持查询多个状态
|
||||||
|
*
|
||||||
|
* @see cn.axzo.apollo.distribute.enums.TaskOrderStatusEnum
|
||||||
|
*/
|
||||||
|
private List<Integer> status;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单类型(班组任务单、工人任务单、分包任务单) (必填)
|
||||||
|
* 类型: 1:分包任务单 2:班组任务单 3:任务小组任务单 4:工人任务单 5:合作小组任务单 6:直属小组任务单
|
||||||
|
*/
|
||||||
|
private List<Integer> types;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组经营范围 / 工人技能标签模糊查
|
||||||
|
*/
|
||||||
|
private Long teamCategoryCodeVague;
|
||||||
|
|
||||||
|
//创建时间createAt(范围查询)(起始时间必填结束时间非必填)
|
||||||
|
private Long timeBegin;
|
||||||
|
}
|
||||||
@ -0,0 +1,121 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.model.WorkerSkillLabelInfo;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloGetTaskProcessingDetailByAfterTimeResp {
|
||||||
|
/**
|
||||||
|
* id
|
||||||
|
*/
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单号
|
||||||
|
*/
|
||||||
|
private String taskNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 父级任务单号
|
||||||
|
*/
|
||||||
|
private String parentNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目部ID
|
||||||
|
*/
|
||||||
|
private Long workspaceId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单类型
|
||||||
|
*
|
||||||
|
* @see cn.axzo.apollo.distribute.enums.TaskOrderTypeEnum
|
||||||
|
*/
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单前置状态
|
||||||
|
*
|
||||||
|
* @see cn.axzo.apollo.distribute.enums.TaskOrderStatusEnum
|
||||||
|
*/
|
||||||
|
private Integer preStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单当前状态
|
||||||
|
*
|
||||||
|
* @see cn.axzo.apollo.distribute.enums.TaskOrderStatusEnum
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目ID
|
||||||
|
*/
|
||||||
|
private Long projectId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实际开始时间
|
||||||
|
*/
|
||||||
|
private Date actualStartDate;
|
||||||
|
/**
|
||||||
|
* 实际结束时间
|
||||||
|
*/
|
||||||
|
private Date actualEndDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 完成时间
|
||||||
|
*/
|
||||||
|
private Date completedAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新时间
|
||||||
|
*/
|
||||||
|
private Date updateAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否逻辑删除(空: 未删除 0:未删除,1:已删除)
|
||||||
|
*/
|
||||||
|
private Long isDelete;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 扩展json字段
|
||||||
|
*/
|
||||||
|
private String expendJson;
|
||||||
|
|
||||||
|
//------------------------------------------------------------------------------------//
|
||||||
|
//以下字段是 REQ-2488 新加的
|
||||||
|
/**
|
||||||
|
* 班组长类别code
|
||||||
|
*/
|
||||||
|
private String teamCategoryCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组类别name
|
||||||
|
*/
|
||||||
|
private String teamCategoryName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 匹配上的工人的技能
|
||||||
|
*/
|
||||||
|
private List<WorkerSkillLabelInfo> workerSkillInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目内班组id
|
||||||
|
*/
|
||||||
|
private Long projectTeamId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收人id
|
||||||
|
*/
|
||||||
|
private Long recipientId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收人personId
|
||||||
|
*/
|
||||||
|
private Long recipientPersonId;
|
||||||
|
}
|
||||||
@ -0,0 +1,257 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据直属小组id查询未完成的任务单
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/10
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloGetUnFinishGroupTaskByIdResp {
|
||||||
|
/**
|
||||||
|
* 任务单号
|
||||||
|
*/
|
||||||
|
private String taskNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 父级任务单号
|
||||||
|
*/
|
||||||
|
private String parentNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目工作台id
|
||||||
|
*/
|
||||||
|
private Long workspaceId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目id
|
||||||
|
*/
|
||||||
|
private Long projectId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 施工区域id
|
||||||
|
*/
|
||||||
|
private Long constructionAreaId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发类型: 1、合同内 2、合同外
|
||||||
|
*/
|
||||||
|
private Integer distributeType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 协助拆分状态 0:未协助,1:已协助
|
||||||
|
*/
|
||||||
|
private Integer assistStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 末级任务项md值
|
||||||
|
*/
|
||||||
|
private String finalTaskMd5Key;
|
||||||
|
/**
|
||||||
|
* 任务单名称
|
||||||
|
*/
|
||||||
|
private String orderName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务名称
|
||||||
|
*/
|
||||||
|
private String taskName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划开始日期
|
||||||
|
*/
|
||||||
|
private Date expectStartDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划结束日期
|
||||||
|
*/
|
||||||
|
private Date expectEndDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发号(派工单号)用户层展示
|
||||||
|
*/
|
||||||
|
private String distributeCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发时间
|
||||||
|
*/
|
||||||
|
private Date distributeTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 完成时间
|
||||||
|
*/
|
||||||
|
private Date completedAt;
|
||||||
|
/**
|
||||||
|
* 项目名称
|
||||||
|
*/
|
||||||
|
private String projectName;
|
||||||
|
/**
|
||||||
|
* 实际任务开始时间
|
||||||
|
*/
|
||||||
|
private Date actualStartDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实际任务结束时间
|
||||||
|
*/
|
||||||
|
private Date actualEndDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类型: 1:分包派工单 2:班组派工单 3:小组派工单 4:工人派工单
|
||||||
|
*/
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务状态 0、初始化(不展示) 1、待完善 2、待派发 3、已派发 10、待接收 11、待分发 12、待施工 13、施工中 14、待验收 15、已完成 16、已撤销 17、提前终止
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 任务单状态描述
|
||||||
|
*/
|
||||||
|
private String statusDesc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审批状态: 0、初始化 1、审批中 2、审批通过 3、审批拒绝 4、撤销
|
||||||
|
*/
|
||||||
|
private Integer approvalStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审批拒绝原因
|
||||||
|
*/
|
||||||
|
private String rejectReason;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发组织id(总包id,分包id,班组id)
|
||||||
|
*/
|
||||||
|
private Long distributorOrganizationId;
|
||||||
|
/**
|
||||||
|
* 派发组织节点ID(组织节点ID)
|
||||||
|
*/
|
||||||
|
private Long distributorOrgNodeId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发组织类型 1:总包 2:劳务分包 3:专业分包 4:班组
|
||||||
|
*/
|
||||||
|
private Integer distributorOrganizationType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收组织id (分包id,班组id,工人id)
|
||||||
|
*/
|
||||||
|
private Long recipientOrganizationId;
|
||||||
|
/**
|
||||||
|
* 接收组织节点ID (组织节点ID,工人id)
|
||||||
|
*/
|
||||||
|
private Long recipientOrgNodeId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收者类型 1:劳务分包 2:专业分包 3:班组 4:工人
|
||||||
|
*/
|
||||||
|
private Integer recipientOrganizationType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发人id
|
||||||
|
*/
|
||||||
|
private Long distributorId;
|
||||||
|
/**
|
||||||
|
* 派发人id
|
||||||
|
*/
|
||||||
|
private Long distributorPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发人类型 1:总包从业人员 2:分包从业人员 3:班组长 4:工人
|
||||||
|
*/
|
||||||
|
private Integer distributorType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收人id
|
||||||
|
*/
|
||||||
|
private Long recipientId;
|
||||||
|
/**
|
||||||
|
* 接收人id
|
||||||
|
*/
|
||||||
|
private Long recipientPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收人类型 1:总包从业人员 2:分包从业人员 3:班组长 4:工人
|
||||||
|
*/
|
||||||
|
private Integer recipientType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 版本号 0老版本
|
||||||
|
*/
|
||||||
|
private Integer version;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目内班组id
|
||||||
|
*/
|
||||||
|
private Long projectTeamId;
|
||||||
|
/**
|
||||||
|
* 班组长姓名(冗余)
|
||||||
|
*/
|
||||||
|
private String teamOwnerName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组长手机号(冗余)
|
||||||
|
*/
|
||||||
|
private Integer teamOwnerPhone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组长类别code(冗余)
|
||||||
|
*/
|
||||||
|
private String teamCategoryCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组类别name(冗余)
|
||||||
|
*/
|
||||||
|
private String teamCategoryName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务树模板(冗余)
|
||||||
|
*/
|
||||||
|
private Long taskTreeTempId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属公司名称(冗余)
|
||||||
|
*/
|
||||||
|
private String entName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建者身份id
|
||||||
|
*/
|
||||||
|
//private Long creatorId;
|
||||||
|
/**
|
||||||
|
* 创建者id
|
||||||
|
*/
|
||||||
|
private Long creatorPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新者身份id
|
||||||
|
*/
|
||||||
|
//private Long updaterId;
|
||||||
|
/**
|
||||||
|
* 更新者id
|
||||||
|
*/
|
||||||
|
private Long updaterPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
*/
|
||||||
|
private Date createAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新时间
|
||||||
|
*/
|
||||||
|
private Date updateAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否逻辑删除(0:未删除,1:已删除)
|
||||||
|
*/
|
||||||
|
private Long isDelete;
|
||||||
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/10
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloQueryEffectiveProjectTaskOrderReq {
|
||||||
|
/**
|
||||||
|
* 班组类别/工人工种
|
||||||
|
*/
|
||||||
|
@NotEmpty(message = "班组类别/工人工种不能为空")
|
||||||
|
private Set<String> categoryCodes;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单类型 2班组任务单(包含合作小组任务单) 4工人任务单
|
||||||
|
*/
|
||||||
|
@NotNull(message = "任务单类型不能为空")
|
||||||
|
private Integer taskOrderType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收组织id(项目内班组id,工人id)
|
||||||
|
*/
|
||||||
|
@NotNull(message = "接收组织id不能为空")
|
||||||
|
private Long recipientOrganizationId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目部id
|
||||||
|
*/
|
||||||
|
@NotNull(message = "项目部id不能为空")
|
||||||
|
private Long workspaceId;
|
||||||
|
}
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/10
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloQueryEffectiveProjectTaskOrderResp {
|
||||||
|
/**
|
||||||
|
* 任务单号
|
||||||
|
*/
|
||||||
|
private String taskNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目部名称
|
||||||
|
*/
|
||||||
|
private String workspaceName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工人名称
|
||||||
|
*/
|
||||||
|
private String workerName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单名称
|
||||||
|
*/
|
||||||
|
private String taskOrderName;
|
||||||
|
/**
|
||||||
|
* 工种ID
|
||||||
|
*/
|
||||||
|
private String professionIds;
|
||||||
|
/**
|
||||||
|
* 工种名称
|
||||||
|
*/
|
||||||
|
private String professionNames;
|
||||||
|
}
|
||||||
@ -0,0 +1,257 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloTaskOrderResp {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单号
|
||||||
|
*/
|
||||||
|
private String taskNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 父级任务单号
|
||||||
|
*/
|
||||||
|
private String parentNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目工作台id
|
||||||
|
*/
|
||||||
|
private Long workspaceId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目id
|
||||||
|
*/
|
||||||
|
private Long projectId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 施工区域id
|
||||||
|
*/
|
||||||
|
private Long constructionAreaId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发类型: 1、合同内 2、合同外
|
||||||
|
*/
|
||||||
|
private Integer distributeType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 协助拆分状态 0:未协助,1:已协助
|
||||||
|
*/
|
||||||
|
private Integer assistStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 末级任务项md值
|
||||||
|
*/
|
||||||
|
private String finalTaskMd5Key;
|
||||||
|
/**
|
||||||
|
* 任务单名称
|
||||||
|
*/
|
||||||
|
private String orderName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务名称
|
||||||
|
*/
|
||||||
|
private String taskName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划开始日期
|
||||||
|
*/
|
||||||
|
private Date expectStartDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务计划结束日期
|
||||||
|
*/
|
||||||
|
private Date expectEndDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发号(派工单号)用户层展示
|
||||||
|
*/
|
||||||
|
private String distributeCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发时间
|
||||||
|
*/
|
||||||
|
private Date distributeTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 完成时间
|
||||||
|
*/
|
||||||
|
private Date completedAt;
|
||||||
|
/**
|
||||||
|
* 项目名称
|
||||||
|
*/
|
||||||
|
private String projectName;
|
||||||
|
/**
|
||||||
|
* 实际任务开始时间
|
||||||
|
*/
|
||||||
|
private Date actualStartDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实际任务结束时间
|
||||||
|
*/
|
||||||
|
private Date actualEndDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 类型: 1:分包派工单 2:班组派工单 3:小组派工单 4:工人派工单
|
||||||
|
*/
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务状态 0、初始化(不展示) 1、待完善 2、待派发 3、已派发 10、待接收 11、待分发 12、待施工 13、施工中 14、待验收 15、已完成 16、已撤销 17、提前终止
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 任务单状态描述
|
||||||
|
*/
|
||||||
|
private String statusDesc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审批状态: 0、初始化 1、审批中 2、审批通过 3、审批拒绝 4、撤销
|
||||||
|
*/
|
||||||
|
private Integer approvalStatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审批拒绝原因
|
||||||
|
*/
|
||||||
|
private String rejectReason;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发组织id(总包id,分包id,班组id)
|
||||||
|
*/
|
||||||
|
private Long distributorOrganizationId;
|
||||||
|
/**
|
||||||
|
* 派发组织节点ID(组织节点ID)
|
||||||
|
*/
|
||||||
|
private Long distributorOrgNodeId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发组织类型 1:总包 2:劳务分包 3:专业分包 4:班组
|
||||||
|
*/
|
||||||
|
private Integer distributorOrganizationType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收组织id (分包id,班组id,工人id)
|
||||||
|
*/
|
||||||
|
private Long recipientOrganizationId;
|
||||||
|
/**
|
||||||
|
* 接收组织节点ID (组织节点ID,工人id)
|
||||||
|
*/
|
||||||
|
private Long recipientOrgNodeId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收者类型 1:劳务分包 2:专业分包 3:班组 4:工人
|
||||||
|
*/
|
||||||
|
private Integer recipientOrganizationType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发人id
|
||||||
|
*/
|
||||||
|
private Long distributorId;
|
||||||
|
/**
|
||||||
|
* 派发人id
|
||||||
|
*/
|
||||||
|
private Long distributorPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 派发人类型 1:总包从业人员 2:分包从业人员 3:班组长 4:工人
|
||||||
|
*/
|
||||||
|
private Integer distributorType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收人id
|
||||||
|
*/
|
||||||
|
private Long recipientId;
|
||||||
|
/**
|
||||||
|
* 接收人id
|
||||||
|
*/
|
||||||
|
private Long recipientPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接收人类型 1:总包从业人员 2:分包从业人员 3:班组长 4:工人
|
||||||
|
*/
|
||||||
|
private Integer recipientType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 版本号 0老版本
|
||||||
|
*/
|
||||||
|
private Integer version;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目内班组id
|
||||||
|
*/
|
||||||
|
private Long projectTeamId;
|
||||||
|
/**
|
||||||
|
* 班组长姓名(冗余)
|
||||||
|
*/
|
||||||
|
private String teamOwnerName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组长手机号(冗余)
|
||||||
|
*/
|
||||||
|
private Integer teamOwnerPhone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组长类别code(冗余)
|
||||||
|
*/
|
||||||
|
private String teamCategoryCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 班组类别name(冗余)
|
||||||
|
*/
|
||||||
|
private String teamCategoryName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务树模板(冗余)
|
||||||
|
*/
|
||||||
|
private Long taskTreeTempId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属公司名称(冗余)
|
||||||
|
*/
|
||||||
|
private String entName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建者身份id
|
||||||
|
*/
|
||||||
|
//private Long creatorId;
|
||||||
|
/**
|
||||||
|
* 创建者id
|
||||||
|
*/
|
||||||
|
private Long creatorPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新者身份id
|
||||||
|
*/
|
||||||
|
//private Long updaterId;
|
||||||
|
/**
|
||||||
|
* 更新者id
|
||||||
|
*/
|
||||||
|
private Long updaterPersonId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
*/
|
||||||
|
private Date createAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新时间
|
||||||
|
*/
|
||||||
|
private Date updateAt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否逻辑删除(0:未删除,1:已删除)
|
||||||
|
*/
|
||||||
|
private Long isDelete;
|
||||||
|
}
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import javax.validation.constraints.Min;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ApolloWorkspaceAndPersonReq {
|
||||||
|
@NotNull(message = "项目部Id不能为空")
|
||||||
|
@Min(1)
|
||||||
|
private Long workspaceId;
|
||||||
|
|
||||||
|
|
||||||
|
@NotNull(message = "工人personId不能为空")
|
||||||
|
@Min(1)
|
||||||
|
private Long personId;
|
||||||
|
}
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.apollo.dto.model;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WorkerSkillLabelInfo {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 技能标签code
|
||||||
|
* 如果使用技能匹配就返回技能code
|
||||||
|
* 如果使用工种匹配就返回工种ID
|
||||||
|
*/
|
||||||
|
private String skillCode;
|
||||||
|
|
||||||
|
private String parentCode;
|
||||||
|
/**
|
||||||
|
* 工种ID
|
||||||
|
* v2有用,v1没有使用
|
||||||
|
*/
|
||||||
|
private Long professionId;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工种名称
|
||||||
|
*/
|
||||||
|
private String professionName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 技能标签name
|
||||||
|
*/
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 下级
|
||||||
|
*/
|
||||||
|
private WorkerSkillLabelInfo child;
|
||||||
|
}
|
||||||
@ -0,0 +1,48 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.common.dto;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页请求
|
||||||
|
*
|
||||||
|
* @author Smile
|
||||||
|
*/
|
||||||
|
@Setter
|
||||||
|
public class PageRequest {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 当前页
|
||||||
|
*/
|
||||||
|
protected Integer page;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页大小
|
||||||
|
*/
|
||||||
|
protected Integer pageSize;
|
||||||
|
|
||||||
|
public Integer getPage() {
|
||||||
|
return page == null ? 1 : page;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getPageSize() {
|
||||||
|
return pageSize == null ? 10 : pageSize;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getOffset() {
|
||||||
|
int offset = (getPage() - 1) * getPageSize();
|
||||||
|
return Math.max(offset, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
public <T> IPage<T> toPage() {
|
||||||
|
if (this.page == null) {
|
||||||
|
page = 1;
|
||||||
|
}
|
||||||
|
if (this.pageSize == null) {
|
||||||
|
pageSize = 10;
|
||||||
|
}
|
||||||
|
return new Page<>(page, pageSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,66 @@
|
|||||||
|
package cn.axzo.orgmanax.infra.client.common.dto;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页结果集
|
||||||
|
* @author Smile
|
||||||
|
* @date 2019/6/29 16:13
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class PageResult<T> {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总条数
|
||||||
|
*/
|
||||||
|
private Long totalCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 真实数量,去重
|
||||||
|
*/
|
||||||
|
private Integer realCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数据
|
||||||
|
*/
|
||||||
|
private List<T> data;
|
||||||
|
|
||||||
|
public PageResult() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public PageResult(List<T> data, Long totalCount) {
|
||||||
|
this.data = data;
|
||||||
|
this.totalCount = totalCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> PageResult<T> emptyResult() {
|
||||||
|
return new PageResult<>(Collections.emptyList(), 0L);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> PageResult<T> restPage(Page<T> pageInfo) {
|
||||||
|
PageResult<T> result = new PageResult<>();
|
||||||
|
result.setTotalCount(pageInfo.getTotal());
|
||||||
|
result.setData(pageInfo.getRecords());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> PageResult<T> valueOfIPage(IPage<?> pageInfo, List<T> data) {
|
||||||
|
PageResult<T> result = new PageResult<>();
|
||||||
|
result.setTotalCount(pageInfo.getTotal());
|
||||||
|
result.setData(data);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> PageResult<T> valueOf(Long totalCount, List<T> data) {
|
||||||
|
PageResult<T> result = new PageResult<>();
|
||||||
|
result.setTotalCount(totalCount);
|
||||||
|
result.setData(data);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -2,27 +2,42 @@ package cn.axzo.orgmanax.integration.sdk.apollo;
|
|||||||
|
|
||||||
import cn.axzo.apollo.api.ApolloGroupTaskOrderApi;
|
import cn.axzo.apollo.api.ApolloGroupTaskOrderApi;
|
||||||
import cn.axzo.apollo.api.res.CheckWorkerIsFinishGroupRes;
|
import cn.axzo.apollo.api.res.CheckWorkerIsFinishGroupRes;
|
||||||
|
import cn.axzo.apollo.api.rsp.TaskOrderRsp;
|
||||||
import cn.axzo.orgmanax.infra.client.apollo.ApolloGroupTaskOrderClient;
|
import cn.axzo.orgmanax.infra.client.apollo.ApolloGroupTaskOrderClient;
|
||||||
import cn.axzo.orgmanax.infra.client.apollo.dto.CheckProjectTeamWorkerIsFinishGroupTaskResp;
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloCheckProjectTeamWorkerIsFinishGroupTaskResp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloGetUnFinishGroupTaskByIdResp;
|
||||||
import cn.axzo.orgmanax.integration.core.RpcWrapper;
|
import cn.axzo.orgmanax.integration.core.RpcWrapper;
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@AllArgsConstructor
|
||||||
@Component
|
@Component
|
||||||
public class ApolloGroupTaskOrderClientImpl implements ApolloGroupTaskOrderClient {
|
public class ApolloGroupTaskOrderClientImpl implements ApolloGroupTaskOrderClient {
|
||||||
|
|
||||||
private final ApolloGroupTaskOrderApi groupTaskOrderApi;
|
private ApolloGroupTaskOrderApi groupTaskOrderApi;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询项目内班组下 某一批工人是否有未完成直属小组任务单
|
* 查询项目内班组下 某一批工人是否有未完成直属小组任务单
|
||||||
* @return 任务单详情
|
* @return 任务单详情
|
||||||
*/
|
*/
|
||||||
public List<CheckProjectTeamWorkerIsFinishGroupTaskResp> checkProjectTeamWorkerIsFinishGroupTask(Long projectTeamId, List<Long> workerIds) {
|
@Override
|
||||||
|
public List<ApolloCheckProjectTeamWorkerIsFinishGroupTaskResp> checkProjectTeamWorkerIsFinishGroupTask(Long projectTeamId, List<Long> workerIds) {
|
||||||
List<CheckWorkerIsFinishGroupRes> result = RpcWrapper.wrapApolloResult(() -> groupTaskOrderApi.checkProjectTeamWorkerIsFinishGroupTask(projectTeamId, workerIds));
|
List<CheckWorkerIsFinishGroupRes> result = RpcWrapper.wrapApolloResult(() -> groupTaskOrderApi.checkProjectTeamWorkerIsFinishGroupTask(projectTeamId, workerIds));
|
||||||
return BeanUtil.copyToList(result, CheckProjectTeamWorkerIsFinishGroupTaskResp.class);
|
return BeanUtil.copyToList(result, ApolloCheckProjectTeamWorkerIsFinishGroupTaskResp.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据直属小组id查询未完成的任务单
|
||||||
|
* @param groupId 小组id
|
||||||
|
* @return 任务单详情
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloGetUnFinishGroupTaskByIdResp> getUnFinishGroupTaskById(Long groupId) {
|
||||||
|
List<TaskOrderRsp> result = RpcWrapper.wrapApolloResult(() -> groupTaskOrderApi.getUnFinishGroupTaskById(groupId));
|
||||||
|
return BeanUtil.copyToList(result, ApolloGetUnFinishGroupTaskByIdResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,62 @@
|
|||||||
|
package cn.axzo.orgmanax.integration.sdk.apollo;
|
||||||
|
|
||||||
|
import cn.axzo.apollo.api.ApolloTaskOrderApi;
|
||||||
|
import cn.axzo.apollo.api.req.QueryEffectiveProjectTaskOrderReq;
|
||||||
|
import cn.axzo.apollo.api.req.TaskOrderIncrByAfterTimeReq;
|
||||||
|
import cn.axzo.apollo.api.res.QueryEffectiveTaskOrderRes;
|
||||||
|
import cn.axzo.apollo.core.common.model.TaskProcessingDetail;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.ApolloTaskOrderClient;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloQueryEffectiveProjectTaskOrderReq;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloGetTaskProcessingDetailByAfterTimeResp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloQueryEffectiveProjectTaskOrderResp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloGetTaskProcessingDetailByAfterTimeReq;
|
||||||
|
import cn.axzo.orgmanax.infra.client.common.dto.PageResult;
|
||||||
|
import cn.axzo.orgmanax.integration.core.RpcWrapper;
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务单相关
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/10
|
||||||
|
*/
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Component
|
||||||
|
public class ApolloTaskOrderClientImpl implements ApolloTaskOrderClient {
|
||||||
|
|
||||||
|
private ApolloTaskOrderApi apolloTaskOrderApi;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目内生效的任务单
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloQueryEffectiveProjectTaskOrderResp> queryEffectiveProjectTaskOrder(ApolloQueryEffectiveProjectTaskOrderReq req) {
|
||||||
|
QueryEffectiveProjectTaskOrderReq rpcReq = BeanUtil.copyProperties(req, QueryEffectiveProjectTaskOrderReq.class);
|
||||||
|
List<QueryEffectiveTaskOrderRes> result = RpcWrapper.wrapApolloResult(() -> apolloTaskOrderApi.getEffectiveTaskOrderByTeamCategoryAndWorkspaceIds(rpcReq));
|
||||||
|
return BeanUtil.copyToList(result, ApolloQueryEffectiveProjectTaskOrderResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询某个时间段 以后的任务单,供 基础那边使用, 他们定了 type 类型 2,4 还有订单的状态(完成) 全量的数据,没有区分 workspaceId \ projectId
|
||||||
|
* 查询的是 TaskOrder 表,用 TaskProcessingDetail 类去接收
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public PageResult<ApolloGetTaskProcessingDetailByAfterTimeResp> getTaskProcessingDetailByAfterTime(ApolloGetTaskProcessingDetailByAfterTimeReq req) {
|
||||||
|
TaskOrderIncrByAfterTimeReq rpcReq = BeanUtil.copyProperties(req, TaskOrderIncrByAfterTimeReq.class);
|
||||||
|
cn.axzo.apollo.core.domain.PageResult<TaskProcessingDetail> result = RpcWrapper.wrapApolloResult(() -> apolloTaskOrderApi.getTaskProcessingDetailByAfterTime(rpcReq));
|
||||||
|
if (result == null || ObjectUtil.isEmpty(result.getData())) {
|
||||||
|
return PageResult.emptyResult();
|
||||||
|
}
|
||||||
|
List<TaskProcessingDetail> list = result.getData();
|
||||||
|
List<ApolloGetTaskProcessingDetailByAfterTimeResp> resps = BeanUtil.copyToList(list, ApolloGetTaskProcessingDetailByAfterTimeResp.class);
|
||||||
|
return new PageResult(resps, result.getTotalCount());
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,36 @@
|
|||||||
|
package cn.axzo.orgmanax.integration.sdk.apollo;
|
||||||
|
|
||||||
|
import cn.axzo.apollo.api.ApolloTeamTaskOrderApi;
|
||||||
|
import cn.axzo.apollo.api.rsp.CheckProjectTeamTaskRsp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.ApolloTeamTaskOrderClient;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.ApolloCheckProjectTeamTaskIsCompleteResp;
|
||||||
|
import cn.axzo.orgmanax.integration.core.RpcWrapper;
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Component
|
||||||
|
public class ApolloTeamTaskOrderClientImpl implements ApolloTeamTaskOrderClient {
|
||||||
|
|
||||||
|
private ApolloTeamTaskOrderApi apolloTeamTaskOrderApi;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取项目内班组是否有未完结任务单
|
||||||
|
* @param workspaceId
|
||||||
|
* @param projectTeamIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloCheckProjectTeamTaskIsCompleteResp> checkProjectTeamTaskIsComplete(Long workspaceId, Set<Long> projectTeamIds) {
|
||||||
|
List<CheckProjectTeamTaskRsp> result = RpcWrapper.wrapApolloResult(() -> apolloTeamTaskOrderApi.checkProjectTeamTaskIsComplete(workspaceId, projectTeamIds));
|
||||||
|
return BeanUtil.copyToList(result, ApolloCheckProjectTeamTaskIsCompleteResp.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,121 @@
|
|||||||
|
package cn.axzo.orgmanax.integration.sdk.apollo;
|
||||||
|
|
||||||
|
import cn.axzo.apollo.api.ApolloWorkerTaskOrderApi;
|
||||||
|
import cn.axzo.apollo.api.req.PersonTagByCleanReq;
|
||||||
|
import cn.axzo.apollo.api.req.UnCompleteWorkerReq;
|
||||||
|
import cn.axzo.apollo.api.res.CheckWorkerIsFinishGroupRes;
|
||||||
|
import cn.axzo.apollo.api.res.UserMarkRes;
|
||||||
|
import cn.axzo.apollo.api.rsp.TaskOrderRsp;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.ApolloWorkerTaskOrderClient;
|
||||||
|
import cn.axzo.orgmanax.infra.client.apollo.dto.*;
|
||||||
|
import cn.axzo.orgmanax.integration.core.RpcWrapper;
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhanghongbo
|
||||||
|
* @date 2024/12/11
|
||||||
|
*/
|
||||||
|
@AllArgsConstructor
|
||||||
|
@Component
|
||||||
|
public class ApolloWorkerTaskOrderClientImpl implements ApolloWorkerTaskOrderClient {
|
||||||
|
|
||||||
|
private ApolloWorkerTaskOrderApi apolloWorkerTaskOrderApi;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id和工人id获取工人未完成的任务单数
|
||||||
|
* @param teamId
|
||||||
|
* @param workerId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloTaskOrderResp> listUnCompleteWorkerTaskOrder(Long teamId, Long workerId) {
|
||||||
|
List<TaskOrderRsp> result = RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.listUnCompleteWorkerTaskOrder(teamId, workerId));
|
||||||
|
return BeanUtil.copyToList(result, ApolloTaskOrderResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id和工人id获取工人未完成的任务单数
|
||||||
|
* @param projectId
|
||||||
|
* @param projectTeamId
|
||||||
|
* @param workerId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloTaskOrderResp> listUnCompleteWorkerTaskOrderNew(Long projectId, Long projectTeamId, Long workerId) {
|
||||||
|
List<TaskOrderRsp> result = RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.listUnCompleteWorkerTaskOrderNew(projectId, projectTeamId, workerId));
|
||||||
|
return BeanUtil.copyToList(result, ApolloTaskOrderResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id和工人id获取工人未完成的任务单数-批量
|
||||||
|
* @param reqs
|
||||||
|
* @return 数量,已人作为key
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Map<Long,Long> batchUnCompleteWorker(List<ApolloBatchUnCompleteWorkerReq> reqs) {
|
||||||
|
List<UnCompleteWorkerReq> rpcReqs = BeanUtil.copyToList(reqs, UnCompleteWorkerReq.class);
|
||||||
|
return RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.batchUnCompleteWorkerTaskOrderByDisOrgNodeIdAndPersonId(rpcReqs));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* workspaceId和工人ids查询是否有未完成任务单
|
||||||
|
* @param workspaceId
|
||||||
|
* @param workerIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloCheckWorkerTaskIsFinishResp> checkWorkerTaskIsFinish(Long workspaceId, List<Long> workerIds) {
|
||||||
|
List<CheckWorkerIsFinishGroupRes> result = RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.checkWorkerTaskIsFinish(workspaceId, workerIds));
|
||||||
|
return BeanUtil.copyToList(result, ApolloCheckWorkerTaskIsFinishResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过班组id获取班组未完成任务单数
|
||||||
|
* @param teamId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloTaskOrderResp> listUnCompleteTeamTaskOrder(Long teamId) {
|
||||||
|
List<TaskOrderRsp> result = RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.listUnCompleteTeamTaskOrder(teamId));
|
||||||
|
return BeanUtil.copyToList(result, ApolloTaskOrderResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过工人id和项目部id获取 未开始和施工中任务
|
||||||
|
* @param workspaceId
|
||||||
|
* @param workerId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloTaskOrderResp> listWorkerTaskByWorkerIdAndWorkspaceId(Long workspaceId, Long workerId) {
|
||||||
|
List<TaskOrderRsp> result = RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.listWorkerTaskByWorkerIdAndWorkspaceId(workspaceId, workerId));
|
||||||
|
return BeanUtil.copyToList(result, ApolloTaskOrderResp.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 撤销未派发工人任务单
|
||||||
|
* @param workspaceId
|
||||||
|
* @param workerId
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void cancelUnDistributeWorkerTask(Long workspaceId, Long workerId) {
|
||||||
|
RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.cancelUnDistributeWorkerTask(workspaceId, workerId));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取用户标签-用于清洗
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ApolloGetPersonTagByCleanResp> getPersonTagByClean(ApolloGetPersonTagByCleanReq req) {
|
||||||
|
PersonTagByCleanReq rpcReq = BeanUtil.copyProperties(req, PersonTagByCleanReq.class);
|
||||||
|
List<UserMarkRes> result = RpcWrapper.wrapApolloResult(() -> apolloWorkerTaskOrderApi.getPersonTagByClean(rpcReq));
|
||||||
|
return BeanUtil.copyToList(result, ApolloGetPersonTagByCleanResp.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user