装配清单-部件列表状态解析错误修正

This commit is contained in:
gaoqr
2026-03-05 17:48:59 +08:00
parent 04264eaa64
commit b894c24165
@@ -90,12 +90,12 @@ public class AssemblyListServiceImpl implements AssemblyListService {
return getNotProcessComponentList(reqVO, topIds); return getNotProcessComponentList(reqVO, topIds);
} else if (OrderComponentProcessStatusEnum.UNPROCESSED.equals(orderComponentProcessStatusEnum)) { } else if (OrderComponentProcessStatusEnum.UNPROCESSED.equals(orderComponentProcessStatusEnum)) {
// 未加工 // 未加工
return getUnProcessedComponentList(reqVO, topIds); return getUnProcessedComponentList(reqVO, topIds, false);
} else if (OrderComponentProcessStatusEnum.PROCESSED.equals(orderComponentProcessStatusEnum)) { } else if (OrderComponentProcessStatusEnum.PROCESSED.equals(orderComponentProcessStatusEnum)) {
// 已加工 // 已加工
return getProcessedComponentList(reqVO, topIds); return getProcessedComponentList(reqVO, topIds);
} else { } else {
return getUnProcessedComponentList(reqVO, topIds); return getUnProcessedComponentList(reqVO, topIds, true);
} }
} }
@@ -182,14 +182,14 @@ public class AssemblyListServiceImpl implements AssemblyListService {
* @param reqVO * @param reqVO
* @return * @return
*/ */
private List<OrderComponentRespVO> getUnProcessedComponentList(OrderDetailComponentListReqVO reqVO, List<Long> topIds) { private List<OrderComponentRespVO> getUnProcessedComponentList(OrderDetailComponentListReqVO reqVO, List<Long> topIds, boolean showAll) {
// 根据部件的topid查询树上所有已加工节点 // 根据部件的topid查询树上所有已加工节点
List<OrderComponentDO> topUnProcessedComponentList = orderComponentMapper.selectList(new LambdaQueryWrapperX<OrderComponentDO>() List<OrderComponentDO> topUnProcessedComponentList = orderComponentMapper.selectList(new LambdaQueryWrapperX<OrderComponentDO>()
.in(OrderComponentDO::getTopId, topIds) .in(OrderComponentDO::getTopId, topIds)
.eq(OrderComponentDO::getOrderId, reqVO.getOrderId()) .eq(OrderComponentDO::getOrderId, reqVO.getOrderId())
.eqIfPresent(OrderComponentDO::getDeleted, reqVO.isDeleted()) .eqIfPresent(OrderComponentDO::getDeleted, reqVO.isDeleted())
.likeIfPresent(OrderComponentDO::getName, reqVO.getName()) .likeIfPresent(OrderComponentDO::getName, reqVO.getName())
.ne(OrderComponentDO::getProcessStatus, OrderComponentProcessStatusEnum.PROCESSED.getStatus()) .neIfPresent(OrderComponentDO::getProcessStatus, showAll ? null : OrderComponentProcessStatusEnum.PROCESSED.getStatus())
.select(OrderComponentDO::getId, OrderComponentDO::getPid, OrderComponentDO::getName, OrderComponentDO::getProcessStatus)); .select(OrderComponentDO::getId, OrderComponentDO::getPid, OrderComponentDO::getName, OrderComponentDO::getProcessStatus));
// 计算部件状态 // 计算部件状态
@@ -317,8 +317,9 @@ public class AssemblyListServiceImpl implements AssemblyListService {
/** /**
* 逐级对比:当b状态不是已加工时,a的process是false,b的状态才是不加工 * 逐级对比:当b状态不是已加工时,a的process是false,b的状态才是不加工
* @param a *
* @param b * @param a 配置
* @param b 部件数据
*/ */
private void processRecursive( private void processRecursive(
OrderComponentTreeCompareVO a, OrderComponentTreeCompareVO a,
@@ -327,8 +328,6 @@ public class AssemblyListServiceImpl implements AssemblyListService {
// 1️⃣ 赋值当前层 // 1️⃣ 赋值当前层
if (ObjectUtil.notEqual(OrderComponentProcessStatusEnum.PROCESSED.getStatus(), b.getProcessStatus())) { if (ObjectUtil.notEqual(OrderComponentProcessStatusEnum.PROCESSED.getStatus(), b.getProcessStatus())) {
b.setProcessStatus(a.isProcess() ? OrderComponentProcessStatusEnum.UNPROCESSED.getStatus() : OrderComponentProcessStatusEnum.NOT_PROCESS.getStatus()); b.setProcessStatus(a.isProcess() ? OrderComponentProcessStatusEnum.UNPROCESSED.getStatus() : OrderComponentProcessStatusEnum.NOT_PROCESS.getStatus());
} else {
b.setProcessStatus(a.getProcessStatus());
} }
// 2️⃣ 处理子节点 // 2️⃣ 处理子节点