From 23e4f986644298cb23ac43173414b7e1404b6657 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期六, 15 六月 2024 17:26:23 +0800
Subject: [PATCH] 任务逻辑优化

---
 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendFromaddress.cs                |   33 ++++
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/633--VK05--辊道状态给PCS_1_1.png      |    0 
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/610---VK05--07辊道接收车轮确认_1_1.png   |    0 
 代码管理/WMS/WMS_Server/WIDESEA_WebApi/Controllers/JobSendTask.cs                    |    4 
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/631--VK05--机加工车床状态给PCS_1_1.png   |    0 
 代码管理/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs                                 |   11 -
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/611---VK05--机加工完成确认_1_1.png      |    0 
 代码管理/PCS/WCS_Server/WIDESEA_WCS/Common/Pipeline.cs                               |   97 ++-----------
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/602--VK05--扫码交互_1_1.png          |    0 
 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/EmptyPalletTask.cs                |  128 +++++++++---------
 代码管理/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs          |    2 
 代码管理/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/GetStation/EmptyPalletStation.cs |   27 +--
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/612--VK05--确认转盘方向,告知车轮去向_1_1.png |    0 
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/630--VK05--显示工位数据_1_1.png        |    0 
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/632--VK05--老桁架状态给PCS_1_1.png     |    0 
 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyPalletStation.cs          |  104 ++++++++++----
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/601--VK05--提交车轮类型返回车轮数据_1_1.png  |    0 
 项目资料/通信协议/太重老PCS与辊道交互表-2024-04-23/TZ--VK05辊道交互表/603--VK05--贴标机交互_1_1.png         |    0 
 代码管理/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendToaddress.cs                  |   10 
 19 files changed, 209 insertions(+), 207 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs"
index 2a00245..fa4ebb5 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs"
@@ -186,17 +186,6 @@
 
                         var mes_Head = mes_HeadRepository.FindFirst(x => x.jobID == Mes_Work.jobID);
 
