From 75e3bca44b111c167b9389e4e51b2ce577a9f9e0 Mon Sep 17 00:00:00 2001
From: 647556386 <647556386@qq.com>
Date: 星期日, 10 八月 2025 10:35:50 +0800
Subject: [PATCH] 优化更新
---
WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs | 44 +++++++++++++++++++++++++++++++++++++++-----
1 files changed, 39 insertions(+), 5 deletions(-)
diff --git a/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs b/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs
index 6fad4e6..24c04ad 100644
--- a/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs
+++ b/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Base/LocationInfoService.cs
@@ -216,16 +216,18 @@
EnableStatus = EnableStatusEnum.Normal.ObjToInt(),
Layer = k + 1,
LocationStatus = LocationStatusEnum.Free.ObjToInt(),
- LocationType = LocationTypeEnum.Cube.ObjToInt(),
+ //LocationType = LocationTypeEnum.Cube.ObjToInt(),
RoadwayNo = initializationLocationDTO.Roadway,
Row = i + 1,
+ Creater="WMS",
+ CreateDate = DateTime.Now,
};
if (initializationLocationDTO.IsSingleDepth)
{
locationInfo.Depth = 1;
- locationInfo.LocationCode = $"R{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}-{locationInfo.Row.ToString().PadLeft(3, '0')}-{locationInfo.Column.ToString().PadLeft(3, '0')}-{locationInfo.Layer.ToString().PadLeft(3, '0')}-{locationInfo.Depth.ToString().PadLeft(2, '0')}";
- locationInfo.LocationName = $"R{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}宸烽亾{locationInfo.Row.ToString().PadLeft(3, '0')}琛寋locationInfo.Column.ToString().PadLeft(3, '0')}鍒梴locationInfo.Layer.ToString().PadLeft(3, '0')}灞倇locationInfo.Depth.ToString().PadLeft(2, '0')}娣�";
+ locationInfo.LocationCode = $"{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}-{locationInfo.Row.ToString().PadLeft(3, '0')}-{locationInfo.Column.ToString().PadLeft(3, '0')}-{locationInfo.Layer.ToString().PadLeft(3, '0')}-{locationInfo.Depth.ToString().PadLeft(2, '0')}";
+ locationInfo.LocationName = $"{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}宸烽亾{locationInfo.Row.ToString().PadLeft(3, '0')}琛寋locationInfo.Column.ToString().PadLeft(3, '0')}鍒梴locationInfo.Layer.ToString().PadLeft(3, '0')}灞倇locationInfo.Depth.ToString().PadLeft(2, '0')}娣�";
}
else
{
@@ -237,8 +239,8 @@
{
locationInfo.Depth = 2;
}
- locationInfo.LocationCode = $"R{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}-{locationInfo.Row.ToString().PadLeft(3, '0')}-{locationInfo.Column.ToString().PadLeft(3, '0')}-{locationInfo.Layer.ToString().PadLeft(3, '0')}-{locationInfo.Depth.ToString().PadLeft(2, '0')}";
- locationInfo.LocationName = $"R{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}宸烽亾{locationInfo.Row.ToString().PadLeft(3, '0')}琛寋locationInfo.Column.ToString().PadLeft(3, '0')}鍒梴locationInfo.Layer.ToString().PadLeft(3, '0')}灞倇locationInfo.Depth.ToString().PadLeft(2, '0')}娣�";
+ locationInfo.LocationCode = $"{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}-{locationInfo.Row.ToString().PadLeft(3, '0')}-{locationInfo.Column.ToString().PadLeft(3, '0')}-{locationInfo.Layer.ToString().PadLeft(3, '0')}-{locationInfo.Depth.ToString().PadLeft(2, '0')}";
+ locationInfo.LocationName = $"{initializationLocationDTO.Roadway.ToString().PadLeft(2, '0')}宸烽亾{locationInfo.Row.ToString().PadLeft(3, '0')}琛寋locationInfo.Column.ToString().PadLeft(3, '0')}鍒梴locationInfo.Layer.ToString().PadLeft(3, '0')}灞倇locationInfo.Depth.ToString().PadLeft(2, '0')}娣�";
}
locationInfos.Add(locationInfo);
@@ -255,6 +257,38 @@
}
}
+
+ /// <summary>
+ /// 鑾峰彇涓嶅悓娣卞害鐨勫悓缁勮揣浣嶄俊鎭�
+ /// </summary>
+ /// <param name="location"></param>
+ /// <returns></returns>
+ public List<Dt_LocationInfo> GetGroupLocations(Dt_LocationInfo location)
+ {
+ List<Dt_LocationInfo> locationInfos = Repository.QueryData(x => x.RoadwayNo == location.RoadwayNo && x.WarehouseId == location.WarehouseId);
+
+ List<Dt_LocationInfo> groupLocations = new List<Dt_LocationInfo>() { location };
+ int maxDepth = locationInfos.Max(x => x.Depth);
+ 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));
+ if (locationInfo != null)
+ {
+ groupLocations.Add(locationInfo);
+ }
+ }
+
+ 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));
+ if (locationInfo != null)
+ {
+ groupLocations.Add(locationInfo);
+ }
+ }
+ return groupLocations;
+ }
public class LocationCache
{
public string LocationCode { get; set; }
--
Gitblit v1.9.3