|
@@ -31,6 +31,7 @@ import org.springblade.manager.service.IWbsFormElementService;
|
|
|
import org.springblade.manager.service.IWbsTreeService;
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl;
|
|
|
import org.springblade.manager.vo.*;
|
|
|
+import org.springframework.scheduling.annotation.Async;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
@@ -706,8 +707,8 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
//获取公有wbs树所有的元素表
|
|
|
if (allNodeList != null) {
|
|
|
List<WbsTree> wbsTreeList = wbsTreeMapper.selectList(Wrappers.<WbsTree>query().lambda()
|
|
|
- .eq(WbsTree::getWbsId, pawDTO.getWbsId())
|
|
|
- .eq(WbsTree::getStatus, 1)
|
|
|
+ .eq(WbsTree::getWbsId, pawDTO.getWbsId())
|
|
|
+ .eq(WbsTree::getStatus, 1)
|
|
|
);
|
|
|
wbsTreeListAll.addAll(wbsTreeList);
|
|
|
}
|
|
@@ -736,12 +737,12 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
List<String> diffRent1 = WbsTreeContractServiceImpl.getDiffrent(collect2, collect4);
|
|
|
|
|
|
//同步公有wbs节点信息、元素表基础信息到项目级wbs、合同段wbs
|
|
|
- wbsTreePrivateService.updateBatchByIds(wbsTreeListAll,pawDTO.getProjectId());
|
|
|
+ //wbsTreePrivateService.updateBatchByIds(wbsTreeListAll,pawDTO.getProjectId());
|
|
|
+ updateWbsInfoPrivateAsync(wbsTreeListAll, pawDTO.getProjectId());
|
|
|
|
|
|
if (diffRent1.size() == 0) {
|
|
|
//当wbsTreeIds == "" 时 1.在第一次新增未选择wbs树时 2.同步新增的元素表时
|
|
|
return true;
|
|
|
- //throw new ServiceException("未检测到当前引用的wbs树下有新增的元素表信息");
|
|
|
|
|
|
} else {
|
|
|
if (collect2.size() > collect4.size()) {
|
|
@@ -812,7 +813,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
-
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
@@ -825,9 +825,9 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
|
|
|
//获取私有引用项目的wbs树的全部元素表+节点信息
|
|
|
List<WbsTreePrivate> wbsTreePrivates = wbsTreePrivateMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
|
|
|
- .eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
|
- .eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId())
|
|
|
- .eq(WbsTreePrivate::getStatus, 1)
|
|
|
+ .eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId())
|
|
|
+ .eq(WbsTreePrivate::getStatus, 1)
|
|
|
);
|
|
|
|
|
|
//私有引用项目的表单信息
|
|
@@ -854,11 +854,11 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
List<String> diffRent1 = WbsTreeContractServiceImpl.getDiffrent(collect2, collect4);
|
|
|
|
|
|
//同步私有wbs节点信息、元素表基础信息到项目级wbs、合同段wbs
|
|
|
- wbsTreePrivateService.updateBatchByIds2(wbsTreePrivates, pawDTO.getProjectId(), pawDTO.getPrimaryKeyId());
|
|
|
+ //wbsTreePrivateService.updateBatchByIds2(wbsTreePrivates, pawDTO.getProjectId(), pawDTO.getPrimaryKeyId());
|
|
|
+ updateWbsInfoContractAsync(wbsTreePrivates, pawDTO.getProjectId(), pawDTO.getPrimaryKeyId());
|
|
|
|
|
|
if (diffRent1.size() == 0) {
|
|
|
return true;
|
|
|
- //throw new ServiceException("未检测到当前引用的wbs树下有新增的元素表信息");
|
|
|
|
|
|
} else {
|
|
|
if (collect2.size() > collect4.size()) {
|
|
@@ -941,7 +941,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
-
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
@@ -1085,6 +1084,19 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Async
|
|
|
+ public boolean updateWbsInfoPrivateAsync(List<WbsTree> wbsTreeListAll, String projectId) {
|
|
|
+ wbsTreePrivateService.updateBatchByIds(wbsTreeListAll, projectId);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Async
|
|
|
+ public boolean updateWbsInfoContractAsync(List<WbsTreePrivate> wbsTreePrivates, String projectId, String primaryKeyId) {
|
|
|
+ wbsTreePrivateService.updateBatchByIds2(wbsTreePrivates, projectId, primaryKeyId);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
private WbsTreePrivate getWbsTreePrivate1(WbsTree wbsTree, WbsTreeContractDTO pawDTO) {
|
|
|
WbsTreePrivate wbsTreePrivate = new WbsTreePrivate();
|
|
|
//数据初始化
|