-                        //闇�娣诲姞鏌ヨ杞﹁疆SN鍙疯鍗曢�昏緫   闇�娣诲姞鍏ュ簱妯″紡鍒ゆ柇锛屾墜鍔ㄥ叆搴撴ā寮忛渶浜哄伐娣诲姞鍏ュ簱搴撳尯锛屽惁鍒欐姤璀�
-                        //var pattern = patternRepository.FindFirst(x => x.pattern_name == "鍏ュ簱妯″紡").pattern_state;
-                        //if (pattern != 1 && string.IsNullOrEmpty(mes_Head.area))
-                        //{
-                        //    client.WriteByOrder("W_i_status", (byte)4, name);
-                        //    client.WriteByOrder("R_oi_on", (byte)0, name);
-                        //    #region 鏃ュ織璁板綍
-                        //    WriteLog.Write_Log(name, wp_id, "閿欒淇℃伅锛�", $"璇诲彇妗佹灦淇℃伅锛歕n杞﹁疆SN锛歿wp_id}\n\n鍐欏叆妗佹灦淇℃伅锛歕nW_i_status锛�4\nR_oi_on锛�0\n\n鎵嬪姩鍏ュ簱妯″紡鏈�夋嫨搴撳尯");
-                        //    #endregion
-                        //    continue;
-                        //}
                         var geometry = Pipeline.QueryMateriel(Mes_Work.drawingNo);
                         if (geometry == null)
                         {
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Pipeline.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Pipeline.cs"
index 948272b..8d50692 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Pipeline.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Pipeline.cs"
@@ -407,39 +407,23 @@
                         var MaterialSignal = (Int16)DBExtension.Read(details.Where(x => x.plcdetail_name == "R_MaterialSignal").First(), client);//璇诲彇璐х墿淇″彿:1:鏈�,2鏃�
                         if (PalletSignal == 1 && MaterialSignal == 2 && (station.stationCode.Contains("S0100100") ? station.tray_status == "EmptyTray" : true))
                         {
-                            var area = station.tray_type == "SmallTray" ? "11" : "10";
-                            remark = "鏌ヨ鏄惁瀛樺湪琛ョ┖鎵橀槦鍒椾换鍔�";
-                            var task = agvtaskService.Find(x => (x.agv_toaddress.Contains("W") || x.agv_toaddress.Contains("X")) && x.agv_taskstate == "Queue" && x.agv_tasktype == "TaskType_EmptyPallet" && x.agv_Traytype == station.tray_type).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
-                            if (task != null)
-                            {
-                                task.agv_fromaddress = station.stationCode;
-                                task.StarQuantity = 0;
-                                task.agv_taskstate = "Create";
-                                if (station.stationCode.Contains("S0100100"))
-                                    task.agv_grade = 3;
-                                agvtaskService.Update(task, true);
-                                station.location_state = LocationStateEnum.Busy.ToString();
-                                stationinfoRepository.Update(station, true);
-                                WriteDBLog.Success("鏇存柊琛ョ┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿task.agv_tasknum}锛屾墭鐩樹俊鍙�:{PalletSignal},璐х墿淇″彿:{MaterialSignal}", "PCS");
-                                continue;
-                            }
-                            #region 妫�娴嬩笂鏂欑殑绌烘墭鍙犵洏
-                            //remark = "鏌ヨ绌烘墭鍙犵洏浣�";
-                            //var EmptyStations = stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.enable).ToList();
-                            //if (stationCode.Contains("S"))
+                            #region 鏌ヨ鏄惁瀛樺湪琛ョ┖鎵橀槦鍒椾换鍔�
+                            //var area = station.tray_type == "SmallTray" ? "11" : "10";
+                            //remark = "鏌ヨ鏄惁瀛樺湪琛ョ┖鎵橀槦鍒椾换鍔�";
+                            //var task = agvtaskService.Find(x => (x.agv_toaddress.Contains("W") || x.agv_toaddress.Contains("X")) && x.agv_taskstate == "Queue" && x.agv_tasktype == "TaskType_EmptyPallet" && x.agv_Traytype == station.tray_type).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
+                            //if (task != null)
                             //{
-                            //    //var EmptyStations = stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.quantity < 5 && x.enable).ToList();
-                            //    EmptyStation = EmptyStations.Where(x => x.tray_type == station.tray_type && x.quantity < 5 && x.location_state == LocationStateEnum.Stroge.ToString()).FirstOrDefault();
-                            //    if (EmptyStation == null)
-                            //        EmptyStation = EmptyStations.Where(x => x.location_state == LocationStateEnum.Empty.ToString() && x.quantity == 0).FirstOrDefault();
-                            //    if (EmptyStation == null)
-                            //    {
-                            //        EmptyStation = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity > 0).OrderByDescending(x => x.quantity).FirstOrDefault();
-                            //        if (EmptyStation != null) EmptyTray.CreateEmptyTrayIn(stationinfoRepository, EmptyStation);
-                            //    }
-                            //}
-                            //EmptyStation = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity == 5).FirstOrDefault();
-                            //if (EmptyStation != null) EmptyTray.CreateEmptyTrayIn(stationinfoRepository, EmptyStation);
+                            //    task.agv_fromaddress = station.stationCode;
+                            //    task.StarQuantity = 0;
+                            //    task.agv_taskstate = "Create";
+                            //    if (station.stationCode.Contains("S0100100"))
+                            //        task.agv_grade = 3;
+                            //    agvtaskService.Update(task, true);
+                            //    station.location_state = LocationStateEnum.Busy.ToString();
+                            //    stationinfoRepository.Update(station, true);
+                            //    WriteDBLog.Success("鏇存柊琛ョ┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿task.agv_tasknum}锛屾墭鐩樹俊鍙�:{PalletSignal},璐х墿淇″彿:{MaterialSignal}", "PCS");
+                            //    continue;
+                            //} 
                             #endregion
 
                             #region 鍒涘缓鍙栫┖鎵橀槦鍒椾换鍔�
@@ -451,61 +435,19 @@
                                 agv_grade = station.stationCode.Contains("S0100100") ? 3 : 1,
                                 agv_createtime = DateTime.Now,
                                 agv_taskstate = AGVTaskStateEnum.Queue.ToString(),
-                                //agv_materielid = station.stationType,
                                 agv_qty = 1,
                                 StarQuantity = 0,
-                                EndQuantity = 0,//EmptyStation.quantity,
+                                EndQuantity = 0,
                                 agv_tasktype = AGVTaskTypeEnum.TaskType_EmptyPallet.ToString(),
-                                agv_toaddress = "",//EmptyStation.stationCode,
+                                agv_toaddress = "",
                                 agv_userid = "绯荤粺",
-                                agv_TrayStatus = "EmptyTray",//station.tray_status,
+                                agv_TrayStatus = "EmptyTray",
                                 agv_Traytype = station.tray_type,
                             };
                             agvtaskService.Add(agvtask, true);
                             station.location_state = LocationStateEnum.Busy.ToString();
                             stationinfoRepository.Update(station, true);
-                            //EmptyStation.location_state = LocationStateEnum.Busy.ToString();
-                            //stationinfoRepository.Update(EmptyStation, true);
                             WriteDBLog.Success("鍒涘缓鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿agvtask.agv_tasknum}锛屾墭鐩樹俊鍙�:{PalletSignal},璐х墿淇″彿:{MaterialSignal}", "PCS");
-                            #endregion
-
-                            #region 鍒涘缓鍙栫┖鎵樻柊寤轰换鍔�
-                            //else
-                            //{
-                            //    remark = "鏌ユ壘搴撳唴绌烘墭浣�";
-                            //    EmptyStation = GetStation.EmptyPalletStation(area);
-                            //    if (EmptyStation != null)
-                            //        if (agvtaskService.Find(x => x.agv_fromaddress == EmptyStation.stationCode || x.agv_toaddress == EmptyStation.stationCode).Any()) return;
-                            //}
-
-
-                            //if (EmptyStation != null)
-                            //{
-                            //    dt_agvtask agvtask = new dt_agvtask()
-                            //    {
-                            //        agv_fromaddress = station.stationCode,
-                            //        agv_id = Guid.NewGuid(),
-                            //        agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"),
-                            //        agv_grade = station.stationCode.Contains("S0100100") ? 3 : 1,
-                            //        agv_createtime = DateTime.Now,
-                            //        agv_taskstate = AGVTaskStateEnum.Create.ToString(),
-                            //        //agv_materielid = station.stationType,
-                            //        agv_qty = 1,
-                            //        StarQuantity = 0,
-                            //        EndQuantity = EmptyStation.quantity,
-                            //        agv_tasktype = "TaskType_EmptyPallet",
-                            //        agv_toaddress = EmptyStation.stationCode,
-                            //        agv_userid = "绯荤粺",
-                            //        agv_TrayStatus = "EmptyTray",//station.tray_status,
-                            //        agv_Traytype = station.tray_type,
-                            //    };
-                            //    agvtaskService.Add(agvtask, true);
-                            //    station.location_state = LocationStateEnum.Busy.ToString();
-                            //    stationinfoRepository.Update(station, true);
-                            //    EmptyStation.location_state = LocationStateEnum.Busy.ToString();
-                            //    stationinfoRepository.Update(EmptyStation, true);
-                            //    WriteDBLog.Success("鍒涘缓鑷姩鍙栫┖鎵樹换鍔�", $"浠诲姟缂栧彿锛歿agvtask.agv_tasknum}锛屾墭鐩樹俊鍙�:{PalletSignal},璐х墿淇″彿:{MaterialSignal}", "PCS");
-                            //}
                             #endregion
                         }
                     }
