From 9ce6731460179c71f0f2c636b2a1598324d5194e Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期六, 20 九月 2025 15:16:48 +0800 Subject: [PATCH] 最新代码更新 --- 项目代码/WMS/WMSServices/WIDESEA_BasicService/Service/LocationInfoService_Common.cs | 178 +++++------------------------------------------------------ 1 files changed, 15 insertions(+), 163 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" index 4d4397a..f0a60d1 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/Service/LocationInfoService_Common.cs" @@ -76,7 +76,7 @@ Dictionary<string, OrderByType> orderBy = new Dictionary<string, OrderByType>() { - { nameof(Dt_LocationInfo.Column),OrderByType.Desc }, + { nameof(Dt_LocationInfo.Columns),OrderByType.Desc }, { nameof(Dt_LocationInfo.Layer),OrderByType.Asc }, { nameof(Dt_LocationInfo.Depth),OrderByType.Desc }, { nameof(Dt_LocationInfo.Row),OrderByType.Asc } @@ -85,6 +85,10 @@ return BaseDal.QueryFirst(x => x.RoadwayNo == roadwayNo && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.EnableStatus != EnableStatusEnum.Disable.ObjToInt() && !lockLocations.Contains(x.LocationCode), orderBy);//鏌ヨ绌鸿揣浣嶄俊鎭苟鎺掗櫎5鍒嗛挓鍐呭垎閰嶇殑璐т綅,鏍规嵁灞傘�佸垪銆佹繁搴︺�佽鎺掑簭 } } + /// <summary> + /// 鍘熸枡鍒嗛厤璐т綅 + /// </summary> + /// <returns></returns> public Dt_LocationInfo? AssignLocationYL(string roadwayNo, Dt_PalletTypeInfo palletTypeInfo) { lock (_AssignLocationYL) @@ -102,7 +106,7 @@ Dictionary<string, OrderByType> orderBy = new Dictionary<string, OrderByType>() { - { nameof(Dt_LocationInfo.Column),OrderByType.Desc }, + { nameof(Dt_LocationInfo.Columns),OrderByType.Desc }, { nameof(Dt_LocationInfo.Layer),OrderByType.Asc }, { nameof(Dt_LocationInfo.Depth),OrderByType.Desc }, { nameof(Dt_LocationInfo.Row),OrderByType.Asc } @@ -124,11 +128,12 @@ Dt_LocationInfo? nearLocation1; Dt_LocationInfo? nearLocation2; - nearLocation1 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.Row == item.Row && x.Layer == item.Layer && x.Depth == item.Depth && x.Column == item.Column - 1); - nearLocation2 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.Row == item.Row && x.Layer == item.Layer && x.Depth == item.Depth && x.Column == item.Column + 1); + nearLocation1 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.Row == item.Row && x.Layer == item.Layer && x.Depth == item.Depth && x.Columns == item.Columns - 1); + nearLocation2 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.Row == item.Row && x.Layer == item.Layer && x.Depth == item.Depth && x.Columns == item.Columns + 1); if (nearLocation1!=null && nearLocation2!=null) { locationInfo = item; + break; } } return locationInfo; @@ -157,159 +162,6 @@ UpdateLocationStatus(location, palletType, locationStatus, warehousId); } - /// <summary> - /// 淇敼璐т綅鐘舵�佸強绫诲瀷 - /// </summary> - /// <param name="location">璐т綅瀵硅薄</param> - /// <param name="palletType">鎵樼洏绫诲瀷</param> - /// <param name="locationStatus">璐т綅鐘舵��</param> - //public void UpdateLocationStatus2(Dt_LocationInfo location, int palletType, LocationStatusEnum locationStatus, int warehousId) - //{ - // List<Dt_LocationInfo> locationInfos = Repository.QueryData(x => x.RoadwayNo == location.RoadwayNo); - - // List<Dt_LocationInfo> locations = GetGroupLocations(locationInfos, location); - // if (locationInfos.Max(x => x.Depth) < 3) - // { - // for (int i = 0; i < locations.Count; i++) - // { - // if (locations[i].LocationType != palletType.ObjToInt()) - // { - // locations[i].LocationType = palletType.ObjToInt(); - // } - - // if (locations[i].LocationCode == location.LocationCode) - // { - // locations[i].LocationStatus = locationStatus.ObjToInt(); - // } - // else - // { - // if (locationStatus == LocationStatusEnum.Lock) - // { - // if (locations[i].LocationStatus == LocationStatusEnum.InStock.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.InStockLock.ObjToInt(); - // } - // else if (locations[i].LocationStatus == LocationStatusEnum.Free.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.FreeLock.ObjToInt(); - // } - // } - // else if (locationStatus == LocationStatusEnum.Free || locationStatus == LocationStatusEnum.InStock) - // { - // if (locations[i].LocationStatus == LocationStatusEnum.InStockLock.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.InStock.ObjToInt(); - // } - // else if (locations[i].LocationStatus == LocationStatusEnum.FreeLock.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.Free.ObjToInt(); - // } - // } - // } - // } - - // 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); - // } - // if (nearLocation != null) - // { - // List<Dt_LocationInfo> nearLocations = GetGroupLocations(locationInfos, nearLocation); - // for (int i = 0; i < nearLocations.Count; i++) - // { - // if (nearLocations[i].LocationType != palletType.ObjToInt()) - // { - // nearLocations[i].LocationType = palletType.ObjToInt(); - // } - - // if (palletType.ObjToInt() >= PalletTypeEnum.LargePallet.ObjToInt()) - // { - // if (nearLocations[i].LocationCode == nearLocation.LocationCode) - // { - // nearLocations[i].LocationStatus = locationStatus.ObjToInt(); - // } - // else - // { - // if (locationStatus == LocationStatusEnum.Lock) - // { - // if (nearLocations[i].LocationStatus == LocationStatusEnum.InStock.ObjToInt()) - // { - // nearLocations[i].LocationStatus = LocationStatusEnum.InStockLock.ObjToInt(); - // } - // else if (nearLocations[i].LocationStatus == LocationStatusEnum.Free.ObjToInt()) - // { - // nearLocations[i].LocationStatus = LocationStatusEnum.FreeLock.ObjToInt(); - // } - // } - // else if (locationStatus == LocationStatusEnum.InStock) - // { - // if (nearLocations[i].LocationStatus == LocationStatusEnum.InStockLock.ObjToInt()) - // { - // nearLocations[i].LocationStatus = LocationStatusEnum.InStock.ObjToInt(); - // } - // else if (nearLocations[i].LocationStatus == LocationStatusEnum.FreeLock.ObjToInt()) - // { - // nearLocations[i].LocationStatus = LocationStatusEnum.Free.ObjToInt(); - // } - // } - // } - // } - - // } - // locations.AddRange(nearLocations); - // } - // } - // else - // { - // for (int i = 0; i < locations.Count; i++) - // { - // if (locations[i].LocationCode == location.LocationCode) - // { - // locations[i].LocationStatus = locationStatus.ObjToInt(); - // } - // else - // { - // if (locationStatus == LocationStatusEnum.Lock) - // { - // if (locations[i].LocationStatus == LocationStatusEnum.InStock.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.InStockLock.ObjToInt(); - // } - // else if (locations[i].LocationStatus == LocationStatusEnum.Free.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.FreeLock.ObjToInt(); - // } - // } - // else if (locationStatus == LocationStatusEnum.Free || locationStatus == LocationStatusEnum.InStock) - // { - // if (locations[i].LocationStatus == LocationStatusEnum.InStockLock.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.InStock.ObjToInt(); - // } - // else if (locations[i].LocationStatus == LocationStatusEnum.FreeLock.ObjToInt()) - // { - // locations[i].LocationStatus = LocationStatusEnum.Free.ObjToInt(); - // } - // } - // } - // if (locations[i].LocationType != palletType.ObjToInt()) - // { - // locations[i].LocationType = palletType.ObjToInt(); - // } - // } - // } - - // if (locations.Where(x => x.LocationStatus == LocationStatusEnum.Free.ObjToInt()).Count() == locations.Count && locationStatus == LocationStatusEnum.Free) - // { - // locations.ForEach(x => - // { - // x.LocationType = 0; - // }); - // } - - // Repository.UpdateData(locations); - //} public void UpdateLocationStatus(Dt_LocationInfo location, int palletType, LocationStatusEnum locationStatus, int warehouseId) { @@ -373,8 +225,8 @@ Dt_LocationInfo? nearLocation1; Dt_LocationInfo? nearLocation2; - nearLocation1 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column - 1); - nearLocation2 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Column == location.Column + 1); + nearLocation1 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Columns == location.Columns - 1); + nearLocation2 = locationInfos.FirstOrDefault(x => x.LocationType == LocationTypeEnum.SmallPallet.ObjToInt() && x.Row == location.Row && x.Layer == location.Layer && x.Depth == location.Depth && x.Columns == location.Columns + 1); if (nearLocation1 != null && nearLocation2 != null) @@ -462,7 +314,7 @@ 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.Columns == location.Columns && x.Layer == location.Layer && x.Row == row); if (locationInfo != null) { groupLocations.Add(locationInfo); @@ -472,7 +324,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.Columns == location.Columns && x.Layer == location.Layer && x.Row == row); if (locationInfo != null) { groupLocations.Add(locationInfo); @@ -495,7 +347,7 @@ int row = location.Row; for (int j = location.Depth + 1; j <= maxDepth; j++) { - 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)); + Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.Depth == j && x.Columns == location.Columns && x.Layer == location.Layer && (x.Row == row + 1 || x.Row == row - 1)); if (locationInfo != null) { groupLocations.Add(locationInfo); @@ -504,7 +356,7 @@ for (int j = location.Depth - 1; j >= 1; j--) { - 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)); + Dt_LocationInfo? locationInfo = locationInfos.FirstOrDefault(x => x.Depth == j && x.Columns == location.Columns && x.Layer == location.Layer && (x.Row == row + 1 || x.Row == row - 1)); if (locationInfo != null) { groupLocations.Add(locationInfo); -- Gitblit v1.9.3