wangxinhui
2025-11-15 c4885ceaf477654dc0d2c02c7235c6ca683e08d4
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/AssignLocation/LocationInfoService_BC.cs
@@ -72,8 +72,8 @@
                List<Dt_LocationInfo> undefinedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == LocationTypeEnum.Undefined.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList();
                List<Dt_LocationInfo> definedTypeEmptyLocations = locationInfos.Where(x => (x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() || x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == palletType.ObjToInt() && !lockLocationCodes.Contains(x.LocationCode)).OrderByDescending(x => x.Depth).ThenBy(x => x.Layer).ThenBy(x => x.Column).ThenBy(x => x.Row).ToList();
                if(heightType == 1)
                List<Dt_LocationInfo> _LocationInfos = definedTypeEmptyLocations;
                if (heightType == 1)
                {
                    undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x=>x.Layer <= 4).ToList();
                    definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => x.Layer <= 4).ToList();
@@ -93,7 +93,10 @@
                    undefinedTypeEmptyLocations = undefinedTypeEmptyLocations.Where(x => false).ToList();
                    definedTypeEmptyLocations = definedTypeEmptyLocations.Where(x => false).ToList();
                }
                if (heightType==1 && !definedTypeEmptyLocations.Any())
                {
                    definedTypeEmptyLocations = _LocationInfos.Where(x => x.Layer == 5).ToList();
                }
                if (palletTypeInfo.LocaitonCount == 2)
                {
                    if (roadwayNo != "SC01_BC")
@@ -124,7 +127,7 @@
                        }
                    }
                }
                if ((/*locationInfos.Count * weightValue_BC >= definedTypeLocations.Count &&*/ undefinedTypeEmptyLocations.Any()))//如果已定义类型货位未超过比例,且有未定义类型的货位
                if (undefinedTypeEmptyLocations.Any() && palletType!=PalletTypeEnum.SmallPallet.ObjToInt())//如果已定义类型货位未超过比例,且有未定义类型的货位
                {
                    if (palletTypeInfo.LocaitonCount == 2)
                    {