@@ -517,7 +459,6 @@
             }
             catch (Exception ex)
             {
-                //WriteDBLog.Error("鍒涘缓鑷姩鍙栫┖鎵樹换鍔�", $"閿欒淇℃伅锛歿ex.Message}", "PCS");
                 WriteLog.Write_Log("鎶ラ敊鏃ュ織", "鍒涘缓鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", "閿欒淇℃伅锛�", $"閿欒淇℃伅锛歿ex.Message}");
             }
         }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/GetStation/EmptyPalletStation.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/GetStation/EmptyPalletStation.cs"
index 182dbce..ff0ac7c 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/GetStation/EmptyPalletStation.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/GetStation/EmptyPalletStation.cs"
@@ -131,27 +131,20 @@
                 if (!Pipeline_client.IsConnected) throw new Exception("涓庨摼鏉℃満杩炴帴瓒呮椂锛�");
                 var area = task.agv_Traytype == "SmallTray" ? "11" : "10";
 
-                #region 浼樺厛鍑�3搴撳尯鍐呯┖鎵樼洏
-                //if (area == "11")
-                //{
-                //    EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && x.stationCode == "C01004002" /*&& x.location_state == "Stroge"*/ && x.tray_status == "EmptyTray" && x.enable).FirstOrDefault();
-                //    if (EmptyStation == null)
-                //        EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && x.stationCode == "C01005002"/* && x.location_state == "Stroge"*/ && x.tray_status == "EmptyTray" && x.enable).FirstOrDefault();
-                //    if (EmptyStation != null)
-                //        EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && x.area == EmptyStation.area && x.line == EmptyStation.line /*&& x.location_state == "Stroge"*/ && x.tray_status == "EmptyTray" && x.enable).OrderByDescending(x => x.column).FirstOrDefault();
-                //    if (EmptyStation != null)//绌烘墭璐т綅涓嶄负绌哄垽鏂槸鍚﹀瓨鍦ㄥ叾浠栦换鍔�
-                //        if (stationinfoRepository.Find(x => x.line == EmptyStation.line && x.area == EmptyStation.area && x.location_state.Contains("Busy")).Any()) EmptyStation = null;
-                //    //if (EmptyStation.location_state == LocationStateEnum.Busy.ToString()) EmptyStation = null;
-                //}
-                #endregion
-
                 #region 鏌ユ壘AB搴撳尯鍙嚭搴撶┖鎵樿揣浣�
                 if (area == "11")
                 {
-                    //EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.lastUpdateTime).FirstOrDefault();
                     EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderBy(x => x.area).ThenBy(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
-                    if (EmptyStation != null)//蹇呴』鍑哄畬AB搴撶┖鎵樻墠鑳藉嚭绌烘墭鍖�
-                        if (QueueStation(EmptyStation.stationCode) || stationinfoRepository.Find(x => x.line == EmptyStation.line && x.area == EmptyStation.area && x.location_state.Contains("Busy")).Any()) return;// EmptyStation = null;
+
+                    #region 蹇呴』鍑哄畬AB搴撶┖鎵樻墠鑳藉嚭绌烘墭鍖�
+                    //if (EmptyStation != null)
+                    //    if (QueueStation(EmptyStation.stationCode) || stationinfoRepository.Find(x => x.line == EmptyStation.line && x.area == EmptyStation.area && x.location_state.Contains("Busy")).Any()) return;
+                    #endregion
+
+                    #region AB搴撶┖鎵樹綅鍗犵敤鍑虹┖鎵樺尯
+                    if (EmptyStation != null)
+                        if (QueueStation(EmptyStation.stationCode) || stationinfoRepository.Find(x => x.line == EmptyStation.line && x.area == EmptyStation.area && x.location_state.Contains("Busy")).Any()) EmptyStation = null;
+                    #endregion
                 }
                 #endregion
 
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/EmptyPalletTask.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/EmptyPalletTask.cs"
index 5d5efe5..aa37a2d 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/EmptyPalletTask.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/EmptyPalletTask.cs"
@@ -31,79 +31,81 @@
                 Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(Context);
                 Idt_management_timeRepository timeRepository = new dt_management_timeRepository(Context);
 
-                #region 鍙犵洏鍖烘弧5涓叆搴� 闇�浼樺寲
+                #region 鍙犵洏鍖烘弧5涓叆搴�
                 var EmptyStations = stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.enable).ToList();
                 var EmptyD = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity == 5).FirstOrDefault();
                 if (EmptyD != null) EmptyTray.CreateEmptyTrayIn(stationinfoRepository, EmptyD);
-                var val = timeRepository.Find(x => x.management_name == "StackingArea").FirstOrDefault().management_numericalvalue;
+                var val = timeRepository.Find(x => x.management_name == "StackingArea").FirstOrDefault().management_numericalvalue;//瓒呮椂鏈娇鐢�,瑙﹀彂鍏ュ簱
                 EmptyD = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity < 5 && x.lastUpdateTime.AddHours(val) < DateTime.Now).FirstOrDefault();
                 if (EmptyD != null) EmptyTray.CreateEmptyTrayIn(stationinfoRepository, EmptyD);
                 #endregion
 
