From 89bccb9b8fb1070f7ac5f36510c868fecead9384 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期二, 17 三月 2026 17:00:05 +0800
Subject: [PATCH] 更新

---
 项目代码/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutSGOrder.cs     |    1 
 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/码垛/MDJob3_CP.cs                   |   10 +++-
 项目代码/WCS/WCSClient/src/api/http.js                                      |    4 +-
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs     |    4 ++
 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/码垛/MDJob5_CP.cs                   |   10 +++-
 项目代码/WMS/WMSServices/WIDESEA_OutboundService/OutSGOrderDetailService.cs |   13 +++++-
 项目代码/WCS/WCSServices/WIDESEAWCS_TaskInfoService/PackaxisTaskService.cs  |   21 +++++-----
 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/码垛/MDJob1_CP.cs                   |   10 +++-
 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/码垛/MDJob4_CP.cs                   |   10 +++-
 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/码垛/MDJob2_CP.cs                   |   10 +++-
 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/成品仓/ConveyorLineJob_CPH.cs        |    9 +++-
 11 files changed, 70 insertions(+), 32 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSClient/src/api/http.js" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSClient/src/api/http.js"
index d9bd114..8928488 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSClient/src/api/http.js"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSClient/src/api/http.js"
@@ -12,8 +12,8 @@
 let loadingInstance;
 let loadingStatus = false;
 if (process.env.NODE_ENV == 'development') {
-    axios.defaults.baseURL = 'http://127.0.0.1:9291/';
-    // axios.defaults.baseURL = 'http://192.168.35.3:9281/';
+    // axios.defaults.baseURL = 'http://127.0.0.1:9291/';
+    axios.defaults.baseURL = 'http://192.168.35.3:9281/';
 }
 else if (process.env.NODE_ENV == 'debug') {
     axios.defaults.baseURL = 'http://127.0.0.1:8098/';
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/PackaxisTaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/PackaxisTaskService.cs"
index aaf20c8..ce74bab 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/PackaxisTaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/PackaxisTaskService.cs"
@@ -60,12 +60,14 @@
                     {
                         return content.Error($"鏈壘鍒版潯鐮亄barCode}");
                     }
-                    List<Dt_StationPackInfo> stationPackInfos = _stationPackInfoRepository.QueryData();
+                    List<Dt_StationPackInfo> stationPackInfos = _stationPackInfoRepository.Db.Queryable<Dt_StationPackInfo>().ToList();
                     Dt_StationPackInfo? stationPackInfo = stationPackInfos.FirstOrDefault(x => x.PackType == packinfo.PackType && x.OrderNo == packinfo.OrderNo && x.AssignNum < x.PackNum);
+                    Dt_PackaxisTask packaxisTask = new Dt_PackaxisTask();
                     //濡傛灉璁㈠崟鐩稿悓銆佸灈鍨嬩竴鑷村苟涓斿垎閰嶆暟閲忓皯浜庣爜鍨涚粨鎵樻暟閲忓垯鍒嗛厤鍒颁竴璧�
+                    _unitOfWorkManage.BeginTran();
                     if (stationPackInfo != null)
                     {
-                        Dt_PackaxisTask packaxisTask = new Dt_PackaxisTask()
+                        packaxisTask = new Dt_PackaxisTask()
                         {
                             DeviceCode = deviceCode,
                             SourceAddress = "2421",
@@ -83,22 +85,21 @@
                         stationPackInfo.AssignNum += 1;
                         stationPackInfo.ExecutingNum += 1;
                         packinfo.PackStatus = StationOccupiedEnum.Sure.ObjToInt();
-                        _unitOfWorkManage.BeginTran();
+                        
                         //鏇存柊鐮佸灈鎵ц宸ヤ綅
                         _stationPackInfoRepository.UpdateData(stationPackInfo);
                         //鏇存柊寰呯爜鍨涗俊鎭〃
                         _packinfoRepository.UpdateData(packinfo);
                         //娣诲姞鐮佸灈浠诲姟
                         BaseDal.AddData(packaxisTask);
-                        _unitOfWorkManage.CommitTran();
-                        return content.OK(barCode, packaxisTask);
+                        
                     }
                     else//鍒嗛厤鏂板伐浣�
                     {
                         //鑾峰彇褰撳墠绌虹洏鍑嗗鐨勭爜鍨涘伐浣�
                         List<string> stations = _stationMangerRepository.QueryData(x => x.StationDeviceCode == "CLC_CP" && x.IsOccupied == StationOccupiedEnum.None.ObjToInt()).Select(x => x.StationCode).ToList();
                         //鑾峰彇鐮佸灈閰嶇疆琛ㄦ煡璇㈠彲鍒嗛厤骞跺凡閰嶇疆鐨勭爜鍨涘伐浣�
-                        List<Dt_Packaxis> packaxes = _packaxisRepository.QueryData(x => x.PackType == packinfo.PackType && stations.Contains(x.StationCode));
+                        List<Dt_Packaxis> packaxes = _packaxisRepository.Db.Queryable<Dt_Packaxis>().Where(x => x.PackType == packinfo.PackType && stations.Contains(x.StationCode)).ToList();
                         if (packaxes.Count == 0)
                         {
                             return content.Error("鏈壘鍒板彲鍒嗛厤鐮佸灈閰嶇疆");
@@ -114,7 +115,7 @@
                         packInfoAssign.MakeCode = packinfo.MakeCode;
                         packInfoAssign.MaterielCode = packInfoAssign.MaterielCode;
                         packInfoAssign.PackNum = packaxes.FirstOrDefault(x => x.StationCode == packInfoAssign.StationCode).PackNum;
-                        Dt_PackaxisTask packaxisTask = new Dt_PackaxisTask()
+                        packaxisTask = new Dt_PackaxisTask()
                         {
                             DeviceCode = deviceCode,
                             SourceAddress = "2421",
@@ -132,16 +133,15 @@
                         packInfoAssign.AssignNum += 1;
                         packInfoAssign.ExecutingNum += 1;
                         packinfo.PackStatus = StationOccupiedEnum.Sure.ObjToInt();
-                        _unitOfWorkManage.BeginTran();
                         //鏇存柊鐮佸灈鎵ц宸ヤ綅
                         _stationPackInfoRepository.UpdateData(packInfoAssign);
                         //鏇存柊寰呯爜鍨涗俊鎭〃
                         _packinfoRepository.UpdateData(packinfo);
                         //娣诲姞鐮佸灈浠诲姟
                         BaseDal.AddData(packaxisTask);
-                        _unitOfWorkManage.CommitTran();
-                        return content.OK(barCode, packaxisTask);
                     }
+                    _unitOfWorkManage.CommitTran();
+                    return content.OK(barCode, packaxisTask);
                 }
                 catch (Exception ex)
                 {
@@ -263,7 +263,6 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
-
                     Dt_PackaxisTask packaxisTask = BaseDal.QueryFirst(x => x.PackTaskNum == PackTaskNum);
                     if(packaxisTask == null)
                     {
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/ConveyorLineJob_CPH.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/ConveyorLineJob_CPH.cs"
index 3669f76..a03c18f 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/ConveyorLineJob_CPH.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/ConveyorLineJob_CPH.cs"
@@ -100,6 +100,7 @@
                                         WriteInfo($"绾跨▼ {Thread.CurrentThread.ManagedThreadId}鍒嗗灈鍙�","寮�濮嬫墽琛�");
                                         while (true)
                                         {
+                                            //WriteInfo($"鍒嗗灈鍙h繍琛屾椂闂�" , $"寮�濮嬫椂闂�:" + DateTime.Now.ToString("HH:mm:ss.fff"));
                                             if (RequestIn != null)
                                             {
                                                 DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == RequestIn.StationCode && x.DeviceProParamType == nameof(R_CLineCPHDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
@@ -110,6 +111,7 @@
                                                     //鐮佸灈鐜嚎璇锋眰浠诲姟 
                                                     if (conveyorLineInfoRead != null && (conveyorLineInfoRead.R_State == 2 || conveyorLineInfoRead.R_State == 3) && conveyorLineInfoRead.R_TaskNo <= 0 && !string.IsNullOrEmpty(conveyorLineInfoRead.R_BoxCode) && conveyorLineInfoRead.R_Request == 1)
                                                     {
+                                                        //WriteInfo($"鍒嗗灈鍙h繍琛屾椂闂�", $"{conveyorLineInfoRead.R_BoxCode}璇锋眰" + DateTime.Now.ToString("HH:mm:ss.fff"));
                                                         //鍒ゆ柇鏄惁浠诲姟宸茬粡瀛樺湪
                                                         Dt_PackaxisTask packaxisTask = _packaxisTaskRepository.Db.Queryable<Dt_PackaxisTask>().Where(x => x.BarCode == conveyorLineInfoRead.R_BoxCode.Trim() && x.TaskState == TaskStatusEnum.Line_Executing.ObjToInt()).First();
                                                         if (packaxisTask != null)
@@ -120,8 +122,9 @@
                                                             device.SetValue(W_CLineCPHDB.W_Long, packaxisTask.PackLength, RequestIn.StationCode);
                                                             device.SetValue(W_CLineCPHDB.W_Wide, packaxisTask.PackWidth, RequestIn.StationCode);
                                                             device.SetValue(W_CLineCPHDB.W_High, packaxisTask.PackHeight, RequestIn.StationCode);
-                                                            device.SetValue(W_CLineCPHDB.W_TMID, packaxisTask.BarCode, RequestIn.StationCode);
+                                                            device.SetValue(W_CLineCPHDB.W_TMID, conveyorLineInfoRead.R_BoxCode.Trim(), RequestIn.StationCode);
                                                             device.SetValue(W_CLineCPHDB.W_Request, 1, RequestIn.StationCode);
+                                                            //WriteInfo($"鍒嗗灈鍙h繍琛屾椂闂�", $"{conveyorLineInfoRead.R_BoxCode}璇锋眰瀹屾垚" + DateTime.Now.ToString("HH:mm:ss.fff"));
                                                         }
                                                         else
                                                         {
@@ -136,8 +139,9 @@
                                                                 device.SetValue(W_CLineCPHDB.W_Long, _PackaxisTask.PackLength, RequestIn.StationCode);
                                                                 device.SetValue(W_CLineCPHDB.W_Wide, _PackaxisTask.PackWidth, RequestIn.StationCode);
                                                                 device.SetValue(W_CLineCPHDB.W_High, _PackaxisTask.PackHeight, RequestIn.StationCode);
-                                                                device.SetValue(W_CLineCPHDB.W_TMID, _PackaxisTask.BarCode, RequestIn.StationCode);
+                                                                device.SetValue(W_CLineCPHDB.W_TMID, conveyorLineInfoRead.R_BoxCode.Trim(), RequestIn.StationCode);
                                                                 device.SetValue(W_CLineCPHDB.W_Request, 1, RequestIn.StationCode);
+                                                                //WriteInfo($"鍒嗗灈鍙h繍琛屾椂闂�", $"{conveyorLineInfoRead.R_BoxCode}璇锋眰瀹屾垚" + DateTime.Now.ToString("HH:mm:ss.fff"));
                                                                 WebResponseContent content = _taskService.MESBoxCodeNotice(conveyorLineInfoRead.R_BoxCode.Trim());
                                                                 if (content.Status)
                                                                 {
@@ -161,6 +165,7 @@
                                                     WriteError(RequestIn.StationName, $"鏈壘鍒拌澶囧瓙缂栧彿{RequestIn.StationCode}鐨勫崗璁俊鎭�");
                                                 }
                                             }
+                                            //WriteInfo($"鍒嗗灈鍙h繍琛屾椂闂�", $"缁撴潫鏃堕棿:" + DateTime.Now.ToString("HH:mm:ss.fff"));
                                         }
                                     }
                                     catch (Exception ex)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob1_CP.cs"
similarity index 96%
copy from "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
copy to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob1_CP.cs"
index 2fb32e2..5a0ec05 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob1_CP.cs"
@@ -36,7 +36,7 @@
 namespace WIDESEAWCS_Tasks
 {
     [DisallowConcurrentExecution]
-    public class MDJob_CP : JobBase, IJob
+    public class MDJob1_CP : JobBase, IJob
     {
         private readonly ICacheService _cacheService;
         private readonly IStationMangerRepository _stationMangerRepository;
@@ -46,7 +46,7 @@
         private readonly IStationPackInfoRepository _stationPackInfoRepository;
         private readonly List<Dt_WarehouseDevice> warehouseDevices;
 
-        public MDJob_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
+        public MDJob1_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
         {
             _cacheService = cacheService;
             _stationMangerRepository = stationMangerRepository;
@@ -74,6 +74,10 @@
                 if (flag && value != null)
                 {
                     OtherDevice device = (OtherDevice)value;
+                    if (!device.IsConnected)
+                    {
+                        return Task.CompletedTask;
+                    }
                     List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StackerCraneCode == device.DeviceCode && x.StationType == StationTypeEnum.StationType_InStartAndOutEnd.ObjToInt());
                     //鑾峰彇鍗忚
                     DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == device.DeviceCode && x.DeviceProParamType == nameof(R_MDDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
@@ -199,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                WriteError(nameof(MDJob_CP),ex.Message);
+                WriteError(nameof(MDJob1_CP),ex.Message);
             }
             return Task.CompletedTask;
         }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob2_CP.cs"
similarity index 96%
copy from "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
copy to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob2_CP.cs"
index 2fb32e2..a8fcbf6 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob2_CP.cs"
@@ -36,7 +36,7 @@
 namespace WIDESEAWCS_Tasks
 {
     [DisallowConcurrentExecution]
-    public class MDJob_CP : JobBase, IJob
+    public class MDJob2_CP : JobBase, IJob
     {
         private readonly ICacheService _cacheService;
         private readonly IStationMangerRepository _stationMangerRepository;
@@ -46,7 +46,7 @@
         private readonly IStationPackInfoRepository _stationPackInfoRepository;
         private readonly List<Dt_WarehouseDevice> warehouseDevices;
 
-        public MDJob_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
+        public MDJob2_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
         {
             _cacheService = cacheService;
             _stationMangerRepository = stationMangerRepository;
@@ -74,6 +74,10 @@
                 if (flag && value != null)
                 {
                     OtherDevice device = (OtherDevice)value;
+                    if (!device.IsConnected)
+                    {
+                        return Task.CompletedTask;
+                    }
                     List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StackerCraneCode == device.DeviceCode && x.StationType == StationTypeEnum.StationType_InStartAndOutEnd.ObjToInt());
                     //鑾峰彇鍗忚
                     DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == device.DeviceCode && x.DeviceProParamType == nameof(R_MDDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
@@ -199,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                WriteError(nameof(MDJob_CP),ex.Message);
+                WriteError(nameof(MDJob2_CP),ex.Message);
             }
             return Task.CompletedTask;
         }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob3_CP.cs"
similarity index 96%
rename from "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
rename to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob3_CP.cs"
index 2fb32e2..a6ddaf5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob3_CP.cs"
@@ -36,7 +36,7 @@
 namespace WIDESEAWCS_Tasks
 {
     [DisallowConcurrentExecution]
-    public class MDJob_CP : JobBase, IJob
+    public class MDJob3_CP : JobBase, IJob
     {
         private readonly ICacheService _cacheService;
         private readonly IStationMangerRepository _stationMangerRepository;
@@ -46,7 +46,7 @@
         private readonly IStationPackInfoRepository _stationPackInfoRepository;
         private readonly List<Dt_WarehouseDevice> warehouseDevices;
 
-        public MDJob_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
+        public MDJob3_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
         {
             _cacheService = cacheService;
             _stationMangerRepository = stationMangerRepository;
@@ -74,6 +74,10 @@
                 if (flag && value != null)
                 {
                     OtherDevice device = (OtherDevice)value;
+                    if (!device.IsConnected)
+                    {
+                        return Task.CompletedTask;
+                    }
                     List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StackerCraneCode == device.DeviceCode && x.StationType == StationTypeEnum.StationType_InStartAndOutEnd.ObjToInt());
                     //鑾峰彇鍗忚
                     DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == device.DeviceCode && x.DeviceProParamType == nameof(R_MDDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
@@ -199,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                WriteError(nameof(MDJob_CP),ex.Message);
+                WriteError(nameof(MDJob3_CP),ex.Message);
             }
             return Task.CompletedTask;
         }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob4_CP.cs"
similarity index 96%
copy from "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
copy to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob4_CP.cs"
index 2fb32e2..29ee466 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob4_CP.cs"
@@ -36,7 +36,7 @@
 namespace WIDESEAWCS_Tasks
 {
     [DisallowConcurrentExecution]
-    public class MDJob_CP : JobBase, IJob
+    public class MDJob4_CP : JobBase, IJob
     {
         private readonly ICacheService _cacheService;
         private readonly IStationMangerRepository _stationMangerRepository;
@@ -46,7 +46,7 @@
         private readonly IStationPackInfoRepository _stationPackInfoRepository;
         private readonly List<Dt_WarehouseDevice> warehouseDevices;
 
-        public MDJob_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
+        public MDJob4_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
         {
             _cacheService = cacheService;
             _stationMangerRepository = stationMangerRepository;
@@ -74,6 +74,10 @@
                 if (flag && value != null)
                 {
                     OtherDevice device = (OtherDevice)value;
+                    if (!device.IsConnected)
+                    {
+                        return Task.CompletedTask;
+                    }
                     List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StackerCraneCode == device.DeviceCode && x.StationType == StationTypeEnum.StationType_InStartAndOutEnd.ObjToInt());
                     //鑾峰彇鍗忚
                     DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == device.DeviceCode && x.DeviceProParamType == nameof(R_MDDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
@@ -199,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                WriteError(nameof(MDJob_CP),ex.Message);
+                WriteError(nameof(MDJob4_CP),ex.Message);
             }
             return Task.CompletedTask;
         }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob5_CP.cs"
similarity index 96%
copy from "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
copy to "\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob5_CP.cs"
index 2fb32e2..2a75a48 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob_CP.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\347\240\201\345\236\233/MDJob5_CP.cs"
@@ -36,7 +36,7 @@
 namespace WIDESEAWCS_Tasks
 {
     [DisallowConcurrentExecution]
-    public class MDJob_CP : JobBase, IJob
+    public class MDJob5_CP : JobBase, IJob
     {
         private readonly ICacheService _cacheService;
         private readonly IStationMangerRepository _stationMangerRepository;
@@ -46,7 +46,7 @@
         private readonly IStationPackInfoRepository _stationPackInfoRepository;
         private readonly List<Dt_WarehouseDevice> warehouseDevices;
 
-        public MDJob_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
+        public MDJob5_CP(ICacheService cacheService, IStationMangerRepository stationMangerRepository,  IPackaxisRepository packaxisRepository, IPackaxisTaskRepository packaxisTaskRepository,IPackaxisTaskService packaxisTaskService, IStationPackInfoRepository stationPackInfoRepository)
         {
             _cacheService = cacheService;
             _stationMangerRepository = stationMangerRepository;
@@ -74,6 +74,10 @@
                 if (flag && value != null)
                 {
                     OtherDevice device = (OtherDevice)value;
+                    if (!device.IsConnected)
+                    {
+                        return Task.CompletedTask;
+                    }
                     List<Dt_StationManger> stationMangers = _stationMangerRepository.QueryData(x => x.StackerCraneCode == device.DeviceCode && x.StationType == StationTypeEnum.StationType_InStartAndOutEnd.ObjToInt());
                     //鑾峰彇鍗忚
                     DeviceProDTO? deviceProRead = device.DeviceProDTOs.Where(x => x.DeviceChildCode == device.DeviceCode && x.DeviceProParamType == nameof(R_MDDB)).OrderBy(x => x.DeviceProOffset).FirstOrDefault();
@@ -199,7 +203,7 @@
             }
             catch (Exception ex)
             {
-                WriteError(nameof(MDJob_CP),ex.Message);
+                WriteError(nameof(MDJob5_CP),ex.Message);
             }
             return Task.CompletedTask;
         }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutSGOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutSGOrder.cs"
index 584a3d3..897dfba 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutSGOrder.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutSGOrder.cs"
@@ -95,6 +95,7 @@
         /// </summary>
         [Navigate(NavigateType.OneToMany, nameof(Dt_OutSGOrderDetail.OutSGOrderId), nameof(Id))]
         public List<Dt_OutSGOrderDetail> Details { get; set; }
+        [SugarColumn(IsIgnore = true)]
         public string MaterialLackStatus { get; set; }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutSGOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutSGOrderDetailService.cs"
index 907c163..96cb2e0 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutSGOrderDetailService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutSGOrderDetailService.cs"
@@ -5,6 +5,7 @@
 using System.Text;
 using System.Threading.Tasks;
 using WIDESEA_Common.LocationEnum;
+using WIDESEA_Common.OrderEnum;
 using WIDESEA_Common.StockEnum;
 using WIDESEA_Core;
 using WIDESEA_Core.BaseServices;
@@ -80,8 +81,17 @@
                 List<Dt_StockInfo> stockInfos = _stockService.StockInfoService.GetUseOldCacheStocks(item.MaterialNo, item.Width).Where(x => !palletCodes.Contains(x.PalletCode)).ToList() ?? new List<Dt_StockInfo>();
                 //鑾峰彇绔嬪簱鍙敤搴撳瓨
                 stockInfos.AddRange(_stockService.StockInfoService.GetUseableStocks(item.MaterialNo, item.Width, outBSTOrders.FirstOrDefault().WarehouseId).Where(x=>!palletCodes.Contains(x.PalletCode)).ToList());
+                
+                //鑾峰彇鎵�鏈夎鐗╂枡鍗曟嵁
+                List<Dt_OutSGOrderDetail> details = outboundOrderDetails.Where(x => x.MaterialNo == item.MaterialNo && x.Width == item.Width && x.MachineName == item.MachineName).ToList();
+
                 if (!stockInfos.Any())
                 {
+                    //娌℃湁鍙敤搴撳瓨锛屾爣璁颁负缂烘枡
+                    foreach (var detail in details)
+                    {
+                        detail.OutSGOrderDetailStatus = OutOrderStatusEnum.缂烘枡.ObjToInt();
+                    }
                     message += $"鐗╂枡锛歿item.MaterialNo},骞呭锛歿item.Width}鏃犲簱瀛橈紱";
                     continue;
                 }
@@ -90,8 +100,7 @@
                 List<Dt_StockInfo> autoAssignStocks = _stockService.StockInfoService.GetOutOldStocks(stockInfos, needQuantity).ToList();
                 //娣诲姞搴撳瓨鍒嗛厤
                 outStocks.AddRange(autoAssignStocks);
-                //鑾峰彇鎵�鏈夎鐗╂枡鍗曟嵁
-                List<Dt_OutSGOrderDetail> details = outboundOrderDetails.Where(x => x.MaterialNo == item.MaterialNo && x.Width == item.Width && x.MachineName == item.MachineName).ToList();
+                
                 autoAssignStocks.ForEach(x =>
                 {
                     x.StockOutLength = 0;
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
index 27a2bfd..8a4bc01 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
@@ -975,6 +975,10 @@
                 {
                     item.Count -= count.Count;
                 }
+                if (item.Count >= 50 && count?.Count<=2)
+                {
+                    return item.RoadwayNo;
+                }
             }
             return locationCounts.Where(x => x.Count > 0).OrderByDescending(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
         }

--
Gitblit v1.9.3