From 441b6f8d257a01b2998253ef0515a201777d7e68 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期五, 04 七月 2025 14:06:49 +0800
Subject: [PATCH] 修改入库、移库、出库逻辑

---
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ShuttleCarJob/ShuttleCarJob.cs |   39 ++++++++++++++++++++++-----------------
 1 files changed, 22 insertions(+), 17 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ShuttleCarJob/ShuttleCarJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ShuttleCarJob/ShuttleCarJob.cs"
index 8169f2e..18cbfe1 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ShuttleCarJob/ShuttleCarJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ShuttleCarJob/ShuttleCarJob.cs"
@@ -85,9 +85,7 @@
                         }
                         #endregion
 
-                        #region 鑾峰彇鍫嗗灈鏈虹Щ杞�/绉诲簱瀹屾垚浠诲姟
-                        GetSC_CarFinish();
-                        #endregion
+                        GetSC_CarFinish();//鍫嗗灈鏈哄畬鎴愮Щ杞�/绉昏溅鍏呯數/绉诲簱/鍏ュ簱浠诲姟
 
                         #region 鍒涘缓绉昏溅鍏呯數浠诲姟
                         if (command.Err_Status == (short)ShuttleCarErr.LowBattery || command.ElectricQuantity <= (short)ShuttleCarErr.LowBattery)
@@ -105,7 +103,7 @@
                                         ShuttleCarTaskCommandR command1 = ReadCustomer<ShuttleCarTaskCommandR>(shuttleCar1, shuttleCar1.DeviceCode);//璇诲彇绌挎杞︿俊鎭�
                                         if (command1 != null && command1.JoinStatus == 1)
                                         {
-                                            if (command1.Status == (short)ShuttleCarStatus.Charging && command1.ElectricQuantity /*> command.ElectricQuantity*/ >= 50)
+                                            if (command1.Status == (short)ShuttleCarStatus.Charging && command1.ElectricQuantity >= 50)
                                             {
                                                 shuttleCar1.SetValue(ShuttleCarDBName.TaskType, (short)ShuttleCarStatus.QuitCharging);
                                             }
@@ -114,13 +112,26 @@
                                 }
                                 else
                                 {
-                                    string CarChargingStation = AppSettings.Configuration[nameof(CarChargingStation)];//鍏呯數浣�
-                                                                                                                      //鍒ゆ柇鍏呯數浣嶆槸鍚︽湁杞�
+                                    string CarChargingStation = AppSettings.Configuration[nameof(CarChargingStation)];//鍒ゆ柇鍏呯數浣嶆槸鍚︽湁杞�
                                     var ShuttleCar1 = _shuttleCarService.QueryShuttleCar(CarChargingStation);
                                     if (ShuttleCar1 != null && ShuttleCar1.ShuttleCarCode != shuttleCar.DeviceCode)
                                     {
+                                        #region 鍒ゆ柇鏄惁瀛樺湪鏂板缓绉昏溅浠诲姟
                                         if (_taskRepository.QueryFirst(x => x.ShuttleCarCode == ShuttleCar1.ShuttleCarCode) == null)
-                                            _taskService.AddRelocationCarTask(ShuttleCar1.ShuttleCarPosition, "", ShuttleCar1.ShuttleCarCode);
+                                        {
+                                            var dt_Task = GetTask((int)TaskCarStatusEnum.CarNew, (int)TaskOtherTypeEnum.RelocationCar);
+                                            if (dt_Task != null && string.IsNullOrEmpty(dt_Task.SourceAddress))
+                                            {
+                                                dt_Task.SourceAddress = ShuttleCar1.ShuttleCarPosition;
+                                                dt_Task.CurrentAddress = dt_Task.SourceAddress;
+                                                dt_Task.ShuttleCarCode = ShuttleCar1.ShuttleCarCode;
+                                                _taskService.UpdateData(dt_Task);
+                                                _taskExecuteDetailService.AddTaskExecuteDetail(dt_Task.TaskNum, "鏇存柊绉昏溅浠诲姟璧峰鍦板潃");
+                                            }
+                                            else
+                                                _taskService.AddRelocationCarTask(ShuttleCar1.ShuttleCarPosition, "", ShuttleCar1.ShuttleCarCode);
+                                        }
+                                        #endregion
                                     }
                                     else
                                     {
@@ -134,18 +145,12 @@
 
                         #region 鑾峰彇绉昏溅/鍑哄叆搴撲换鍔�
                         if (command != null &&
-                            (command.Status == (short)ShuttleCarStatus.Standby ||
-                            command.Status == (short)ShuttleCarStatus.Charging) &&
+                            (command.Status == (short)ShuttleCarStatus.Standby || command.Status == (short)ShuttleCarStatus.Charging) &&
                             command.TaskTypeComplete == (short)ShuttleCarTaskComplete.Standby &&
-                            (command.Err_Status == (short)ShuttleCarErr.Normal ||
-                            command.Err_Status == (short)ShuttleCarErr.LowBattery)
-                            )
+                            (command.Err_Status == (short)ShuttleCarErr.Normal || command.Err_Status == (short)ShuttleCarErr.LowBattery))
                         {
-                            var dt_Task = GetTask(TaskRelocationStatusEnum.SC_RelocationFinish.ObjToInt(), TaskRelocationTypeEnum.Relocation.ObjToInt());//绉诲簱浠诲姟
-                            if (dt_Task != null && shuttleCar.DeviceCode == dt_Task.ShuttleCarCode)
-                                SendTask(dt_Task);
-                            else
-                                Get_CarTask(shuttleCar, command);
+                            //Get_CarTask(shuttleCar, command);
+                            GetShuttleCarTask(shuttleCar, command);
                         }
                         #endregion
                     }

--
Gitblit v1.9.3