1、webcad拆单部件状态设置修正;2、装配设置详情页状态过滤修改;

This commit is contained in:
gaoqr
2026-06-01 12:00:48 +08:00
parent 8fe8b94dec
commit e31594c5d4
6 changed files with 177 additions and 62 deletions
@@ -1801,7 +1801,7 @@ public class WebCadOrderImportAsyncFactory {
// 3. hash计算
for (OrderComponentTreeCompareVO root : roots) {
computeHashRecursively(root);
buildAndSetRootHash(root);
}
// 4. 状态刷新
@@ -1945,7 +1945,6 @@ public class WebCadOrderImportAsyncFactory {
node.setId(groupId == null ? null : groupId);
node.setName(name);
node.setChildren(children);
node.setProcessStatus(OrderComponentProcessStatusEnum.UNPROCESSED.getStatus());
if (boxSize != null) {
node.setWidth(boxSize.getWidth());
@@ -1979,13 +1978,50 @@ public class WebCadOrderImportAsyncFactory {
);
}
private void buildAndSetRootHash(
OrderComponentTreeCompareVO root) {
private String buildStructureString(OrderComponentTreeCompareVO node) {
sortRecursively(root);
String structureStr =
buildStructureString(root);
root.setStructureHash(
DigestUtil.sha256Hex(structureStr)
);
}
private void sortRecursively(
OrderComponentTreeCompareVO node) {
List<OrderComponentTreeCompareVO> children =
node.getChildren();
if (CollUtil.isEmpty(children)) {
return;
}
children.sort(
Comparator.comparing(
OrderComponentTreeCompareVO::getName
)
);
for (OrderComponentTreeCompareVO child : children) {
sortRecursively(child);
}
}
private String buildStructureString(
OrderComponentTreeCompareVO node) {
StringBuilder sb = new StringBuilder();
sb.append(node.getName());
List<OrderComponentTreeCompareVO> children = node.getChildren();
List<OrderComponentTreeCompareVO> children =
node.getChildren();
if (CollUtil.isNotEmpty(children)) {
@@ -1997,7 +2033,11 @@ public class WebCadOrderImportAsyncFactory {
sb.append(",");
}
sb.append(buildStructureString(children.get(i)));
sb.append(
buildStructureString(
children.get(i)
)
);
}
sb.append(")");
@@ -589,11 +589,6 @@ public class WebCadOrderImportFactory {
vo.setDepth(node.getBoxSize().getDepth());
}
// 默认未加工
vo.setProcessStatus(
OrderComponentProcessStatusEnum.UNPROCESSED.getStatus()
);
List<OrderComponentTreeCompareVO> children =
new ArrayList<>();