|
@@ -796,38 +796,11 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
List<WbsTreePrivate> insertData2 = new ArrayList<>();
|
|
List<WbsTreePrivate> insertData2 = new ArrayList<>();
|
|
|
|
|
|
if (pawDTO.getReferenceType().equals("public")) {
|
|
if (pawDTO.getReferenceType().equals("public")) {
|
|
- /*List<WbsTree> addListData = new ArrayList<>();
|
|
|
|
- //获取当前树下所有节点、表信息
|
|
|
|
- List<WbsTree> treesAll = baseMapper.selectList(Wrappers.<WbsTree>lambdaQuery().eq(WbsTree::getWbsId, pawDTO.getWbsId()).eq(WbsTree::getStatus, 1));
|
|
|
|
- for (WbsTree wbsTree : treesAll) {
|
|
|
|
- for (String id : saveIds) {
|
|
|
|
- if (Long.parseLong(id) == (wbsTree.getId())) {
|
|
|
|
- addListData.add(wbsTree);
|
|
|
|
- } else if (Long.parseLong(id) == (wbsTree.getParentId()) && wbsTree.getType() == 2) {
|
|
|
|
- addListData.add(wbsTree);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- addListData.forEach(tree -> {
|
|
|
|
- WbsTreePrivate wbsTreePrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
|
|
- if (wbsTreePrivate != null) {
|
|
|
|
- wbsTreePrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
|
|
- wbsTreePrivate.setWbsType(String.valueOf(pawDTO.getWbsType()));
|
|
|
|
- wbsTreePrivate.setProjectId(pawDTO.getProjectId());
|
|
|
|
- wbsTreePrivate.setFullName(wbsTreePrivate.getNodeName());
|
|
|
|
- wbsTreePrivate.setInitTableId(ObjectUtil.isNotEmpty(tree.getInitTableId()) ? String.valueOf(tree.getInitTableId()) : null);
|
|
|
|
- }
|
|
|
|
- insertData1.add(wbsTreePrivate);
|
|
|
|
- });*/
|
|
|
|
-
|
|
|
|
//获取当前树下所有节点、表信息
|
|
//获取当前树下所有节点、表信息
|
|
List<WbsTree> treesAll = baseMapper.selectList(Wrappers.<WbsTree>lambdaQuery()
|
|
List<WbsTree> treesAll = baseMapper.selectList(Wrappers.<WbsTree>lambdaQuery()
|
|
.eq(WbsTree::getWbsId, pawDTO.getWbsId())
|
|
.eq(WbsTree::getWbsId, pawDTO.getWbsId())
|
|
.eq(WbsTree::getStatus, 1));
|
|
.eq(WbsTree::getStatus, 1));
|
|
-
|
|
|
|
Set<Long> saveIdsSet = saveIds.stream().map(Long::parseLong).collect(Collectors.toSet());
|
|
Set<Long> saveIdsSet = saveIds.stream().map(Long::parseLong).collect(Collectors.toSet());
|
|
-
|
|
|
|
insertData1 = treesAll.stream()
|
|
insertData1 = treesAll.stream()
|
|
.filter(wbsTree -> saveIdsSet.contains(wbsTree.getId()) || (saveIdsSet.contains(wbsTree.getParentId()) && wbsTree.getType() == 2))
|
|
.filter(wbsTree -> saveIdsSet.contains(wbsTree.getId()) || (saveIdsSet.contains(wbsTree.getParentId()) && wbsTree.getType() == 2))
|
|
.map(tree -> {
|
|
.map(tree -> {
|
|
@@ -854,54 +827,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
|
|
|
//获取当前项目下的所有独立表
|
|
//获取当前项目下的所有独立表
|
|
List<WbsTreePrivate> wbsTreePrivatesTableDL = wbsTreePrivateMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().select(WbsTreePrivate::getId).eq(WbsTreePrivate::getProjectId, pawDTO.getProjectId()).eq(WbsTreePrivate::getType, 10).eq(WbsTreePrivate::getParentId, -10).eq(WbsTreePrivate::getStatus, 1));
|
|
List<WbsTreePrivate> wbsTreePrivatesTableDL = wbsTreePrivateMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().select(WbsTreePrivate::getId).eq(WbsTreePrivate::getProjectId, pawDTO.getProjectId()).eq(WbsTreePrivate::getType, 10).eq(WbsTreePrivate::getParentId, -10).eq(WbsTreePrivate::getStatus, 1));
|
|
-
|
|
|
|
- /*for (WbsTreePrivate wbsTreePrivate : wbsTreePrivatesNodeAndTab) {
|
|
|
|
- if (wbsTreePrivate.getType() == 1 || wbsTreePrivate.getType() == 2) {
|
|
|
|
- for (String id : saveIds) {
|
|
|
|
- if (Long.parseLong(id) == (wbsTreePrivate.getId())) {
|
|
|
|
- addListData.add(wbsTreePrivate);
|
|
|
|
-
|
|
|
|
- } else if (Long.parseLong(id) == (wbsTreePrivate.getParentId()) && wbsTreePrivate.getType() == 2) {
|
|
|
|
- addListData.add(wbsTreePrivate);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (wbsTreePrivate.getType() == 10 && wbsTreePrivate.getParentId() == -10) { //type=10,parentId=-10 独立库
|
|
|
|
- //判断是否存在独立表单,存在则不新增
|
|
|
|
- List<WbsTreePrivate> collect = wbsTreePrivatesTableDL.stream().filter(f -> f.getId().equals(wbsTreePrivate.getId())).collect(Collectors.toList());
|
|
|
|
- if (collect.size() == 0) {
|
|
|
|
- addListData.add(wbsTreePrivate);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //只同步独立库中有关联过清表的元素表type=10,以及原始方式的元素表type=2,节点信息type=1
|
|
|
|
- List<WbsTreePrivate> collect = addListData.stream().filter(f -> f.getType().equals(1) || f.getType().equals(2) || (f.getHtmlUrl() != null && f.getType().equals(10))).collect(Collectors.toList());
|
|
|
|
-
|
|
|
|
- collect.forEach(tree -> {
|
|
|
|
- WbsTreePrivate wbsTreePrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
|
|
- if (wbsTreePrivate != null) {
|
|
|
|
- wbsTreePrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
|
|
- wbsTreePrivate.setProjectId(pawDTO.getProjectId());
|
|
|
|
- wbsTreePrivate.setFullName(wbsTreePrivate.getNodeName());
|
|
|
|
- wbsTreePrivate.setInitTableId(ObjectUtil.isNotEmpty(tree.getInitTableId()) ? String.valueOf(tree.getInitTableId()) : null);
|
|
|
|
-
|
|
|
|
- wbsTreePrivate.setHtmlUrl(ObjectUtil.isNotEmpty(tree.getHtmlUrl()) ? tree.getHtmlUrl() : null);
|
|
|
|
-
|
|
|
|
- if (tree.getType() == 10) { //独立表单数据
|
|
|
|
- wbsTreePrivate.setWbsId(null);
|
|
|
|
- wbsTreePrivate.setWbsType(null);
|
|
|
|
- } else { //非独立库形式
|
|
|
|
- wbsTreePrivate.setWbsId(pawDTO.getPrimaryKeyId());
|
|
|
|
- wbsTreePrivate.setWbsType(String.valueOf(pawDTO.getWbsType()));
|
|
|
|
- }
|
|
|
|
- insertData2.add(wbsTreePrivate);
|
|
|
|
- }
|
|
|
|
- });*/
|
|
|
|
-
|
|
|
|
Set<Long> saveIdsSet = saveIds.stream().map(Long::parseLong).collect(Collectors.toSet());
|
|
Set<Long> saveIdsSet = saveIds.stream().map(Long::parseLong).collect(Collectors.toSet());
|
|
-
|
|
|
|
wbsTreePrivatesNodeAndTab.forEach(wbsTreePrivate -> {
|
|
wbsTreePrivatesNodeAndTab.forEach(wbsTreePrivate -> {
|
|
boolean isType1Or2 = wbsTreePrivate.getType() == 1 || wbsTreePrivate.getType() == 2;
|
|
boolean isType1Or2 = wbsTreePrivate.getType() == 1 || wbsTreePrivate.getType() == 2;
|
|
boolean isType10WithParentIdMinus10 = wbsTreePrivate.getType() == 10 && wbsTreePrivate.getParentId() == -10;
|
|
boolean isType10WithParentIdMinus10 = wbsTreePrivate.getType() == 10 && wbsTreePrivate.getParentId() == -10;
|