From 659b0ed98c87b164b96ac43b3c0c8a7d2f975bf2 Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期五, 28 二月 2025 10:51:20 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService_Common.cs | 33 +++++++++++++++++++++------------ 1 files changed, 21 insertions(+), 12 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" index 2b083e1..3e875b8 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" @@ -26,7 +26,7 @@ public partial class LocationInfoService { - public Dt_LocationInfo? AssignLocation(string roadwayNo, int palletType, int warehouseId) + public Dt_LocationInfo? AssignLocation(string roadwayNo, int palletType, int warehouseId, string beRelocationCode = "", int heightType = 0) { Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == warehouseId); if (warehouse == null) @@ -51,11 +51,11 @@ return warehouse.WarehouseCode switch { - "HA57" => AssignLocation_BC(roadwayNo, palletType, palletTypeInfo), - "HA58" => AssignLocation_PP(roadwayNo, palletType, palletTypeInfo), - "HA152" => AssignLocation_GM(roadwayNo, palletType, palletTypeInfo), - "HA64" => AssignLocation_CSJ(roadwayNo, palletType, palletTypeInfo), - "闃荤剨浠�" => AssignLocation_ZH(roadwayNo, palletType, palletTypeInfo), + "HA57" => AssignLocation_BC(roadwayNo, palletType, palletTypeInfo, beRelocationCode, heightType), + "HA58" => AssignLocation_PP(roadwayNo, palletType, palletTypeInfo, beRelocationCode), + "HA152" => AssignLocation_GM(roadwayNo, palletType, palletTypeInfo, beRelocationCode), + "HA64" => AssignLocation_CSJ(roadwayNo, palletType, palletTypeInfo, beRelocationCode), + "闃荤剨浠�" => AssignLocation_ZH(roadwayNo, palletType, palletTypeInfo, beRelocationCode), "HA153" => AssignLocation(roadwayNo), "HA71" => AssignLocation(roadwayNo), "HA60" => AssignLocation(roadwayNo), @@ -167,7 +167,7 @@ Dt_LocationInfo? nearLocation = locationInfos.FirstOrDefault(x => x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column + 1); if(location.RoadwayNo == "SC01_BC") { - nearLocation = locationInfos.FirstOrDefault(x => x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column - 1); + nearLocation = locationInfos.FirstOrDefault(x => x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column + 1); } if (nearLocation != null) { @@ -341,9 +341,20 @@ nearLocation = locationInfos.FirstOrDefault(x => x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column - 1); } - if (location.RoadwayNo == "SC01_BC") + if (nearLocation!=null && location.RoadwayNo.Contains("BC")) + { + if (nearLocation?.LocationType == LocationTypeEnum.SmallPallet.ObjToInt()) + { + nearLocation = null; + } + } + if (location.RoadwayNo == "SC01_BC" && palletType != PalletTypeEnum.SmallPallet.ObjToInt()) { nearLocation = locationInfos.FirstOrDefault(x => x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column - 1); + if (nearLocation?.LocationType == LocationTypeEnum.SmallPallet.ObjToInt()) + { + nearLocation = null; + } } if (nearLocation != null) @@ -480,8 +491,7 @@ int row = location.Row; for (int j = location.Depth + 1; j <= maxDepth; j++) { - row += 1; - Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.Depth == j && x.Column == location.Column && x.Layer == location.Layer && x.Row == row); + Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.Depth == j && x.Column == location.Column && x.Layer == location.Layer && (x.Row == row + 1 || x.Row == row - 1)); if (locationInfo != null) { groupLocations.Add(locationInfo); @@ -490,8 +500,7 @@ for (int j = location.Depth - 1; j >= 1; j--) { - row -= 1; - Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.Depth == j && x.Column == location.Column && x.Layer == location.Layer && x.Row == row); + Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.Depth == j && x.Column == location.Column && x.Layer == location.Layer && (x.Row == row + 1 || x.Row == row - 1)); if (locationInfo != null) { groupLocations.Add(locationInfo); -- Gitblit v1.9.3