yangys
2024-03-28 23a939ed820ee32f9a4309f9c81b7bab5a566f30
smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/MaterialStorageServiceImpl.java
@@ -41,47 +41,11 @@
import org.springframework.web.multipart.MultipartFile;
@Service
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/service/impl/MaterialStorageServiceImpl.class */
public class MaterialStorageServiceImpl extends BladeServiceImpl<MaterialStorageMapper, MaterialStorage> implements IMaterialStorageService {
    private final IWarehouseStationService warehouseStationService;
    private final IMaterialService materialService;
    private final OssBuilder ossBuilder;
    private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) {
        String implMethodName = lambda.getImplMethodName();
        boolean z = true;
        switch (implMethodName.hashCode()) {
            case -75622813:
                if (implMethodName.equals("getCode")) {
                    z = true;
                    break;
                }
                break;
            case 1929248666:
                if (implMethodName.equals("getWarehouseCode")) {
                    z = false;
                    break;
                }
                break;
        }
        switch (z) {
            case false:
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/WarehouseStation") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getWarehouseCode();
                    };
                }
                break;
            case true:
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/cps/entity/Material") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getCode();
                    };
                }
                break;
        }
        throw new IllegalArgumentException("Invalid lambda deserialization");
    }
    public MaterialStorageServiceImpl(final IWarehouseStationService warehouseStationService, final IMaterialService materialService, final OssBuilder ossBuilder) {
        this.warehouseStationService = warehouseStationService;
@@ -99,7 +63,7 @@
        List<Long> materialIds = vo.getMaterialIds();
        Long warehouseStationId = vo.getWarehouseStationId();
        if (Func.isNotEmpty(materialIds)) {
            List<MaterialStorage> storages = (List) materialIds.stream().map(c -> {
            List<MaterialStorage> storages = materialIds.stream().map(c -> {
                return convert(c, warehouseStationId);
            }).collect(Collectors.toList());
            saveBatch(storages);
@@ -122,7 +86,7 @@
        Map<String, Material> materialMap = new HashMap<>(rawData.size());
        getMaterialStorage(rawData, warehouseStationMap, materialMap);
        List<MaterialStorage> materialStorageList = list();
        Set<Long> materialIds = (Set) materialStorageList.stream().map((v0) -> {
        Set<Long> materialIds = materialStorageList.stream().map((v0) -> {
            return v0.getMaterialId();
        }).collect(Collectors.toSet());
        List<MaterialStorageImport> failExcel = Lists.newArrayList();
@@ -229,37 +193,46 @@
    }
    private void getMaterialStorage(List<MaterialStorageImport> rawData, Map<String, WarehouseStation> warehouseStationMap, Map<String, Material> materialMap) {
        Wrapper lambdaQuery = Wrappers.lambdaQuery();
        //Wrapper lambdaQuery = Wrappers.lambdaQuery();
        LambdaQueryWrapper<WarehouseStation> warehouseQuery = Wrappers.lambdaQuery();
        boolean flag1 = false;
        boolean flag2 = false;
        Wrapper lambdaQuery2 = Wrappers.lambdaQuery();
       // MaterialStorage t;
        //t.getWarehouseStationId()
        //Wrapper lambdaQuery2 = Wrappers.lambdaQuery();
        LambdaQueryWrapper<Material> materialQuery = Wrappers.lambdaQuery();
        for (MaterialStorageImport data : rawData) {
            if (requiredLocation(data)) {
                if (flag1) {
                    lambdaQuery.or();
                   warehouseQuery.or();
                }
                flag1 = true;
                lambdaQuery.nested(i -> {
                warehouseQuery.nested(i -> i.eq(WarehouseStation::getWarehouseCode, data.getLocationCode()));
                /*
                warehouseQuery.nested(i -> {
                    LambdaQueryWrapper lambdaQueryWrapper = (LambdaQueryWrapper) i.eq((v0) -> {
                        return v0.getWarehouseCode();
                    }, data.getLocationCode());
                });
                });*/
            }
            if (requiredMaterial(data)) {
                if (flag2) {
                    lambdaQuery2.or();
                   materialQuery.or();
                }
                flag2 = true;
                lambdaQuery2.nested(i2 -> {
                    LambdaQueryWrapper lambdaQueryWrapper = (LambdaQueryWrapper) i2.eq((v0) -> {
                materialQuery.nested(i -> i.eq(Material::getCode, data.getMaterialCode()));
                /*
                materialQuery.nested(i2 -> {
                    LambdaQueryWrapper lambdaQueryWrapper = i2.eq((v0) -> {
                        return v0.getCode();
                    }, data.getMaterialCode());
                });
                });*/
            }
        }
        String sqlSegment1 = lambdaQuery.getSqlSegment();
        String sqlSegment1 = warehouseQuery.getSqlSegment();
        if (Func.isNotBlank(sqlSegment1)) {
            List<WarehouseStation> warehouseStations = this.warehouseStationService.list(lambdaQuery);
            List<WarehouseStation> warehouseStations = this.warehouseStationService.list(warehouseQuery);
            if (Func.isNotEmpty(warehouseStations)) {
                Map<String, WarehouseStation> map1 = (Map) warehouseStations.stream().collect(Collectors.toMap((v0) -> {
                    return v0.getWarehouseCode();
@@ -269,15 +242,11 @@
                warehouseStationMap.putAll(map1);
            }
        }
        String sqlSegment2 = lambdaQuery2.getSqlSegment();
        String sqlSegment2 = materialQuery.getSqlSegment();
        if (Func.isNotBlank(sqlSegment2)) {
            List<Material> materials = this.materialService.list(lambdaQuery2);
            List<Material> materials = this.materialService.list(materialQuery);
            if (Func.isNotEmpty(materials)) {
                Map<String, Material> map2 = (Map) materials.stream().collect(Collectors.toMap((v0) -> {
                    return v0.getCode();
                }, v2 -> {
                    return v2;
                }));
                Map<String, Material> map2 = materials.stream().collect(Collectors.toMap(Material::getCode, v -> v));
                materialMap.putAll(map2);
            }
        }