提交 d123bf87 authored 作者: 李炎's avatar 李炎

调整取多值覆盖问题

上级 ced0e704
......@@ -32,8 +32,8 @@ public class KingDeeCommonSyncConstants {
List<KingDeeCommonConfigListOutVoRecords> recordsList = kingDeeCommonConfigMapper.kingDeeCommonConfigList(3);
this.map = GetMap(recordsList);
}
public Map<Integer, Map<String, Map<String, String>>> GetMap(List<KingDeeCommonConfigListOutVoRecords> recordsList) {
Map<Integer, Map<String, Map<String, String>>> map = new ConcurrentHashMap<>();
if (!CollectionUtils.isEmpty(recordsList)) {
......@@ -52,10 +52,10 @@ public class KingDeeCommonSyncConstants {
}
}
}
return map;
}
public List<Map<String, String>> get(String sFormId) {
List<Map<String, String>> configList = new ArrayList<>();
for (Map.Entry<Integer, Map<String, Map<String, String>>> entry : this.map.entrySet()) {
......@@ -115,7 +115,18 @@ public class KingDeeCommonSyncConstants {
/**
* 封装第三方字段
*/
public static void encapsulationThirdPartyField(List<List<Object>> list, List<Map<String, String>> fieldList, Map<String, Object> map, List<Map<String, Object>> imsList) {
public static void encapsulationThirdPartyField(List<Object> entry, List<Map<String, String>> fieldList, Map<String, Object> map, List<Map<String, Object>> imsList) {
for (int i = 0; i < fieldList.size(); i++) {
map.put(fieldList.get(i).get("thirdPartyField"), entry.get(i));
}
}
/**
* 封装第三方字段,有覆盖风险遗弃
*/
@Deprecated
public static void encapsulationThirdPartyFieldOld(List<List<Object>> list, List<Map<String, String>> fieldList, Map<String, Object> map, List<Map<String, Object>> imsList) {
for (List<Object> objectList : list) {
for (int i = 0; i < fieldList.size(); i++) {
map.put(fieldList.get(i).get("thirdPartyField"), objectList.get(i));
......
......@@ -37,10 +37,11 @@ public class KingDeeCommonGetApi {
if (!CollectionUtils.isEmpty(list)) {
String errorName = "Errors";
if (!list.get(0).get(0).toString().contains(errorName)) {
Map<String, Object> map = new HashMap<>(fieldList.size());
List<Map<String, Object>> tempList = new ArrayList<>();
KingDeeCommonSyncConstants.encapsulationThirdPartyField(list, fieldList, map, tempList);
KingDeeCommonSyncConstants.encapsulationThirdPartyFieldOld(list, fieldList, map, tempList);
if (StringUtil.isNotBlank(mesEntryName)) {
map.put(mesEntryName, tempList);
......
......@@ -48,26 +48,29 @@ public class KingDeeCommonSyncApi {
private List<Map<String, Object>> encapsulationIms(String mesEntryName, String queueId, List<List<Object>> list, List<Map<String, String>> fieldList) {
List<Map<String, Object>> result = new ArrayList<>();
if (!CollectionUtils.isEmpty(list)) {
String errorName = "Errors";
if (!list.get(0).get(0).toString().contains(errorName)) {
Map<String, Object> map = new HashMap<>(fieldList.size());
List<Map<String, Object>> mesList = new ArrayList<>();
map.put("QUEUE_ID", queueId);
for (List<Object> entry : list) {
Map<String, Object> map = new HashMap<>(fieldList.size());
List<Map<String, Object>> mesList = new ArrayList<>();
map.put("QUEUE_ID", queueId);
KingDeeCommonSyncConstants.encapsulationThirdPartyField(list, fieldList, map, mesList);
KingDeeCommonSyncConstants.encapsulationThirdPartyField(entry, fieldList, map, mesList);
if (!CollectionUtils.isEmpty(mesList)) {
map.put(mesEntryName, mesList);
if (!CollectionUtils.isEmpty(mesList)) {
map.put(mesEntryName, mesList);
}
result.add(map);
}
result.add(map);
} else {
//如果有错误信息则返回
String message = KingDeeUtil.getMessage(list.get(0).get(0));
Map<String, Object> resultMap = new HashMap<>(1);
resultMap.put("false", message);
result.add(resultMap);
}
} else {
//如果有错误信息则返回
String message = KingDeeUtil.getMessage(list.get(0).get(0));
Map<String, Object> resultMap = new HashMap<>(1);
resultMap.put("false", message);
result.add(resultMap);
}
return result;
}
......
......@@ -50,6 +50,7 @@ public class KingDeeCommonSyncServiceImpl implements IKingDeeCommonSyncService {
System.out.println("entryId"+entryId);
//查询表单配置
List<Map<String, String>> configList = kingDeeCommonSyncConstants.get(sFormId);
System.out.println("configList==="+configList);
if (CollectionUtils.isEmpty(configList)) {
synchronizationRecordsMapper.synchronizationRecordsUpdate(new SynchronizationRecordsUpdateInVo(id, SnowFlakeIdUtil.generateId().toString(), "sFormId为: " + sFormId + " 的表单配置不存在", 2));
return;
......
......@@ -12,8 +12,8 @@ spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/db_integrate?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true&useAffectedRows=true
username: inori
password: inori
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.zaxxer.hikari.HikariDataSource
hikari:
......
spring:
profiles:
active: docker
active: test
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论