Browse Source

1.优化批量入库逻辑

dev
zhenghaoyu 2 weeks ago
parent
commit
bf0fede48b
  1. 14
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java

14
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java

@ -776,10 +776,22 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl<TrunklineAdvanc
//提取出advanceDetailEntities所有元素的advanceId存入Set
Set<Long> advanceIdSet = advanceDetailEntities.stream().map(TrunklineAdvanceDetailEntity::getAdvanceId).collect(Collectors.toSet());
List<TrunklineAdvanceEntity> advanceEntityList = findListByIds(new ArrayList<>(advanceIdSet));
//把advanceEntityList以orderCode为key的Map,如果value是多个只取第一个
Map<String, TrunklineAdvanceEntity> advanceEntityMap = new HashMap<>();
if (!advanceEntityList.isEmpty()) {
advanceEntityMap = advanceEntityList.stream().collect(Collectors.toMap(TrunklineAdvanceEntity::getOrderCode, Function.identity()));
//把advanceEntityList以orderCode进行分组
// Map<String, List<TrunklineAdvanceEntity>> groupedByOrderCode = advanceEntityList.stream()
// .collect(Collectors.groupingBy(TrunklineAdvanceEntity::getOrderCode));
// advanceEntityMap = advanceEntityList.stream().collect(Collectors.toMap(TrunklineAdvanceEntity::getOrderCode, Function.identity()));
advanceEntityMap = advanceEntityList.stream()
.collect(Collectors.toMap(
TrunklineAdvanceEntity::getOrderCode,
entity -> entity,
(existing, replacement) -> existing // 只保留第一个
));
}

Loading…
Cancel
Save