临时转原始BOM

This commit is contained in:
大米 2023-11-18 17:34:57 +08:00
parent 98ab93e29b
commit 1976ac63fd
2 changed files with 15 additions and 2 deletions

View File

@ -133,6 +133,7 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
public List<TreeNode<BomOriginalListVO>> getChildTree(Long rowId) throws ExecutionException, InterruptedException { public List<TreeNode<BomOriginalListVO>> getChildTree(Long rowId) throws ExecutionException, InterruptedException {
List<BomOriginalListVO> bomTree = getBomTree(rowId); List<BomOriginalListVO> bomTree = getBomTree(rowId);
return TreeUtils.toTree(rowId, bomTree, BomOriginalListVO::getParentRowId, BomOriginalListVO::getChildBomRowId); return TreeUtils.toTree(rowId, bomTree, BomOriginalListVO::getParentRowId, BomOriginalListVO::getChildBomRowId);
@ -149,7 +150,10 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
List<BomOriginalListVO> bomDetail = this.getBaseMapper().getParentChild(rowId); List<BomOriginalListVO> bomDetail = this.getBaseMapper().getParentChild(rowId);
OriginalBomDetailTask detailTask = new OriginalBomDetailTask(bomDetail); OriginalBomDetailTask detailTask = new OriginalBomDetailTask(bomDetail);
ForkJoinTask<List<BomOriginalListVO>> submit = bomDetailPool.submit(detailTask); ForkJoinTask<List<BomOriginalListVO>> submit = bomDetailPool.submit(detailTask);
return submit.get();
List<BomOriginalListVO> result = submit.get();
System.out.println(detailTask.getLevelNum());
return result;
} }

View File

@ -7,6 +7,7 @@ import com.nflg.product.bomnew.pojo.entity.BomNewOriginalParentEntity;
import com.nflg.product.bomnew.pojo.vo.BomOriginalListVO; import com.nflg.product.bomnew.pojo.vo.BomOriginalListVO;
import com.nflg.product.bomnew.service.BomNewOriginalParentService; import com.nflg.product.bomnew.service.BomNewOriginalParentService;
import com.nflg.product.bomnew.util.ListCommonUtil; import com.nflg.product.bomnew.util.ListCommonUtil;
import lombok.Getter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -24,11 +25,14 @@ public class OriginalBomDetailTask extends RecursiveTask<List<BomOriginalListVO>
private List<BomOriginalListVO> bomDetail; private List<BomOriginalListVO> bomDetail;
@Getter
public static int levelNum=1;
List<BomOriginalListVO> result = new ArrayList<>(); List<BomOriginalListVO> result = new ArrayList<>();
public OriginalBomDetailTask(List<BomOriginalListVO> inBomDetail) { public OriginalBomDetailTask(List<BomOriginalListVO> inBomDetail) {
bomDetail = inBomDetail; bomDetail = inBomDetail;
@ -72,6 +76,7 @@ public class OriginalBomDetailTask extends RecursiveTask<List<BomOriginalListVO>
result.addAll(bomDetail); result.addAll(bomDetail);
if (CollUtil.isNotEmpty(bomDetail)) { if (CollUtil.isNotEmpty(bomDetail)) {
levelNumAdd();
List<Long> childBowIds = bomDetail.stream().filter(u-> u.getChildBomRowId()!=null && u.getChildBomRowId() > 0).map(u->u.getChildBomRowId()).collect(Collectors.toList()); List<Long> childBowIds = bomDetail.stream().filter(u-> u.getChildBomRowId()!=null && u.getChildBomRowId() > 0).map(u->u.getChildBomRowId()).collect(Collectors.toList());
if(CollUtil.isNotEmpty(childBowIds)) { if(CollUtil.isNotEmpty(childBowIds)) {
List<BomOriginalListVO> bom = SpringUtil.getBean(BomNewOriginalParentService.class).getBaseMapper().getParentChildBatch(childBowIds); List<BomOriginalListVO> bom = SpringUtil.getBean(BomNewOriginalParentService.class).getBaseMapper().getParentChildBatch(childBowIds);
@ -86,4 +91,8 @@ public class OriginalBomDetailTask extends RecursiveTask<List<BomOriginalListVO>
} }
public synchronized void levelNumAdd(){
levelNum++;
}
} }