-                var agv_tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).ToList();
-                foreach (var agv_task in agv_tasks)
-               {
-                    try
-                    {
-                        tasknum = agv_task.agv_tasknum;
-                        #region MyRegion
-                        //var task = agvtaskRepository.Find(x => (x.agv_toaddress.Contains("W") || x.agv_toaddress.Contains("X")) && x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && x.agv_Traytype == agv_task.agv_Traytype).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
-                        //if (task != null)
-                        //{
-                        //    task.agv_fromaddress = station.stationCode;
-                        //    task.StarQuantity = 0;
-                        //    task.agv_taskstate = "Create";
-                        //    if (station.stationCode.Contains("S0100100"))
-                        //        task.agv_grade = 3;
-                        //    agvtaskService.Update(task, true);
-                        //    station.location_state = LocationStateEnum.Busy.ToString();
-                        //    stationinfoRepository.Update(station, true);
-                        //    WriteDBLog.Success("鏇存柊琛ョ┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿task.agv_tasknum}锛屾墭鐩樹俊鍙�:{PalletSignal},璐х墿淇″彿:{MaterialSignal}", "WMS");
-                        //    return;
-                        //}
-                        #endregion
-                        #region MyRegion
-                        //dt_stationinfo EmptyStation = null;
-                        //#region 妫�娴嬩笂鏂欑殑绌烘墭鍙犵洏
-                        //if (agv_task.agv_fromaddress.Contains("S"))
-                        //{
-                        //    //var EmptyStations = stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.quantity < 5 && x.enable).ToList();
-                        //    EmptyStation = EmptyStations.Where(x => x.tray_type == agv_task.agv_Traytype && x.quantity < 5 && x.location_state == LocationStateEnum.Stroge.ToString()).FirstOrDefault();
-                        //    if (EmptyStation == null)
-                        //        EmptyStation = EmptyStations.Where(x => x.location_state == LocationStateEnum.Empty.ToString() && x.quantity == 0).FirstOrDefault();
-                        //    if (EmptyStation == null)
-                        //    {
-                        //        EmptyD = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity > 0).OrderByDescending(x => x.quantity).FirstOrDefault();
-                        //        if (EmptyD != null) EmptyTray.CreateEmptyTrayIn(stationinfoRepository, EmptyD);
-                        //    }
-                        //}
-                        //#endregion
-                        //else
-                        //{
-                        //    EmptyStation = GetStation.EmptyPalletStation1(agv_task.agv_Traytype == "SmallTray" ? "11" : "10");
-                        //}
+                #region 澶栧崗绌烘墭闃熷垪浠诲姟鐩存帴鍏ュ簱
+                //var agv_tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).ToList();
+                //foreach (var agv_task in agv_tasks)
+                //{
+                //    try
+                //    {
+                //        tasknum = agv_task.agv_tasknum;
+                //        #region MyRegion
+                //        //var task = agvtaskRepository.Find(x => (x.agv_toaddress.Contains("W") || x.agv_toaddress.Contains("X")) && x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && x.agv_Traytype == agv_task.agv_Traytype).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
+                //        //if (task != null)
+                //        //{
+                //        //    task.agv_fromaddress = station.stationCode;
+                //        //    task.StarQuantity = 0;
+                //        //    task.agv_taskstate = "Create";
+                //        //    if (station.stationCode.Contains("S0100100"))
+                //        //        task.agv_grade = 3;
+                //        //    agvtaskService.Update(task, true);
+                //        //    station.location_state = LocationStateEnum.Busy.ToString();
+                //        //    stationinfoRepository.Update(station, true);
+                //        //    WriteDBLog.Success("鏇存柊琛ョ┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿task.agv_tasknum}锛屾墭鐩樹俊鍙�:{PalletSignal},璐х墿淇″彿:{MaterialSignal}", "WMS");
+                //        //    return;
+                //        //}
+                //        #endregion
+                //        #region MyRegion
+                //        //dt_stationinfo EmptyStation = null;
+                //        //#region 妫�娴嬩笂鏂欑殑绌烘墭鍙犵洏
+                //        //if (agv_task.agv_fromaddress.Contains("S"))
+                //        //{
+                //        //    //var EmptyStations = stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.quantity < 5 && x.enable).ToList();
+                //        //    EmptyStation = EmptyStations.Where(x => x.tray_type == agv_task.agv_Traytype && x.quantity < 5 && x.location_state == LocationStateEnum.Stroge.ToString()).FirstOrDefault();
+                //        //    if (EmptyStation == null)
+                //        //        EmptyStation = EmptyStations.Where(x => x.location_state == LocationStateEnum.Empty.ToString() && x.quantity == 0).FirstOrDefault();
+                //        //    if (EmptyStation == null)
+                //        //    {
+                //        //        EmptyD = EmptyStations.Where(x => x.location_state == LocationStateEnum.Stroge.ToString() && x.quantity > 0).OrderByDescending(x => x.quantity).FirstOrDefault();
+                //        //        if (EmptyD != null) EmptyTray.CreateEmptyTrayIn(stationinfoRepository, EmptyD);
+                //        //    }
+                //        //}
+                //        //#endregion
+                //        //else
+                //        //{
+                //        //    EmptyStation = GetStation.EmptyPalletStation1(agv_task.agv_Traytype == "SmallTray" ? "11" : "10");
+                //        //}
 
-                        #endregion
+                //        #endregion
 
-                        var EmptyStation = EmptyTray.GetEmptyTrayStation(stationinfoRepository, agv_task);
-                        if (EmptyStation != null)
-                        {
-                            agv_task.agv_taskstate = AGVTaskStateEnum.Create.ToString();
-                            agv_task.EndQuantity = EmptyStation.quantity;
-                            agv_task.agv_toaddress = EmptyStation.stationCode;
-                            agvtaskRepository.Update(agv_task, true);
-                            EmptyStation.location_state = LocationStateEnum.Busy.ToString();
-                            EmptyStation.tray_status = TrayStateEnum.EmptyTray.ToString();
-                            stationinfoRepository.Update(EmptyStation, true);
-                            WriteDBLog.Success("鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿agv_task.agv_tasknum}", "WMS");
-                        }
-                    }
-                    catch (Exception ex)
-                    {
-                        WriteLog.Write_Log("鎶ラ敊鏃ュ織", "鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", "閿欒淇℃伅锛�", $"{tasknum}锛涢敊璇俊鎭細{ex.Message}");
-                    }
+                //        var EmptyStation = EmptyTray.GetEmptyTrayStation(stationinfoRepository, agv_task);
+                //        if (EmptyStation != null)
+                //        {
+                //            agv_task.agv_taskstate = AGVTaskStateEnum.Create.ToString();
+                //            agv_task.EndQuantity = EmptyStation.quantity;
+                //            agv_task.agv_toaddress = EmptyStation.stationCode;
+                //            agvtaskRepository.Update(agv_task, true);
+                //            EmptyStation.location_state = LocationStateEnum.Busy.ToString();
+                //            EmptyStation.tray_status = TrayStateEnum.EmptyTray.ToString();
+                //            stationinfoRepository.Update(EmptyStation, true);
+                //            WriteDBLog.Success("鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿agv_task.agv_tasknum}", "WMS");
+                //        }
+                //    }
+                //    catch (Exception ex)
+                //    {
+                //        WriteLog.Write_Log("鎶ラ敊鏃ュ織", "鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", "閿欒淇℃伅锛�", $"{tasknum}锛涢敊璇俊鎭細{ex.Message}");
+                //    }
 
-                }
+                //} 
+                #endregion
             }
             catch (Exception ex)
             {
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendFromaddress.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendFromaddress.cs"
index 4d96421..3dde5ce 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendFromaddress.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendFromaddress.cs"
@@ -27,12 +27,43 @@
                 Idt_agvtaskRepository agvtaskRepository = new dt_agvtaskRepository(Context);
                 Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(Context);
                 RequestFromTask requestFromTask = new RequestFromTask();
-                var agv_tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && !x.agv_fromaddress.Contains("W") && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).ToList();
+                var agv_tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() /*&& !x.agv_fromaddress.Contains("W")*/ && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).ToList();
+
+                var tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_fromaddress)).ToList();//鏌ユ壘鎵�鏈夎ˉ绌烘墭浠诲姟
+
                 foreach (var agv_task in agv_tasks)
                 {
                     try
                     {
                         EmptyTray.GetEmptyTrayStation(stationinfoRepository, agv_task);
+                        #region 鏌ユ壘婊¤冻鏉′欢鐨勮ˉ绌烘墭浠诲姟
+                        var task = tasks.Where(x => x.agv_Traytype == agv_task.agv_Traytype).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
+                        if (task != null)
+                        {
+                            agv_task.agv_taskstate = AGVTaskStateEnum.Create.ToString();
+                            agv_task.EndQuantity = task.EndQuantity;
+                            agv_task.agv_toaddress = task.agv_toaddress;
+                            agvtaskRepository.Update(agv_task, x => new { x.agv_taskstate, x.EndQuantity, x.agv_toaddress }, true);
+                            agvtaskRepository.Delete(task, true);
+                            tasks.Remove(task);
+                            WriteDBLog.Success("鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿agv_task.agv_tasknum},鍒犻櫎琛ョ┖鎵樹换鍔★細{task.agv_tasknum}", "WMS");
+                            continue;
+                        }
+                        #endregion
+
+                        #region 鍙犵洏鍖烘弧5涓紝涓嶄笅鍙戞娴嬩笂鏂欑殑绌烘墭璧风偣浠诲姟
+                        if (agv_task.agv_fromaddress.Contains("S"))
+                            if (stationinfoRepository.Find(x => x.stationCode.Contains("DD") && x.quantity == 5).Any()) continue;
+                        #endregion
+
+                        #region AGV涓婃湁涓や釜绌烘墭锛屼笉涓嬪彂澶栧崗鍙栫┖鎵樹换鍔�
+                        if (agv_task.agv_fromaddress.Contains("W"))
+                        {
+                            var count = agvtaskRepository.Find(x => x.agv_taskstate != AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_toaddress)).Count();
+                            if (count >= 2) continue;
+                        }
+                        #endregion
+
                         requestFromTask.TASK_NO = agv_task.agv_tasknum;
                         requestFromTask.FROM_POSITION = agv_task.agv_fromaddress;
                         requestFromTask.Material = agv_task.agv_materielid;
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendToaddress.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendToaddress.cs"
index eb980ec..27ada93 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendToaddress.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/AGVTask/SendToaddress.cs"
@@ -27,12 +27,14 @@
             Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(Context);
             RequestToaddTask requestFromTask = new RequestToaddTask();
             var agv_tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Complete.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).ToList();
