|
@@ -555,15 +555,9 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
|
|
|
public boolean syncTabData(String pKeyId) throws Exception {
|
|
|
WbsTreeContract node = baseMapper.selectOne(Wrappers.<WbsTreeContract>lambdaQuery().eq(WbsTreeContract::getPKeyId, pKeyId));
|
|
|
if (node != null) {
|
|
|
- //原始表
|
|
|
- Map<String, String> sgYsNodeMaps = new LinkedHashMap<>();
|
|
|
- Map<String, String> jlYsNodeMaps = new LinkedHashMap<>();
|
|
|
- //频率表
|
|
|
- Map<String, String> sgPLNodeMaps = new LinkedHashMap<>();
|
|
|
- Map<String, String> jlPLNodeMaps = new LinkedHashMap<>();
|
|
|
- //复制表
|
|
|
- Map<String, String> sgCopyNodeMaps = new LinkedHashMap<>();
|
|
|
- Map<String, String> jlCopyNodeMaps = new LinkedHashMap<>();
|
|
|
+ //表maps
|
|
|
+ Map<String, String> sgTabMaps = new LinkedHashMap<>();
|
|
|
+ Map<String, String> jlTabMaps = new LinkedHashMap<>();
|
|
|
|
|
|
List<WbsTreeContract> tabs = baseMapper.selectList(Wrappers.<WbsTreeContract>lambdaQuery().eq(WbsTreeContract::getParentId, node.getId())
|
|
|
.select(WbsTreeContract::getNodeName, WbsTreeContract::getTableOwner, WbsTreeContract::getPKeyId, WbsTreeContract::getInitTableName, WbsTreeContract::getSort, WbsTreeContract::getFullName, WbsTreeContract::getUpdateTime)
|
|
@@ -620,59 +614,23 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
for (WbsTreeContract wbsTreeContract : sgTabSort) {
|
|
|
- //if (wbsTreeContract.getOldId() == null && !wbsTreeContract.getNodeName().contains("_PL_")) {
|
|
|
//质检表
|
|
|
String s = extractAlphameric(wbsTreeContract.getNodeName());
|
|
|
if (StringUtils.isNotEmpty(s)) {
|
|
|
- sgYsNodeMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
+ sgTabMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
}
|
|
|
- /*} else {
|
|
|
- //复制表
|
|
|
- if (wbsTreeContract.getNodeName().contains("__")) {
|
|
|
- String s = extractAlphameric(wbsTreeContract.getNodeName());
|
|
|
- if (StringUtils.isNotEmpty(s)) {
|
|
|
- sgCopyNodeMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
- }
|
|
|
- }
|
|
|
- //原始频率表
|
|
|
- if (wbsTreeContract.getNodeName().contains("_PL_")) {
|
|
|
- String s = extractAlphameric(wbsTreeContract.getNodeName());
|
|
|
- if (StringUtils.isNotEmpty(s)) {
|
|
|
- sgPLNodeMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
- }
|
|
|
- }
|
|
|
- }*/
|
|
|
}
|
|
|
for (WbsTreeContract wbsTreeContract : jlTabSort) {
|
|
|
- //if (wbsTreeContract.getOldId() == null && !wbsTreeContract.getNodeName().contains("_PL_")) {
|
|
|
//监理表
|
|
|
String s = extractAlphameric(wbsTreeContract.getNodeName());
|
|
|
if (StringUtils.isNotEmpty(s)) {
|
|
|
- jlYsNodeMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
+ jlTabMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
}
|
|
|
- /*} else {
|
|
|
- //复制表
|
|
|
- if (wbsTreeContract.getNodeName().contains("__")) {
|
|
|
- String s = extractAlphameric(wbsTreeContract.getNodeName());
|
|
|
- if (StringUtils.isNotEmpty(s)) {
|
|
|
- jlCopyNodeMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
- }
|
|
|
- }
|
|
|
- //频率表
|
|
|
- if (wbsTreeContract.getNodeName().contains("_PL_")) {
|
|
|
- String s = extractAlphameric(wbsTreeContract.getNodeName());
|
|
|
- if (StringUtils.isNotEmpty(s)) {
|
|
|
- jlPLNodeMaps.put(s + "---" + wbsTreeContract.getPKeyId(), wbsTreeContract.getInitTableName());
|
|
|
- }
|
|
|
- }
|
|
|
- }*/
|
|
|
}
|
|
|
|
|
|
//构造表数据
|
|
|
List<InsertDataVO> resultData = new LinkedList<>();
|
|
|
- this.syncTabDataImpl(sgYsNodeMaps, jlYsNodeMaps, resultData);
|
|
|
- this.syncTabDataImpl(sgCopyNodeMaps, jlCopyNodeMaps, resultData);
|
|
|
- this.syncTabDataImpl(sgPLNodeMaps, jlPLNodeMaps, resultData);
|
|
|
+ this.syncTabDataImpl(sgTabMaps, jlTabMaps, resultData);
|
|
|
|
|
|
//入库处理
|
|
|
if (resultData.size() > 0) {
|
|
@@ -711,9 +669,11 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
|
|
|
if (!keysAll.contains(key)) {
|
|
|
continue; //如果key不在监理表keysAll中,就跳过
|
|
|
}
|
|
|
- keys.add(key);
|
|
|
- String data = vo.getData();
|
|
|
- values.add(data);
|
|
|
+ if (!keys.contains(key)) { //解决重复key值问题
|
|
|
+ keys.add(key);
|
|
|
+ String data = vo.getData();
|
|
|
+ values.add(data);
|
|
|
+ }
|
|
|
}
|
|
|
if (keys.size() > 0 && values.size() > 0 && keys.size() == values.size()) {
|
|
|
//delete SQL(删除旧数据,去重)
|
|
@@ -775,10 +735,11 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
|
|
|
String pKeyIdJL = splitJl[1];
|
|
|
String initTabNameJL = jlTab.getValue();
|
|
|
|
|
|
- String htmlStringJL = this.getHtmlString(pKeyIdJL);
|
|
|
-
|
|
|
- //表的代码名称相同,则复制数据,例如:G10=G10
|
|
|
+ //表的代码名称相同,就复制数据,例如:G10=G10
|
|
|
if (nodeNameRe.equals(nodeNameReJL)) {
|
|
|
+
|
|
|
+ String htmlStringJL = this.getHtmlString(pKeyIdJL);
|
|
|
+
|
|
|
//获取质检实体表对应数据
|
|
|
List<Map<String, Object>> mapsList = jdbcTemplate.queryForList("select * from " + initTabName + " where p_key_id = " + pKeyId);
|
|
|
if (mapsList.size() > 0) {
|