From 00e64cba66377cb75c9c947908627fe9f631746e Mon Sep 17 00:00:00 2001
From: Admin <Admin@ADMIN>
Date: 星期三, 21 一月 2026 13:53:14 +0800
Subject: [PATCH] '手动上传'
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/LocationInfoService.cs | 59 ++++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 48 insertions(+), 11 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/LocationInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/LocationInfoService.cs"
index c03fd0e..2b89e47 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/LocationInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/LocationInfoService.cs"
@@ -163,7 +163,7 @@
public string AccessingTunnel(int WarehouseId, int LocationType)
{
List<Dt_LocationInfo> locationData = BaseDal.QueryData(x => x.WarehouseId == WarehouseId);
- var roadwayGroups = locationData.Where(x => x.LocationType == LocationType && x.EnableStatus== (int)EnableEnum.Enable).GroupBy(x => x.RoadwayNo)
+ var roadwayGroups = locationData.Where(x => x.LocationType == LocationType && x.EnableStatus== (int)EnableStatusEnum.Normal).GroupBy(x => x.RoadwayNo)
.Select(g => new
{
RoadwayNo = g.Key,
@@ -176,22 +176,21 @@
if (LocationType == 2) minRequired = 6;
var selectedRoadway = roadwayGroups.FirstOrDefault(g => g.LocationCount >= minRequired);
- return selectedRoadway.RoadwayNo;
+ if(selectedRoadway!=null) return selectedRoadway.RoadwayNo;
+
}
else
{
var selectedRoadway = roadwayGroups.FirstOrDefault(g => g.LocationCount >= minRequired);
- if(selectedRoadway != null)
+ if(selectedRoadway == null)
{
- return selectedRoadway.RoadwayNo;
+ selectedRoadway = roadwayGroups.FirstOrDefault(g => g.RoadwayNo == "5" && g.LocationCount != 0);
}
- else
- {
- selectedRoadway = roadwayGroups.FirstOrDefault(g => g.RoadwayNo =="5" && g.LocationCount != 0);
- }
- return selectedRoadway.RoadwayNo;
+ if(selectedRoadway != null) return selectedRoadway.RoadwayNo;
}
+
+ return "0";
}
@@ -227,7 +226,8 @@
if (emptyLocations[i].Depth == 1)//鍒ゆ柇鏄惁1娣辫揣浣�
{
//鏌ヨ娣卞簱浣�
- int emprow = emptyLocations[i].Row == 2 ? 1 : 4;
+ //int emprow = emptyLocations[i].Row == 2 ? 1 : 4;
+ int emprow = judgmentRow(emptyLocations[i].RoadwayNo,emptyLocations[i].Row);
Dt_LocationInfo? sencondDepthLocationShen = emptyLocations.FirstOrDefault(x => x.Row == emprow && x.Layer == emptyLocations[i].Layer && x.Column == emptyLocations[i].Column);
if (sencondDepthLocationShen != null && sencondDepthLocationShen.LocationStatus == LocationStatusEnum.Free.ObjToInt())
@@ -242,13 +242,18 @@
{
locationCaches.Add(new LocationCache { DateTime = DateTime.Now, LocationCode = emptyLocations[i].LocationCode });
return emptyLocations[i];
+ }else if (emptyLocations[i].RoadwayNo=="5" && emptyLocations[i].LocationStatus == LocationStatusEnum.Free.ObjToInt())
+ {
+ locationCaches.Add(new LocationCache { DateTime = DateTime.Now, LocationCode = emptyLocations[i].LocationCode });
+ return emptyLocations[i];
}
}
}
else
{
//鏌ヨ2娣辫揣浣嶅搴旂殑1娣辫揣浣嶆槸鍚︿负绌�
- int emprow = emptyLocations[i].Row == 4 ? 3 : 2;
+ //int emprow = emptyLocations[i].Row == 4 ? 3 : 2;
+ int emprow = judgmentRow(emptyLocations[i].RoadwayNo, emptyLocations[i].Row);
Dt_LocationInfo? sencondDepthLocationQian = emptyLocations.FirstOrDefault(x => x.Row == emprow && x.Layer == emptyLocations[i].Layer && x.Column == emptyLocations[i].Column);
if (sencondDepthLocationQian != null && sencondDepthLocationQian.LocationStatus == LocationStatusEnum.Free.ObjToInt())
@@ -262,6 +267,38 @@
}
}
+ private int judgmentRow(string RoadwayNo, int locrow)
+ {
+ if (RoadwayNo == "1" || RoadwayNo == "3")
+ {
+ if(locrow==1 || locrow == 4)
+ {
+ return locrow == 1 ? 2 : 3;
+ }
+ else
+ {
+ return locrow == 2 ? 1 : 4;
+ }
+
+ }
+ else if (RoadwayNo == "2" || RoadwayNo == "4")
+ {
+ if (locrow == 5 || locrow == 8)
+ {
+ return locrow == 5 ? 6 : 7;
+ }
+ else
+ {
+ return locrow == 6 ? 5 : 8;
+ }
+
+ }
+ else
+ {
+ return 0;
+ }
+ }
+
public class LocationCache
{
public string LocationCode { get; set; }
--
Gitblit v1.9.3