|
|
|
@ -699,22 +699,34 @@ public class InvProductsTrService {
|
|
|
|
|
List<WarehouseEntity> temps;
|
|
|
|
|
temps = filterSupMaps.get(corpName);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) { //只有补采购入时才需要拆弹
|
|
|
|
|
List<WarehouseEntity> buildArray = new ArrayList<>();
|
|
|
|
|
Map<String, List<WarehouseEntity>> splitArray = new HashMap<>();
|
|
|
|
|
//开始过滤集采非集采产品
|
|
|
|
|
for (WarehouseEntity warehouseEntity : temps) {
|
|
|
|
|
UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(warehouseEntity.getRelId());
|
|
|
|
|
if (udiRelevanceEntity.isGroupBuy()) {
|
|
|
|
|
List<WarehouseEntity> single = new ArrayList<>();
|
|
|
|
|
single.add(warehouseEntity);
|
|
|
|
|
buildOrderEntity(orderEntity, bussinessChangeTypeEntity, single, bussinessTypeEntity);
|
|
|
|
|
String key = warehouseEntity.getRelId() + warehouseEntity.getBatchNo();
|
|
|
|
|
List<WarehouseEntity> warehouseEntities = splitArray.get(key);
|
|
|
|
|
if (CollUtil.isEmpty(warehouseEntities)) {
|
|
|
|
|
warehouseEntities = new ArrayList<>();
|
|
|
|
|
splitArray.put(key, warehouseEntities);
|
|
|
|
|
}
|
|
|
|
|
warehouseEntities.add(warehouseEntity);
|
|
|
|
|
} else {
|
|
|
|
|
buildArray.add(warehouseEntity);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (CollUtil.isNotEmpty(buildArray))
|
|
|
|
|
buildOrderEntity(orderEntity, bussinessChangeTypeEntity, buildArray, bussinessTypeEntity);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(splitArray)) {
|
|
|
|
|
for (String key : splitArray.keySet()) {
|
|
|
|
|
List<WarehouseEntity> warehouseEntities = splitArray.get(key);
|
|
|
|
|
buildOrderEntity(orderEntity, bussinessChangeTypeEntity, warehouseEntities, bussinessTypeEntity);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
buildOrderEntity(orderEntity, bussinessChangeTypeEntity, temps, bussinessTypeEntity);
|
|
|
|
|
}
|
|
|
|
|