+
+            var tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && string.IsNullOrEmpty(x.agv_fromaddress)).ToList();//鏌ユ壘鎵�鏈夎ˉ绌烘墭浠诲姟
             foreach (var agv_task in agv_tasks)
             {
                 try
                 {
                     #region 鏌ユ壘婊¤冻鏉′欢鐨勮ˉ绌烘墭浠诲姟
-                    var task = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && x.agv_Traytype == agv_task.agv_Traytype && string.IsNullOrEmpty(x.agv_fromaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
+                    var task = tasks.Where(x => x.agv_Traytype == agv_task.agv_Traytype).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).FirstOrDefault();
                     if (task != null)
                     {
                         requestFromTask.TASK_NO = agv_task.agv_tasknum;
@@ -54,10 +56,11 @@
                             agv_task.agv_toaddress = task.agv_toaddress;
                             agvtaskRepository.Update(agv_task, true);
                             agvtaskRepository.Delete(task, true);
+                            tasks.Remove(task);
                         }
                         else
                             throw new Exception(respone.Msg);
-                        WriteDBLog.Success("鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿agv_task.agv_tasknum}", "WMS");
+                        WriteDBLog.Success("鏇存柊鑷姩鍙栫┖鎵橀槦鍒椾换鍔�", $"浠诲姟缂栧彿锛歿agv_task.agv_tasknum},鍒犻櫎琛ョ┖鎵樹换鍔★細{task.agv_tasknum}", "WMS");
                     }
                     #endregion
                     else
@@ -66,9 +69,6 @@
                         var EmptyStation = EmptyTray.GetEmptyTrayStation(stationinfoRepository, agv_task);
                         if (EmptyStation != null)
                         {
-                            //agv_task.agv_taskstate = AGVTaskStateEnum.Create.ToString();
-                            //agvtaskRepository.Update(agv_task, true);//鏌ョ湅AGV浠诲姟鏁版嵁鏄惁鍦ㄥ彟涓�涓柟娉曞唴杩涜浜嗘暟鎹洿鏂�
-
                             requestFromTask.TASK_NO = agv_task.agv_tasknum;
                             requestFromTask.TO_POSITION = EmptyStation.stationCode;
                             requestFromTask.Material = agv_task.agv_materielid;
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyPalletStation.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyPalletStation.cs"
index 47deee7..8cc07c3 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyPalletStation.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Common/GetStation/EmptyPalletStation.cs"
@@ -151,50 +151,96 @@
                 Idt_agvtaskRepository agvtaskService = new dt_agvtaskRepository(Context);
                 Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(Context);
 
-                #region 鏌ユ壘AB搴撳彲鍏ョ┖鎵樼┖璐т綅
-                if (area == "11" && stationinfoRepository.Find(x => x.stationCode == "A01001001" && x.quantity == 5 && x.location_state == LocationStateEnum.Stroge.ToString()).Any())
+                #region 绌烘墭搴撳尯鍗犵敤鍏B搴撳尯
+                if (stationinfoRepository.Find(x => x.area == area && x.enable && x.location_state == LocationStateEnum.Busy.ToString()).Any() || stationinfoRepository.Find(x => x.stationCode == "A01001001" && x.quantity == 5 && x.location_state == LocationStateEnum.Stroge.ToString()).Any())
                 {
-                    #region MyRegion
-                    var EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.area).ThenByDescending(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
-                    #endregion
-                    if (EmptyStation == null)
-                        EmptyStation = stationinfoRepository.Find(x => x.location_state == LocationStateEnum.Busy.ToString() && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.area).ThenByDescending(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
-
-                    #region 鏌ユ壘搴撳尯2鍜屽簱鍖�3鐨勭┖鎵樿揣浣�
-                    //var EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3")
-                    //   && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.lastUpdateTime).FirstOrDefault();
-
-                    if (EmptyStation != null)
+                    #region 鏌ユ壘AB搴撳彲鍏ョ┖鎵樼┖璐т綅
+                    if (area == "11")
                     {
-                        stationinfo = Station(EmptyStation, stationinfoRepository);
-                        if (stationinfo != null)
-                            if (!QueueStation(stationinfo.stationCode)) return stationinfo;
+                        #region MyRegion
+                        var EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.area).ThenByDescending(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
+                        #endregion
+                        if (EmptyStation == null)
+                            EmptyStation = stationinfoRepository.Find(x => x.location_state == LocationStateEnum.Busy.ToString() && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.area).ThenByDescending(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
 
-                        EmptyStation = stationinfoRepository.Find(x => x.area == EmptyStation.area && x.line == EmptyStation.line && x.enable).OrderByDescending(x => x.column).FirstOrDefault();
-                        if (EmptyStation.quantity != 5) return null;
+                        #region 鏌ユ壘搴撳尯2鍜屽簱鍖�3鐨勭┖鎵樿揣浣�
+
+                        if (EmptyStation != null)
+                        {
+                            stationinfo = Station(EmptyStation, stationinfoRepository);
+                            if (stationinfo != null)
+                                if (!QueueStation(stationinfo.stationCode)) return stationinfo;
+
+                            EmptyStation = stationinfoRepository.Find(x => x.area == EmptyStation.area && x.line == EmptyStation.line && x.enable).OrderByDescending(x => x.column).FirstOrDefault();
+                            if (EmptyStation.quantity != 5) return null;
+                        }
+                        #endregion
+
+                        #region 鏈壘鍒扮┖鎵樿揣浣嶆垨褰撳墠琛屽凡婊�,瀵绘壘鏂扮殑涓�琛�
+                        stationinfo = stationinfoRepository.Find(x => x.column == 2 && x.area == "3" && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.line).FirstOrDefault();
+                        if (stationinfo == null)
+                            stationinfo = stationinfoRepository.Find(x => x.column == 1 && x.area == "2" && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.line).FirstOrDefault();
+                        #endregion
                     }
                     #endregion
-
-                    #region 鏈壘鍒扮┖鎵樿揣浣嶆垨褰撳墠琛屽凡婊�,瀵绘壘鏂扮殑涓�琛�
-                    stationinfo = stationinfoRepository.Find(x => x.column == 2 && x.area == "3" && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.line).FirstOrDefault();
-                    if (stationinfo == null)
-                        stationinfo = stationinfoRepository.Find(x => x.column == 1 && x.area == "2" && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.line).FirstOrDefault();
-                    #endregion
                 }
-                #endregion
-
-                #region 鏌ユ壘绌烘墭搴撳尯
                 else
                 {
-                    if (stationinfoRepository.Find(x => x.area == area && x.location_state == LocationStateEnum.Busy.ToString()).Any()) return stationinfo;
                     stationinfo = stationinfoRepository.Find(x => x.area == area && x.quantity > 0 && x.enable).OrderBy(x => x.column).FirstOrDefault();
                     if (stationinfo != null)
                         if (!QueueStation(stationinfo.stationCode) && stationinfo.quantity < 5) return stationinfo;
                     stationinfo = stationinfoRepository.Find(x => x.area == area && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.column).FirstOrDefault();
-
                 }
                 #endregion
 
+                #region 绌烘墭搴撳尯婊″悗鍏B搴撳尯
+
+                //#region 鏌ユ壘AB搴撳彲鍏ョ┖鎵樼┖璐т綅
+                //if (area == "11" && stationinfoRepository.Find(x => x.stationCode == "A01001001" && x.quantity == 5 && x.location_state == LocationStateEnum.Stroge.ToString()).Any())
+                //{
+                //    #region MyRegion
+                //    var EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.area).ThenByDescending(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
+                //    #endregion
+                //    if (EmptyStation == null)
+                //        EmptyStation = stationinfoRepository.Find(x => x.location_state == LocationStateEnum.Busy.ToString() && (x.area == "2" || x.area == "3") && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.area).ThenByDescending(x => x.line).ThenByDescending(x => x.column).FirstOrDefault();
+
+                //    #region 鏌ユ壘搴撳尯2鍜屽簱鍖�3鐨勭┖鎵樿揣浣�
+                //    //var EmptyStation = stationinfoRepository.Find(x => x.quantity > 0 && (x.area == "2" || x.area == "3")
+                //    //   && x.tray_status == TrayStateEnum.EmptyTray.ToString() && x.enable).OrderByDescending(x => x.lastUpdateTime).FirstOrDefault();
+
+                //    if (EmptyStation != null)
+                //    {
+                //        stationinfo = Station(EmptyStation, stationinfoRepository);
+                //        if (stationinfo != null)
+                //            if (!QueueStation(stationinfo.stationCode)) return stationinfo;
+
+                //        EmptyStation = stationinfoRepository.Find(x => x.area == EmptyStation.area && x.line == EmptyStation.line && x.enable).OrderByDescending(x => x.column).FirstOrDefault();
+                //        if (EmptyStation.quantity != 5) return null;
+                //    }
+                //    #endregion
+
+                //    #region 鏈壘鍒扮┖鎵樿揣浣嶆垨褰撳墠琛屽凡婊�,瀵绘壘鏂扮殑涓�琛�
+                //    stationinfo = stationinfoRepository.Find(x => x.column == 2 && x.area == "3" && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.line).FirstOrDefault();
+                //    if (stationinfo == null)
+                //        stationinfo = stationinfoRepository.Find(x => x.column == 1 && x.area == "2" && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.line).FirstOrDefault();
+                //    #endregion
+                //}
+                //#endregion
+
+                //#region 鏌ユ壘绌烘墭搴撳尯
+                //else
+                //{
+                //    if (stationinfoRepository.Find(x => x.area == area && x.enable && x.location_state == LocationStateEnum.Busy.ToString()).Any()) return stationinfo;
+                //    stationinfo = stationinfoRepository.Find(x => x.area == area && x.quantity > 0 && x.enable).OrderBy(x => x.column).FirstOrDefault();
+                //    if (stationinfo != null)
+                //        if (!QueueStation(stationinfo.stationCode) && stationinfo.quantity < 5) return stationinfo;
+                //    stationinfo = stationinfoRepository.Find(x => x.area == area && x.location_state == LocationStateEnum.Empty.ToString() && x.enable).OrderByDescending(x => x.column).FirstOrDefault();
+
+                //}
+                //#endregion 
+
+                #endregion
+
                 #region 鏌ョ湅褰撳墠绌鸿揣浣嶅悗鏄惁瀛樺湪鏈夋枡
                 if (stationinfo != null)
                     if (GetStation.QueueStation(stationinfo.stationCode)) stationinfo = null;
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/JobSendTask.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/JobSendTask.cs"
index 5a76bf7..416cd53 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/JobSendTask.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/JobSendTask.cs"
@@ -12,9 +12,9 @@
         [Invoke(Begin = "2024-01-01 00:00", Interval = 1000 * 5, IsEnabled = true, SkipWhileExecuting = true)]
         public void SendTaskTime()
         {
-            AGVServer.SendFromaddress();
-            AGVServer.SendToaddress();
             AGVServer.UpdateEmptyPalletTask();
+            AGVServer.SendToaddress();
+            AGVServer.SendFromaddress();
             AGVServer.SendAgvTask();
         }
     }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs"
index 09f2d5a..e55686b 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs"
@@ -293,7 +293,7 @@
             Idt_agvtaskRepository db = new dt_agvtaskRepository(volContext);
             var dataList = db.Find(_ => true).OrderByDescending(x => x.agv_createtime).ToList();
 
-            var data = dataList.Where(x => x.agv_taskstate != "闃熷垪" && x.agv_taskstate != "Queue").ToList();
+            var data = dataList.Where(x => x.agv_taskstate != "闃熷垪" && x.agv_taskstate != "Queue" && x.agv_taskstate != "浠诲姟鏆傚仠" && x.agv_taskstate != "Pause").ToList();
 
             if (data.Count < 10)
             {
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/601--VK05--\346\217\220\344\272\244\350\275\246\350\275\256\347\261\273\345\236\213\350\277\224\345\233\236\350\275\246\350\275\256\346\225\260\346\215\256_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/601--VK05--\346\217\220\344\272\244\350\275\246\350\275\256\347\261\273\345\236\213\350\277\224\345\233\236\350\275\246\350\275\256\346\225\260\346\215\256_1_1.png"
new file mode 100644
index 0000000..fa7f7ab
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/601--VK05--\346\217\220\344\272\244\350\275\246\350\275\256\347\261\273\345\236\213\350\277\224\345\233\236\350\275\246\350\275\256\346\225\260\346\215\256_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/602--VK05--\346\211\253\347\240\201\344\272\244\344\272\222_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/602--VK05--\346\211\253\347\240\201\344\272\244\344\272\222_1_1.png"
new file mode 100644
index 0000000..6b17b9d
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/602--VK05--\346\211\253\347\240\201\344\272\244\344\272\222_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/603--VK05--\350\264\264\346\240\207\346\234\272\344\272\244\344\272\222_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/603--VK05--\350\264\264\346\240\207\346\234\272\344\272\244\344\272\222_1_1.png"
new file mode 100644
index 0000000..006db69
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/603--VK05--\350\264\264\346\240\207\346\234\272\344\272\244\344\272\222_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/610---VK05--07\350\276\212\351\201\223\346\216\245\346\224\266\350\275\246\350\275\256\347\241\256\350\256\244_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/610---VK05--07\350\276\212\351\201\223\346\216\245\346\224\266\350\275\246\350\275\256\347\241\256\350\256\244_1_1.png"
new file mode 100644
index 0000000..db4c023
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/610---VK05--07\350\276\212\351\201\223\346\216\245\346\224\266\350\275\246\350\275\256\347\241\256\350\256\244_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/611---VK05--\346\234\272\345\212\240\345\267\245\345\256\214\346\210\220\347\241\256\350\256\244_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/611---VK05--\346\234\272\345\212\240\345\267\245\345\256\214\346\210\220\347\241\256\350\256\244_1_1.png"
new file mode 100644
index 0000000..ac868da
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/611---VK05--\346\234\272\345\212\240\345\267\245\345\256\214\346\210\220\347\241\256\350\256\244_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/612--VK05--\347\241\256\350\256\244\350\275\254\347\233\230\346\226\271\345\220\221\357\274\214\345\221\212\347\237\245\350\275\246\350\275\256\345\216\273\345\220\221_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/612--VK05--\347\241\256\350\256\244\350\275\254\347\233\230\346\226\271\345\220\221\357\274\214\345\221\212\347\237\245\350\275\246\350\275\256\345\216\273\345\220\221_1_1.png"
new file mode 100644
index 0000000..a7ce6bb
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/612--VK05--\347\241\256\350\256\244\350\275\254\347\233\230\346\226\271\345\220\221\357\274\214\345\221\212\347\237\245\350\275\246\350\275\256\345\216\273\345\220\221_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/630--VK05--\346\230\276\347\244\272\345\267\245\344\275\215\346\225\260\346\215\256_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/630--VK05--\346\230\276\347\244\272\345\267\245\344\275\215\346\225\260\346\215\256_1_1.png"
new file mode 100644
index 0000000..4207c74
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/630--VK05--\346\230\276\347\244\272\345\267\245\344\275\215\346\225\260\346\215\256_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/631--VK05--\346\234\272\345\212\240\345\267\245\350\275\246\345\272\212\347\212\266\346\200\201\347\273\231PCS_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/631--VK05--\346\234\272\345\212\240\345\267\245\350\275\246\345\272\212\347\212\266\346\200\201\347\273\231PCS_1_1.png"
new file mode 100644
index 0000000..82f55b7
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/631--VK05--\346\234\272\345\212\240\345\267\245\350\275\246\345\272\212\347\212\266\346\200\201\347\273\231PCS_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/632--VK05--\350\200\201\346\241\201\346\236\266\347\212\266\346\200\201\347\273\231PCS_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/632--VK05--\350\200\201\346\241\201\346\236\266\347\212\266\346\200\201\347\273\231PCS_1_1.png"
new file mode 100644
index 0000000..dc88c10
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/632--VK05--\350\200\201\346\241\201\346\236\266\347\212\266\346\200\201\347\273\231PCS_1_1.png"
Binary files differ
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/633--VK05--\350\276\212\351\201\223\347\212\266\346\200\201\347\273\231PCS_1_1.png" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/633--VK05--\350\276\212\351\201\223\347\212\266\346\200\201\347\273\231PCS_1_1.png"
new file mode 100644
index 0000000..0728e0a
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\345\244\252\351\207\215\350\200\201PCS\344\270\216\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250-2024-04-23/TZ--VK05\350\276\212\351\201\223\344\272\244\344\272\222\350\241\250/633--VK05--\350\276\212\351\201\223\347\212\266\346\200\201\347\273\231PCS_1_1.png"
Binary files differ

--
Gitblit v1.9.3