From b174ea476eb1afd872985b2c261241a814e0185d Mon Sep 17 00:00:00 2001
From: xiaojiao <xiaojiao@kaokeziliao.com>
Date: 星期四, 12 三月 2026 09:55:27 +0800
Subject: [PATCH] 一次大的提交,涉及,wms,wcs,pda
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA.Services/Common/GetEmptyLocationAction.cs | 58 +++++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 39 insertions(+), 19 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA.Services/Common/GetEmptyLocationAction.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA.Services/Common/GetEmptyLocationAction.cs"
index f7a4b94..3e73695 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA.Services/Common/GetEmptyLocationAction.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA.Services/Common/GetEmptyLocationAction.cs"
@@ -31,6 +31,19 @@
List<Dt_taskinfo> inboundTask = Dt_taskinfoRepository.Instance.Find(r => r.task_type.Contains("Inbound"));
List<int> listLayer = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8 };
+
+ //// 鏇存敼鑾峰彇璐т綅鐨勪俊鎭� 杩欓噷瑕佸啓涓�涓惊鐜�
+ //List<Dt_taskinfo> outboundTask_temp = Dt_taskinfoRepository.Instance.Find(x => x.task_tolocationid == "10301" || x.task_endstation == "10301");
+ //if (outboundTask_temp != null)
+ //{
+ // string temp_layer = "";
+
+ // foreach (var item in outboundTask_temp)
+ // {
+
+ // }
+ //}
+
if (null != inboundTask && inboundTask.Count > 0)
{
foreach (var item in inboundTask)
@@ -44,24 +57,34 @@
listLayer.Remove(layer);
}
}
- //List<string> fromStation = inboundTask.Select(r => r.task_tolocationid).ToList();
- //foreach (var item in fromStation)
- //{
- // string[] location = item.Split('-');
- // //鑾峰彇褰撳墠鏈変换鍔$殑灞�
- // int layer = int.Parse(location[0]);
- // listLayer.Remove(layer);
- //}
}
- List<Dt_taskinfo> outboundTask = Dt_taskinfoRepository.Instance.Find(r => ((r.task_type == TaskType.TaskType_Box_Pallet_Measure_Out.ToString() /*|| r.task_type == TaskType.TaskType_CheckOutbound.ToString()*/)
- &&
- (r.task_state.Equals(TaskState.TaskState_RGV_Received.ToString()) || r.task_state.Equals(TaskState.TaskState_RGV_Finished.ToString())))
- || r.task_type == TaskType.TaskType_Box_Pallet_Measure_Back.ToString());
+ // List<Dt_taskinfo> outboundTask = Dt_taskinfoRepository.Instance.Find(r => ((r.task_type == TaskType.TaskType_Box_Pallet_Measure_Out.ToString())
+ // && (r.task_state.Equals(TaskState.TaskState_RGV_Received.ToString()) || r.task_state.Equals(TaskState.TaskState_RGV_Finished.ToString())))
+ //|| r.task_type == TaskType.TaskType_Box_Pallet_Measure_Back.ToString());
+
+ List<Dt_taskinfo> outboundTask = Dt_taskinfoRepository.Instance.Find(r => ((r.task_type == TaskType.TaskType_Box_Pallet_Measure_Out.ToString())
+ && (r.task_state == TaskState.TaskState_RGV_Received.ToString() || r.task_state == TaskState.TaskState_RGV_Finished.ToString()))
+ || r.task_type == TaskType.TaskType_Box_Pallet_Measure_Back.ToString());
+
+ //List<Dt_taskinfo> outboundTask = Dt_taskinfoRepository.Instance.Find(r =>(r.task_type == TaskType.TaskType_Box_Pallet_Measure_Out.ToString() || r.task_type == TaskType.TaskType_Box_Pallet_Measure_Back.ToString())
+ //&& (r.task_state != TaskState.TaskState_Create.ToString()));
+
+ //if (outboundTask.Count < 3)
+ //{
+ // int crtacount = 3 - outboundTask.Count;
+ // List<Dt_taskinfo> outboundcCrteateTask = Dt_taskinfoRepository.Instance.Find(r => r.task_type == TaskType.TaskType_Box_Pallet_Measure_Out.ToString()
+ //&& r.task_state == TaskState.TaskState_Create.ToString()).OrderBy(r=>r.task_createtime).Take(crtacount).ToList();
+
+ // outboundTask.AddRange(outboundcCrteateTask);
+ //}
+
if (null != outboundTask && outboundTask.Count > 0)
{
- List<string> fromStation = outboundTask.Select(r => r.task_fromlocationid).ToList();
+ List<string> fromStation = outboundTask.Where(r=>r.task_type == TaskType.TaskType_Box_Pallet_Measure_Out.ToString()).Select(r => r.task_fromlocationid).ToList();
+ fromStation.AddRange(outboundTask.Where(r => r.task_type == TaskType.TaskType_Box_Pallet_Measure_Back.ToString()).Select(r => r.task_tolocationid).ToList());
+
foreach (var item in fromStation)
{
string[] location = item.Split('-');
@@ -70,6 +93,8 @@
listLayer.Remove(layer);
}
}
+
+
List<int> rgvLayer = new List<int>();
WebResponseContent resultcontent = RGVAPIInvokeGetRgvInfo.GetRgvInfo();
if (resultcontent.Status)
@@ -96,7 +121,7 @@
!locationId.Contains(x.location_id) && !x.location_islocked && rgvLayer.Contains(x.location_layer)).OrderBy(x => x.location_layer)
.ThenBy(x => x.location_column).FirstOrDefault();
if (null != locationinfo)
- return locationinfo;
+ return locationinfo;
else
locationinfo = Dt_locationinfoRepository.Instance.Find(x => x.location_state == LocationState.LocationState_Empty.ToString() &&
!locationId.Contains(x.location_id) && !x.location_islocked && listLayer.Contains(x.location_layer)).OrderBy(x => x.location_layer)
@@ -131,11 +156,6 @@
return locationinfo;
}
-
- //Dt_locationinfo locationinfo = Dt_locationinfoRepository.Instance.Find(x => x.location_state == LocationState.LocationState_Empty.ToString() &&
- //!locationId.Contains(x.location_id) && !x.location_islocked).OrderBy(x => x.location_layer).ThenBy(x => x.location_column).FirstOrDefault();
- //if (null != locationinfo)
- // return locationinfo;
throw new Exception("鏆傛棤璐т綅鍙垎閰�");
}
}
--
Gitblit v1.9.3