派工查询sql修改

This commit is contained in:
Ledo 2025-07-18 10:59:37 +08:00
parent f51339f806
commit e401652ec4

View File

@ -316,63 +316,53 @@ public interface TaskDispatchDetailMapper extends BaseMapperX<TaskDispatchDetail
.leftJoin(ProcessBomDetailDO.class, "d", ProcessBomDetailDO::getId, TaskDispatchDO::getBomDetailId) .leftJoin(ProcessBomDetailDO.class, "d", ProcessBomDetailDO::getId, TaskDispatchDO::getBomDetailId)
.leftJoin(ProcedureDO.class, "e", ProcedureDO::getId, TaskDispatchDetailDO::getProcedureId) .leftJoin(ProcedureDO.class, "e", ProcedureDO::getId, TaskDispatchDetailDO::getProcedureId)
.leftJoin(TaskReportDO.class, "f", TaskReportDO::getDispatchDetailId, TaskDispatchDetailDO::getId) .leftJoin(TaskReportDO.class, "f", TaskReportDO::getDispatchDetailId, TaskDispatchDetailDO::getId)
.ne(ProjectOrderDO::getStatus,6)
.groupBy(TaskDispatchDetailDO::getId) .groupBy(TaskDispatchDetailDO::getId)
.disableSubLogicDel(); .disableSubLogicDel();;
if (reqVO.getProcedureStatusList().size() == 1 && reqVO.getProcedureStatusList().get(0) == 2) {
// 完工降序
query.orderByDesc(TaskDispatchDetailDO::getDispatchId, TaskDispatchDetailDO::getSort);
} else {
// 未完工升序
query.eq(TaskDispatchDO::getDispatchStatus, 2)
.orderByAsc(TaskDispatchDetailDO::getDispatchId, TaskDispatchDetailDO::getSort);
}
if (reqVO.getSubOrDetailName() != null && !reqVO.getSubOrDetailName().trim().equals("")){ if (reqVO.getSubOrDetailName() != null && !reqVO.getSubOrDetailName().trim().equals("")){
query.apply("(b.project_name like '%" + reqVO.getSubOrDetailName() + "%' or c.name like '%" + reqVO.getSubOrDetailName() + "%')"); query.and( e ->e.like(ProjectOrderDO::getProjectName, reqVO.getSubOrDetailName()).or().like(
ProjectOrderSubDO::getName, reqVO.getSubOrDetailName()
));
// query.eq(" (b.project_name like '%" + reqVO.getSubOrDetailName() + "%' or c.name like '%" + reqVO.getSubOrDetailName() + "%')");
} }
if (reqVO.getProcedureStatusList().size()==1 && reqVO.getProcedureStatusList().get(0)==2){ query.and(wrapper -> {
//完工降序 wrapper.ne(ProjectOrderDO::getStatus,6);
query.orderByDesc(TaskDispatchDetailDO::getDispatchId,TaskDispatchDetailDO::getSort);
}else {
//未完工升序
query.eq(TaskDispatchDO::getDispatchStatus,2) if (CollUtil.isNotEmpty(postIds)) {
.orderByAsc(TaskDispatchDetailDO::getDispatchId,TaskDispatchDetailDO::getSort) wrapper.and(i -> {
; // 为每个岗位创建对应的工序查询条件
} for (String postId : postIds.keySet()) {
// if (CollUtil.isNotEmpty(postIds)) { Long processId = postIds.get(postId);
// query.and(i -> i if (ObjectUtil.isNotEmpty(processId)) {
// .and(j -> j.in(TaskDispatchDetailDO::getPostId, postIds)) i.or(j -> j.eq(TaskDispatchDetailDO::getPostId, postId)
// .and(j -> j.isNull(TaskDispatchDetailDO::getOwner)) .eq(TaskDispatchDetailDO::getProcedureId, processId)
// .or(k-> k.eq(reqVO.getOwner() != null, TaskDispatchDetailDO::getOwner, reqVO.getOwner())) .isNull(TaskDispatchDetailDO::getOwner));
// ); } else {
// }else{ i.or(j -> j.eq(TaskDispatchDetailDO::getPostId, postId)
// query.eq(reqVO.getOwner() != null, TaskDispatchDetailDO::getOwner, reqVO.getOwner()); .isNull(TaskDispatchDetailDO::getOwner));
// } }
if (CollUtil.isNotEmpty(postIds)) {
query.and(i -> {
// 为每个岗位创建对应的工序查询条件
for (String postId : postIds.keySet()) {
Long processId = postIds.get(postId);
if (ObjectUtil.isNotEmpty(processId)) {
i.or(j -> j
.eq(TaskDispatchDetailDO::getPostId, postId)
.eq(TaskDispatchDetailDO::getProcedureId, processId)
.isNull(TaskDispatchDetailDO::getOwner)
);
}else {
i.or(j -> j
.eq(TaskDispatchDetailDO::getPostId, postId)
.isNull(TaskDispatchDetailDO::getOwner)
);
} }
} });
}); // 添加所有者查询条件
// 添加所有者查询条件 wrapper.or(k -> k.eq(reqVO.getOwner() != null, TaskDispatchDetailDO::getOwner, reqVO.getOwner()));
query.or(k-> k.eq(reqVO.getOwner() != null, TaskDispatchDetailDO::getOwner, reqVO.getOwner())); } else {
wrapper.eq(reqVO.getOwner() != null, TaskDispatchDetailDO::getOwner, reqVO.getOwner());
}
}else{ wrapper.in(CollUtil.isNotEmpty(reqVO.getProcedureStatusList()), TaskDispatchDetailDO::getProcedureStatus, reqVO.getProcedureStatusList())
query.eq(reqVO.getOwner() != null, TaskDispatchDetailDO::getOwner, reqVO.getOwner()); .eq(reqVO.getIsReport() != null, ProcedureDO::getIsReport, reqVO.getIsReport())
} .eq(!StringUtils.isEmpty(reqVO.getDispatchType()), TaskDispatchDO::getDispatchType, reqVO.getDispatchType())
query .eq(reqVO.getTaskId() != null, TaskDispatchDO::getTaskId, reqVO.getTaskId())
.in(CollUtil.isNotEmpty(reqVO.getProcedureStatusList()), TaskDispatchDetailDO::getProcedureStatus, reqVO.getProcedureStatusList()) .eq(reqVO.getBomDetailId() != null, TaskDispatchDO::getBomDetailId, reqVO.getBomDetailId());
.eq(reqVO.getIsReport() != null, ProcedureDO::getIsReport, reqVO.getIsReport()) });
.eq(!StringUtils.isEmpty(reqVO.getDispatchType()), TaskDispatchDO::getDispatchType, reqVO.getDispatchType())
.eq(reqVO.getTaskId() != null, TaskDispatchDO::getTaskId, reqVO.getTaskId())
.eq(reqVO.getBomDetailId() != null, TaskDispatchDO::getBomDetailId, reqVO.getBomDetailId())
;
return selectPage(reqVO, query); return selectPage(reqVO, query);
} }