|
@@ -2,6 +2,7 @@ package org.springblade.manager.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
+import lombok.SneakyThrows;
|
|
|
import net.sourceforge.pinyin4j.PinyinHelper;
|
|
|
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
|
|
|
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
|
|
@@ -9,6 +10,7 @@ import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
|
|
|
import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;
|
|
|
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
+import org.jsoup.helper.DataUtil;
|
|
|
import org.springblade.common.utils.SnowFlakeUtil;
|
|
|
import org.springblade.core.log.exception.ServiceException;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
@@ -72,10 +74,10 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
@Override
|
|
|
public List<WbsTreeVO2> tree(String wbsId, String tenantId, String type) {
|
|
|
|
|
|
- //方法1-数据量过大响应格式错误
|
|
|
+ //1-响应格式错误
|
|
|
/*return ForestNodeMerger.merge(baseMapper.tree(wbsId, tenantId, type));*/
|
|
|
|
|
|
- //方法2
|
|
|
+ //2
|
|
|
List<WbsTreeVO2> wbsTreeVO2s = baseMapper.tree2(wbsId, tenantId, type);
|
|
|
|
|
|
//构建
|
|
@@ -212,12 +214,12 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
wbsTree.setIsDeleted(BladeConstant.DB_NOT_DELETED);
|
|
|
wbsTree.setStatus(1);
|
|
|
|
|
|
- maps.stream().forEach(map -> {
|
|
|
+ maps.forEach(map -> {
|
|
|
String deptName = map.get("表名");
|
|
|
wbsTree.setDeptName(deptName);
|
|
|
wbsTree.setTableType(getTableType(map.get("表类型")));
|
|
|
Long id = SnowFlakeUtil.getId();
|
|
|
- String initTableName = "m_" + DateUtil.time() + "_" + id.toString();
|
|
|
+ String initTableName = "m_" + DateUtil.time() + "_" + id;
|
|
|
wbsTree.setInitTableName(initTableName);
|
|
|
wbsTree.setId(id);
|
|
|
|
|
@@ -238,13 +240,13 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
});
|
|
|
|
|
|
//新增元素
|
|
|
- list.stream().forEach(i -> {
|
|
|
+ list.forEach(i -> {
|
|
|
Long elementTableId = i.getId();
|
|
|
String tableName = i.getTableName();
|
|
|
String initTableName = i.getInitTableName();
|
|
|
final int[] keyNumb = {0};
|
|
|
|
|
|
- result2.stream().forEach(map -> {
|
|
|
+ result2.forEach(map -> {
|
|
|
if (tableName.equals(map.get("表名"))) {
|
|
|
keyNumb[0]++;
|
|
|
WbsFormElement wbsFormElement = new WbsFormElement();
|
|
@@ -409,7 +411,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
@Override
|
|
|
public List<WbsFormElementVO> selectFormElements(String id) {
|
|
|
List<WbsFormElementVO> wbsFormElements = wbsTreeMapper.selectFormElements(id);
|
|
|
- wbsFormElements.stream().forEach(elements -> {
|
|
|
+ wbsFormElements.forEach(elements -> {
|
|
|
String eAllowDeviation = elements.getEAllowDeviation();
|
|
|
//转义
|
|
|
String escapeChar = getEscapeChar(eAllowDeviation);
|
|
@@ -452,7 +454,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
wbsTree1.setProjectNodeId(wbsTree1.getId());
|
|
|
File file = WbsExcelUtil.convert(excelFile);
|
|
|
String canonicalPath = file.getCanonicalPath();
|
|
|
-
|
|
|
try {
|
|
|
//解析excel
|
|
|
WbsExcelUtil excelUtil = new WbsExcelUtil();
|
|
@@ -543,7 +544,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
}
|
|
|
|
|
|
WbsTree wbsTree = null;
|
|
|
-
|
|
|
//不重复 直接新增
|
|
|
if (wbsTrees.size() <= 0) {
|
|
|
wbsTreeZi.setStatus(1);
|
|
@@ -553,9 +553,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
wbsTreeZi.setIsConcrete(0);
|
|
|
wbsTreeZi.setIsExpernode(0);
|
|
|
}
|
|
|
-
|
|
|
} else {
|
|
|
-
|
|
|
//重复 判断是否为同一父节点,相同父节点跳过,不同新增
|
|
|
for (WbsTree tree : wbsTrees) {
|
|
|
if (wbsTreeZi.getDeptCategory() == 2 || wbsTreeZi.getDeptCategory() == 3
|
|
@@ -571,11 +569,9 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
wbsTree = tree;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
return wbsTree;
|
|
|
}
|
|
|
|
|
@@ -670,7 +666,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
.eq(WbsTreePrivate::getProjectId, pawDTO.getProjectId())
|
|
|
.eq(WbsTreePrivate::getType, 1)
|
|
|
);
|
|
|
- wbsTreePrivates.stream().forEach(wbsTreePrivate -> {
|
|
|
+ wbsTreePrivates.forEach(wbsTreePrivate -> {
|
|
|
idList2.add(String.valueOf(wbsTreePrivate.getId()));
|
|
|
});
|
|
|
}
|
|
@@ -682,7 +678,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
.eq(WbsTreePrivate::getProjectId, pawDTO.getProjectId())
|
|
|
.eq(WbsTreePrivate::getType, 1)
|
|
|
);
|
|
|
- wbsTreePrivates2.stream().forEach(wbsTreePrivate -> {
|
|
|
+ wbsTreePrivates2.forEach(wbsTreePrivate -> {
|
|
|
idList2.add(String.valueOf(wbsTreePrivate.getId()));
|
|
|
});
|
|
|
}
|
|
@@ -746,7 +742,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
//获取当前项目下所有施工合同段id
|
|
|
List<ContractInfo> contractInfoIds = contractInfoMapper.selectContractIdByProjectId(pawDTO.getProjectId());
|
|
|
//公有同步元素表
|
|
|
- diffRent1.stream().forEach(tableId -> {
|
|
|
+ diffRent1.forEach(tableId -> {
|
|
|
WbsTree wbsTree = wbsTreeMapper.selectById(tableId);
|
|
|
//判断当前新增的表在私有wbs中是否存在上级节点,存在表示可以新增,不存在表示不新增
|
|
|
WbsTreePrivate wbsTreePrivate1 = wbsTreePrivateMapper.selectOne(Wrappers.<WbsTreePrivate>query().lambda()
|
|
@@ -863,7 +859,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
//私有同步元素表
|
|
|
List<WbsTreePrivate> lists = new ArrayList<>();
|
|
|
|
|
|
- diffRent1.stream().forEach(tableId -> {
|
|
|
+ diffRent1.forEach(tableId -> {
|
|
|
List<WbsTreePrivate> wbsTreePrivates3 = wbsTreePrivateMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
|
|
|
.eq(WbsTreePrivate::getId, tableId)
|
|
|
.eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
@@ -873,7 +869,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
lists.addAll(wbsTreePrivates3);
|
|
|
});
|
|
|
|
|
|
- lists.stream().forEach(list -> {
|
|
|
+ lists.forEach(list -> {
|
|
|
//判断当前新增的表在私有wbs中是否存在上级节点,存在表示可以新增,不存在表示不新增
|
|
|
WbsTreePrivate wbsTreePrivate1 = wbsTreePrivateMapper.selectOne(Wrappers.<WbsTreePrivate>query().lambda()
|
|
|
.eq(WbsTreePrivate::getId, list.getParentId())
|
|
@@ -953,7 +949,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
|
|
|
if (wbsTreeContractList.size() > 0) {
|
|
|
List<ContractInfo> contractInfoArrayList = new ArrayList<>();
|
|
|
- wbsTreeContractList.stream().forEach(list -> {
|
|
|
+ wbsTreeContractList.forEach(list -> {
|
|
|
ContractInfo contractInfos = contractInfoMapper.selectOne(Wrappers.<ContractInfo>query().lambda()
|
|
|
.eq(ContractInfo::getId, list.getContractId())
|
|
|
);
|
|
@@ -976,7 +972,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
|
|
|
if (wbsTreeContractList.size() > 0) {
|
|
|
List<ContractInfo> contractInfoArrayList = new ArrayList<>();
|
|
|
- wbsTreeContractList.stream().forEach(list -> {
|
|
|
+ wbsTreeContractList.forEach(list -> {
|
|
|
ContractInfo contractInfos = contractInfoMapper.selectOne(Wrappers.<ContractInfo>query().lambda()
|
|
|
.eq(ContractInfo::getId, list.getContractId())
|
|
|
);
|
|
@@ -1020,7 +1016,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- addListData.stream().forEach(tree -> {
|
|
|
+ addListData.forEach(tree -> {
|
|
|
WbsTreePrivate wbsTreePrivate2 = getWbsTreePrivate1(tree, pawDTO);
|
|
|
insertData.add(wbsTreePrivate2);
|
|
|
});
|
|
@@ -1045,7 +1041,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- addListData.stream().forEach(tree -> {
|
|
|
+ addListData.forEach(tree -> {
|
|
|
WbsTreePrivate wbsTreePrivate2 = getWbsTreePrivate2(tree, pawDTO);
|
|
|
insertData2.add(wbsTreePrivate2);
|
|
|
});
|
|
@@ -1126,7 +1122,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
wbsTreePrivate.setCreateUser(wbsTree.getCreateUser());
|
|
|
wbsTreePrivate.setCreateDept(wbsTree.getCreateDept());
|
|
|
|
|
|
-
|
|
|
return wbsTreePrivate;
|
|
|
}
|
|
|
|
|
@@ -1167,6 +1162,8 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
wbsTreePrivate.setUpdateUser(wbsTree.getUpdateUser());
|
|
|
wbsTreePrivate.setCreateUser(wbsTree.getCreateUser());
|
|
|
wbsTreePrivate.setCreateDept(wbsTree.getCreateDept());
|
|
|
+ //引用私有wbs,同步清表id
|
|
|
+ wbsTreePrivate.setExcelId(wbsTree.getExcelId());
|
|
|
|
|
|
return wbsTreePrivate;
|
|
|
}
|
|
@@ -1271,7 +1268,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
|
|
|
&& (wbsFormElement.getELength() > 1000 || wbsFormElement.getELength() < 10)) {
|
|
|
throw new ServiceException("请输入正确的长度,该类型范围为10-1000");
|
|
|
}
|
|
|
- if ((wbsFormElement.getEType() == 2 || wbsFormElement.getEType() == 5 )
|
|
|
+ if ((wbsFormElement.getEType() == 2 || wbsFormElement.getEType() == 5)
|
|
|
&& (wbsFormElement.getELength() > 255 || wbsFormElement.getELength() < 10)) {
|
|
|
throw new ServiceException("请输入正确的长度,该类型范围为10-255");
|
|
|
}
|