From aeaab43f0a625382eaa85144b20d15eb00862a4c Mon Sep 17 00:00:00 2001
From: qinchulong <qinchulong@hnkhzn.com>
Date: 星期一, 03 三月 2025 19:18:08 +0800
Subject: [PATCH] 20250303调试后

---
 项目代码/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json |   71 ++++++-----------
 /dev/null                                                                |    0 
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs   |    2 
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs     |   52 ++++++++++--
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs                |   54 +++++++++++--
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs                |   27 +++++-
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ZXJ/ZXJJob.cs                |   11 ++
 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTEnum.cs               |    5 +
 8 files changed, 151 insertions(+), 71 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json"
index 091ae8d..ab32964 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/v17/DocumentLayout.json"
@@ -3,8 +3,8 @@
   "WorkspaceRootPath": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\",
   "Documents": [
     {
-      "AbsoluteMoniker": "D:0:0:{B17BAF3C-2BAD-4162-B6DC-46ED7A1E3D8D}|WIDESEAWCS_WMSPart\\WIDESEAWCS_WMSPart.csproj|f:\\git\u9879\u76EE\\yangjipingku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_wmspart\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{B17BAF3C-2BAD-4162-B6DC-46ED7A1E3D8D}|WIDESEAWCS_WMSPart\\WIDESEAWCS_WMSPart.csproj|solutionrelative:wideseawcs_wmspart\\locationinfoservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\wideseawcs_tasks\\oht\\ohtjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\oht\\ohtjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
       "AbsoluteMoniker": "D:0:0:{83F18A31-5983-4587-A0B2-414BF70E50B5}|WIDESEAWCS_TaskInfoService\\WIDESEAWCS_TaskInfoService.csproj|f:\\git\u9879\u76EE\\yangjipingku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_taskinfoservice\\taskservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -15,16 +15,12 @@
       "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\gzj\\gzjjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|f:\\git\u9879\u76EE\\yangjipingku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_common\\locationenum\\locationenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\locationenum\\locationenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\wideseawcs_tasks\\zxj\\zxjjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\zxj\\zxjjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     },
     {
-      "AbsoluteMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|f:\\git\u9879\u76EE\\yangjipingku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_common\\taskenum\\taskstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{9FBC654C-51DE-422D-9E1E-6A38268DE1E2}|WIDESEAWCS_Common\\WIDESEAWCS_Common.csproj|solutionrelative:wideseawcs_common\\taskenum\\taskstatusenum.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
-    },
-    {
-      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\wideseawcs_tasks\\oht\\ohtjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
-      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\oht\\ohtjob.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+      "AbsoluteMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|f:\\git\u9879\u76EE\\yangjipingku\\\u9879\u76EE\u4EE3\u7801\\wcs\\wideseawcs_server\\wideseawcs_tasks\\oht\\ohttaskcommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+      "RelativeMoniker": "D:0:0:{294E4915-0241-4C8C-BA99-7588B945863A}|WIDESEAWCS_Tasks\\WIDESEAWCS_Tasks.csproj|solutionrelative:wideseawcs_tasks\\oht\\ohttaskcommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
     }
   ],
   "DocumentGroupContainers": [
@@ -34,21 +30,8 @@
       "DocumentGroups": [
         {
           "DockedWidth": 200,
-          "SelectedChildIndex": 3,
+          "SelectedChildIndex": 4,
           "Children": [
-            {
-              "$type": "Document",
-              "DocumentIndex": 3,
-              "Title": "LocationEnum.cs",
-              "DocumentMoniker": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\LocationEnum\\LocationEnum.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Common\\LocationEnum\\LocationEnum.cs",
-              "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\LocationEnum\\LocationEnum.cs",
-              "RelativeToolTip": "WIDESEAWCS_Common\\LocationEnum\\LocationEnum.cs",
-              "ViewState": "AQIAAAkAAAAAAAAAAADwvwwAAAAiAAAA",
-              "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-03-02T12:50:53.078Z",
-              "EditorCaption": ""
-            },
             {
               "$type": "Document",
               "DocumentIndex": 1,
@@ -57,35 +40,35 @@
               "RelativeDocumentMoniker": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
               "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_TaskInfoService\\TaskService.cs",
               "RelativeToolTip": "WIDESEAWCS_TaskInfoService\\TaskService.cs",
-              "ViewState": "AQIAABsAAAAAAAAAAAAAADIAAAAIAAAA",
+              "ViewState": "AQIAAI0CAAAAAAAAAAAuwKICAAAUAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-03-02T12:38:43.767Z",
+              "WhenOpened": "2025-03-03T08:49:39.365Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
               "DocumentIndex": 4,
-              "Title": "TaskStatusEnum.cs",
-              "DocumentMoniker": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
-              "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
-              "RelativeToolTip": "WIDESEAWCS_Common\\TaskEnum\\TaskStatusEnum.cs",
-              "ViewState": "AQIAAHsAAAAAAAAAAAA1wIoAAAAfAAAA",
+              "Title": "OHTTaskCommand.cs",
+              "DocumentMoniker": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\OHT\\OHTTaskCommand.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\OHT\\OHTTaskCommand.cs",
+              "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\OHT\\OHTTaskCommand.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\OHT\\OHTTaskCommand.cs",
+              "ViewState": "AQIAACkAAAAAAAAAAAAswDoAAAAeAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-03-02T12:35:09.785Z",
+              "WhenOpened": "2025-03-03T08:27:17.639Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 0,
-              "Title": "LocationInfoService.cs",
-              "DocumentMoniker": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_WMSPart\\LocationInfoService.cs",
-              "RelativeDocumentMoniker": "WIDESEAWCS_WMSPart\\LocationInfoService.cs",
-              "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_WMSPart\\LocationInfoService.cs*",
-              "RelativeToolTip": "WIDESEAWCS_WMSPart\\LocationInfoService.cs*",
-              "ViewState": "AQIAAAgAAAAAAAAAAAASwBYAAABIAAAA",
+              "DocumentIndex": 3,
+              "Title": "ZXJJob.cs",
+              "DocumentMoniker": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ZXJ\\ZXJJob.cs",
+              "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\ZXJ\\ZXJJob.cs",
+              "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\ZXJ\\ZXJJob.cs",
+              "RelativeToolTip": "WIDESEAWCS_Tasks\\ZXJ\\ZXJJob.cs",
+              "ViewState": "AQIAAD0AAAAAAAAAAAAIwGAAAAAcAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
-              "WhenOpened": "2025-03-02T12:29:34.803Z",
+              "WhenOpened": "2025-03-03T06:27:45.31Z",
               "EditorCaption": ""
             },
             {
@@ -96,20 +79,20 @@
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\GZJ\\GZJJob.cs",
               "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\GZJ\\GZJJob.cs",
               "RelativeToolTip": "WIDESEAWCS_Tasks\\GZJ\\GZJJob.cs",
-              "ViewState": "AQIAAAwAAAAAAAAAAAAlwBcAAAAAAAAA",
+              "ViewState": "AQIAAE8AAAAAAAAAAAAuwNUAAAAUAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-03-02T07:23:03.899Z",
               "EditorCaption": ""
             },
             {
               "$type": "Document",
-              "DocumentIndex": 5,
+              "DocumentIndex": 0,
               "Title": "OHTJob.cs",
               "DocumentMoniker": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\OHT\\OHTJob.cs",
               "RelativeDocumentMoniker": "WIDESEAWCS_Tasks\\OHT\\OHTJob.cs",
               "ToolTip": "F:\\Git\u9879\u76EE\\YangJiPingKu\\\u9879\u76EE\u4EE3\u7801\\WCS\\WIDESEAWCS_Server\\WIDESEAWCS_Tasks\\OHT\\OHTJob.cs",
               "RelativeToolTip": "WIDESEAWCS_Tasks\\OHT\\OHTJob.cs",
-              "ViewState": "AQIAAEAAAAAAAAAAAAApwCUAAABGAAAA",
+              "ViewState": "AQIAAE4AAAAAAAAAAAAuwGkAAAAZAAAA",
               "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
               "WhenOpened": "2025-03-01T14:47:49.318Z",
               "EditorCaption": ""
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs"
index 47e5d5a..cc61ae8 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs"
@@ -102,7 +102,7 @@
         public string CurrentAddress { get; set; }
 
         /// <summary>
-        /// 涓嬩竴鍦板潃
+        /// 涓嬩竴鍦板潃  鐢ㄦ潵淇濆瓨鐩搁偦鐨勮揣浣嶄俊鎭�
         /// </summary>
         [ImporterHeader(Name = "涓嬩竴鍦板潃")]
         [ExporterHeader(DisplayName = "涓嬩竴鍦板潃")]
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 1fbfd07..dd4b366 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -253,11 +253,11 @@
                     return task;
                 }
                 //鏌ヨ褰撳墠浠诲姟姹犱腑鏄惁瀛樺湪鐘舵�佷负闈炴柊寤虹殑
-                task= BaseDal.QueryFirst(v => v.TaskState != (int)TaskInStatusEnum.InNew || v.TaskState != (int)TaskOutStatusEnum.OutNew);
-                if (task != null)
-                {
-                    throw new Exception($"褰撳墠浠诲姟姹犱腑瀛樺湪鎵ц涓殑浠诲姟,浠诲姟鍙�:銆恵task.TaskNum}銆�");
-                }
+                //task= BaseDal.QueryFirst(v => v.TaskState != (int)TaskInStatusEnum.InNew || v.TaskState != (int)TaskOutStatusEnum.OutNew);
+                //if (task != null)
+                //{
+                //    throw new Exception($"褰撳墠浠诲姟姹犱腑瀛樺湪鎵ц涓殑浠诲姟,浠诲姟鍙�:銆恵task.TaskNum}銆�");
+                //}
                 if (workTpe.Equals("In"))
                 {
                     task = BaseDal.QueryData(v=>v.TaskType==(int)TaskInboundTypeEnum.Inbound && v.TaskState==(int)TaskInStatusEnum.InNew).OrderByDescending(v=>v.Grade) .OrderBy(v=>v.CreateDate).First();
@@ -311,7 +311,7 @@
         /// <returns>杩斿洖浠诲姟瀹炰綋瀵硅薄锛屽彲鑳戒负null</returns>
         public Dt_Task QueryTakNnmTask(int taskNum)
         {
-            return BaseDal.QueryFirst(v=>v.TaskNum== taskNum);
+            return BaseDal.QueryFirst(v=>v.TaskId== taskNum);
         }
         /// <summary>
         /// 淇敼澶╄溅浠诲姟鐘舵�侊紝灏嗗叆搴撳彇璐ф墽琛屼腑淇敼涓哄叆搴撳彇璐у畬鎴�
@@ -566,7 +566,7 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
-                var nawtask = BaseDal.QueryFirst(v=>v.TaskNum== taskNum);
+                var nawtask = BaseDal.QueryFirst(v=>v.TaskId== taskNum);
                 if (nawtask == null)
                 {
                     throw new Exception(string.Format("澶╄溅鏀捐揣瀹屾垚浠诲姟鏈煡璇㈠埌浠诲姟鍙穥0}", taskNum));
@@ -578,7 +578,7 @@
                     Dt_StockInfo stock = new Dt_StockInfo();
                     stock.LocationCode = nawtask.TargetAddress;
                     stock.Weight = (decimal)weight;
-                    stock.StockStatus = (int)stockEnum.Lock;
+                    stock.StockStatus = (int)stockEnum.Free;
                     stock.BatchNo = batck.InBatch;
                     if (nawtask.Remark== (int)MateTypeEnum.ZiChan)
                     {
@@ -588,9 +588,25 @@
                     {
                         stock.Remark = (int)MateTypeEnum.WaiGou;
                     }
+                    Dt_StockInfo stockTow = new Dt_StockInfo();
+                    stockTow.LocationCode = nawtask.NextAddress;
+                    stockTow.Weight = (decimal)weight;
+                    stockTow.StockStatus = (int)stockEnum.Free;
+                    stockTow.BatchNo = batck.InBatch;
+                    if (nawtask.Remark == (int)MateTypeEnum.ZiChan)
+                    {
+                        stockTow.Remark = (int)MateTypeEnum.ZiChan;
+                    }
+                    else
+                    {
+                        stockTow.Remark = (int)MateTypeEnum.WaiGou;
+                    }
                     //淇敼璐т綅淇℃伅
                     var location = _locationRepository.QueryFirst(v=>v.LocationCode==nawtask.TargetAddress);
                     location.LocationStatus = (int)LocationStatusEnum.InStock;
+                    //淇敼璐т綅淇℃伅
+                    var locationtow = _locationRepository.QueryFirst(v => v.LocationCode == nawtask.NextAddress);
+                    locationtow.LocationStatus = (int)LocationStatusEnum.InStock;
                     //澶勭悊浠诲姟淇℃伅
                     Dt_Task_hty taskhty = new Dt_Task_hty();
                     taskhty.TaskNum = nawtask.TaskNum;
@@ -603,10 +619,15 @@
                     taskhty.Grade = nawtask.Grade;
                     taskhty.Dispatchertime = nawtask.Dispatchertime;
                     taskhty.Remark = nawtask.Remark;
+                    taskhty.PalletCode = nawtask.PalletCode;
+                    taskhty.NextAddress = nawtask.NextAddress;
+                    taskhty.CurrentAddress = nawtask.CurrentAddress;
                     //寮�濮嬫暟鎹簱浜嬪姟
                     _unitOfWorkManage.BeginTran();
                     _stockRepository.AddData(stock);
+                    _stockRepository.AddData(stockTow);
                     _locationRepository.UpdateData(location);
+                    _locationRepository.UpdateData(locationtow);
                     _taskhtyRepository.AddData(taskhty);
                     BaseDal.DeleteData(nawtask);
                     //鎻愪氦浜嬪姟
@@ -615,14 +636,18 @@
                 else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.Outbound)
                 {
                     //鏌ユ壘搴撳瓨
-                    var stock = _stockRepository.QueryFirst(v=>v.LocationCode== nawtask.TargetAddress);
+                    var stock = _stockRepository.QueryFirst(v=>v.LocationCode== nawtask.SourceAddress);
                     if (stock == null) 
                     {
                         throw new Exception($"鏈壘鍒板簱瀛樹俊鎭揣浣嶅彿:銆恵nawtask.TargetAddress}銆�");
                     }
+                    var Towstock = _stockRepository.QueryFirst(v => v.LocationCode == nawtask.NextAddress);
                     //淇敼璐т綅鐘舵��
-                    var location = _locationRepository.QueryFirst(v => v.LocationCode == nawtask.TargetAddress);
+                    var location = _locationRepository.QueryFirst(v => v.LocationCode == nawtask.SourceAddress);
                     location.LocationStatus = (int)LocationStatusEnum.Free;
+                    //淇敼璐т綅鐘舵��
+                    var locationTow = _locationRepository.QueryFirst(v => v.LocationCode == nawtask.NextAddress);
+                    locationTow.LocationStatus = (int)LocationStatusEnum.Free;
                     //鍑嗗鍘嗗彶浠诲姟鏁版嵁
                     Dt_Task_hty taskhty = new Dt_Task_hty();
                     taskhty.TaskNum = nawtask.TaskNum;
@@ -635,11 +660,16 @@
                     taskhty.Grade = nawtask.Grade;
                     taskhty.Dispatchertime = nawtask.Dispatchertime;
                     taskhty.Remark = nawtask.Remark;
+                    taskhty.PalletCode = nawtask.PalletCode;
+                    taskhty.NextAddress = nawtask.NextAddress;
+                    taskhty.CurrentAddress = nawtask.CurrentAddress;
                     //寮�濮嬫暟鎹簱浜嬪姟
                     _unitOfWorkManage.BeginTran();
                     _stockRepository.DeleteData(stock);
+                    _stockRepository.DeleteData(Towstock);
                     _locationRepository.UpdateData(location);
-                    _taskhtyRepository.AddData(taskhty);
+                    _locationRepository.UpdateData(locationTow);
+                    //_taskhtyRepository.AddData(taskhty);
                     BaseDal.DeleteData(nawtask);
                     //鎻愪氦浜嬪姟
                     _unitOfWorkManage.CommitTran();
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs"
index 1ebe252..674b8c5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs"
@@ -15,6 +15,7 @@
 using System.Reflection;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEAWCS_Common.LocationEnum;
 using WIDESEAWCS_Common.TaskEnum;
 using WIDESEAWCS_Communicator;
 using WIDESEAWCS_Core.BaseRepository;
@@ -43,6 +44,8 @@
         private readonly IRepository<dt_outstockinfo> _outStockRepository;
         private readonly IRepository<dt_batchInfo> _batchInfoRepository;
         private readonly IRepository<Dt_StockInfo> _StockInfoRepository;
+        private readonly IRepository<Dt_LocationInfo> _LocationInfoRepository;
+        private readonly IUnitOfWorkManage _unitOfWorkManage;
 
         WebSocketServer _webSocketServer;
         public GZJJob(ITaskService taskService, WebSocketServer webSocketServer, Idt_ErrormsginfoService errormsginfoService,
@@ -53,7 +56,9 @@
             IRepository<dt_outstockinfo> outStockRepository,
             IRepository<dt_storagemode> storagemodeRepository,
             IRepository<dt_batchInfo> batchInfoRepository,
-            IRepository<Dt_StockInfo> StockInfoRepository)
+            IRepository<Dt_StockInfo> StockInfoRepository,
+            IRepository<Dt_LocationInfo> LocationInfoRepository,
+            IUnitOfWorkManage unitOfWorkManage)
         {
             _taskService = taskService;//娉ㄥ叆
             _webSocketServer = webSocketServer;
@@ -65,6 +70,8 @@
             _outStockRepository = outStockRepository;
             _batchInfoRepository = batchInfoRepository;
             _StockInfoRepository = StockInfoRepository;
+            _LocationInfoRepository = LocationInfoRepository;
+            _unitOfWorkManage = unitOfWorkManage;
         }
 
         public Task Execute(IJobExecutionContext context)
@@ -155,16 +162,16 @@
                 try
                 {
                     #region 鐢熸垚鍑哄簱浠诲姟
+                    if (!OHTJob.oHTReadData.R_ZXJ_isWork)
+                    {
+                        throw new Exception($"鏁村舰鏈烘姇鍏ヤ娇鐢ㄤ俊鍙蜂负false");
+                    }
                     var isout = _outStockRepository.QueryFirst(v => v.Id == 1);
                     if (isout.isout != 1)
                     {
                         throw new Exception($"褰撳墠绯荤粺璁剧疆涓轰笉鍑哄簱妯″紡");
                     }
-                    if (!OHTJob.oHTReadData.R_ZXJ_isWork)
-                    {
-                        throw new Exception($"鏁村舰鏈烘姇鍏ヤ娇鐢ㄤ俊鍙蜂负false");
-                    }
-                    if (!OHTJob.oHTReadData.R_ZXJ_TCMode || OHTJob.oHTReadData.R_HC_isReadyWork)
+                    if (!OHTJob.oHTReadData.R_ZXJ_TCMode || !OHTJob.oHTReadData.R_HC_isReadyWork)
                     {
                         throw new Exception($"鏁村舰鏈轰笉灞炰簬澶╄溅涓婃枡妯″紡鎴栧ぉ杞︽斁鏉夸俊鍙蜂负false");
                     }
@@ -177,11 +184,30 @@
                     //鏌ヨ褰撳墠闇�瑕佸嚭搴撶殑鎵规鍙凤紝浠ュ強鍑哄簱鐗╂枡绫诲瀷
                     var batch = _batchInfoRepository.QueryFirst(v => v.Id == 1);
                     //鏌ヨ搴撳瓨鐗╂枡搴撳瓨淇℃伅
-                    var stocks = _StockInfoRepository.QueryData(v => v.Remark == batch.materType && v.BatchNo == batch.OutBatch).OrderBy(v => v.CreateDate).ToList();
+                    var stocks = _StockInfoRepository.QueryData(v => v.Remark == batch.materType && v.BatchNo == batch.OutBatch && v.StockStatus==0)
+                        .OrderBy(v => v.CreateDate).ToList();
                     if (stocks.Count <= 0)
                     {
                         throw new Exception($"褰撳墠搴撳瓨涓病鏈夈�恵batch.materType}銆戯紙0鑷骇 1澶栬喘锛変笖鎵规涓恒�恵batch.OutBatch}銆戠殑鐗╂枡");
                     }
+                    //鏌ヨ璐т綅
+                    var locaOne=_LocationInfoRepository.QueryFirst(v=>v.LocationCode== stocks[0].LocationCode);
+                    //鏌ヨ鐩搁偦鐨勮揣浣�
+                    Dt_LocationInfo locaTow = new Dt_LocationInfo();
+                    if (locaOne.Depth==1) 
+                    {
+                        locaTow = _LocationInfoRepository.QueryFirst(v => v.Row == locaOne.Row &&v.Column== locaOne.Column && v.Depth==2);
+                    }
+                    else
+                    {
+                        locaTow = _LocationInfoRepository.QueryFirst(v => v.Row == locaOne.Row && v.Column == locaOne.Column && v.Depth == 1);
+                    }
+                    locaOne.LocationStatus = (int)LocationStatusEnum.Lock;
+                    locaTow.LocationStatus = (int)LocationStatusEnum.Lock;
+                    //鏌ヨ鐩搁偦鐨勫簱瀛�
+                    var BBstock = _StockInfoRepository.QueryFirst(v=>v.LocationCode== locaTow.LocationCode);
+                    BBstock.StockStatus = 1;
+                    stocks[0].StockStatus = 1;
                     //鏌ヨ缁堢偣绔欏彴淇℃伅
                     var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "鏁村舰鏈烘斁鏂欎綅");
                     //寮�濮嬪垱寤轰换鍔�
@@ -190,14 +216,26 @@
                     outtask.TaskType = (int)TaskOutboundTypeEnum.Outbound;
                     outtask.TaskState = (int)TaskOutStatusEnum.OutNew;
                     outtask.SourceAddress = stocks[0].LocationCode;
-                    outtask.TargetAddress = station.Row + "-" + station.Column + "-1"; ;
+                    outtask.TargetAddress = station.Row + "-" + station.Column + "-1";
+                    outtask.NextAddress = locaTow.LocationCode;
                     outtask.Grade = 1;
+                    outtask.WMSId = 3;
                     outtask.Remark = batch.materType;
+                    outtask.PalletCode = "text";
+                    outtask.CurrentAddress = "text";
+
+                    _unitOfWorkManage.BeginTran();
+                    _LocationInfoRepository.UpdateData(locaOne);
+                    _LocationInfoRepository.UpdateData(locaTow);
+                    _StockInfoRepository.UpdateData(BBstock);
                     _dt_taskRepositiry.AddData(outtask);
+                    _StockInfoRepository.UpdateData(stocks[0]);
+                    _unitOfWorkManage.CommitTran();
                     #endregion
                 }
                 catch (Exception ex)
                 {
+                    _unitOfWorkManage.RollbackTran();
                     _ErrormsginfoService.UpdateErrorMsg(ex.Message, 3);
                 }
             }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTEnum.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTEnum.cs"
index e37d536..edc51de 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTEnum.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTEnum.cs"
@@ -263,6 +263,11 @@
         /// </summary>
         [Description("杩涙枡灏忚溅瀹夊叏浣�")]
         R_issafe,
+        /// <summary>
+        /// 鍐欒剦鍐蹭俊鍙�
+        /// </summary>
+        [Description("鍐欒剦鍐蹭俊鍙�")]
+        W_ZXJ_HeartBeat,
     }
 
     public enum GZJDBName 
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs"
index 43608d4..64f7259 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs"
@@ -55,10 +55,10 @@
                 var ZXJdevice = Storage.Devices.Find(v => v.DeviceName == "闃虫瀬鏁村舰鏈�");
                 //瑙勬暣鏈篜LC瀵硅薄
                 var GZJevice = Storage.Devices.Find(v => v.DeviceName == "闃虫瀬瑙勬暣鏈�");
-                if (!device.Communicator.IsConnected || !ZXJdevice.Communicator.IsConnected || !GZJevice.Communicator.IsConnected)
-                {
-                    return Task.CompletedTask;
-                }
+                //if (!device.Communicator.IsConnected || !ZXJdevice.Communicator.IsConnected || !GZJevice.Communicator.IsConnected)
+                //{
+                //    return Task.CompletedTask;
+                //}
                 try
                 {
                     #region 澶╄溅瀹屾垚浠诲姟閫昏緫
@@ -111,7 +111,7 @@
                     #endregion
 
                     #region 澶╄溅鍙戦�佷换鍔¢�昏緫
-                    if (oHTReadData.R_RunMode == (int)RunModeEnum.Automatic && oHTReadData.R_AlarmCode == (int)AlarmCodeEnum.Normal)
+                    if (oHTReadData.R_RunMode == (int)RunModeEnum.Automatic )
                     {
                         if (oHTReadData.R_RunState == (int)RunStateEnum.Standby)
                         {
@@ -121,6 +121,8 @@
                                 OHTTaskCommand? oHTTaskCommand = ConvertToOHTTaskCommand(task);
                                 if (oHTTaskCommand != null)
                                 {
+                                    //缁欏ぉ杞︿笅鍙戜换鍔′箣鍓嶅皢姝ゅ�煎啓0
+                                    device.SetValue(DeviceDBName.W_ConfirmSignal, 0);
                                     //todo锛氬啓鍏ヤ换鍔″懡浠�
                                     device.SetValue(DeviceDBName.W_Task_Type, oHTTaskCommand.W_Task_Type);
                                     device.SetValue(DeviceDBName.W_Pick_Line, oHTTaskCommand.W_Pick_Line);
@@ -184,7 +186,7 @@
                     _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"浠诲姟婧愬湴鍧�閰嶇疆閿欒锛�");
                     return null;
                 }
-                oHtTaskCommand.W_CheckValue = task.TaskType + Convert.ToInt16(SourceCodes[0]) + Convert.ToInt16(SourceCodes[1]);
+                oHtTaskCommand.W_CheckValue = 2 + Convert.ToInt16(SourceCodes[0]) + Convert.ToInt16(SourceCodes[1]);
             }
             else if (task.TaskState == (int)TaskInStatusEnum.Line_Ingrab || task.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting)
             {
@@ -203,7 +205,7 @@
                     _taskService.UpdateTaskExceptionMessage(task.TaskNum, $"浠诲姟婧愬湴鍧�閰嶇疆閿欒锛�");
                     return null;
                 }
-                oHtTaskCommand.W_CheckValue = task.TaskType + Convert.ToInt16(SourceCodes[0]) + Convert.ToInt16(SourceCodes[1]);
+                oHtTaskCommand.W_CheckValue = 3 + Convert.ToInt16(SourceCodes[0]) + Convert.ToInt16(SourceCodes[1]);
             }
             
             if (task.WMSId==1)
@@ -249,6 +251,17 @@
                     InorOut = "In";
                 }
             }
+            else
+            {
+                if (workType.Equals("In"))
+                {
+                    InorOut = "Out";
+                }
+                else
+                {
+                    InorOut = "In";
+                }
+            }
             return task;
         }
     }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ZXJ/ZXJJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ZXJ/ZXJJob.cs"
index c3ffe0e..ea90c33 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ZXJ/ZXJJob.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ZXJ/ZXJJob.cs"
@@ -30,6 +30,7 @@
     [DisallowConcurrentExecution]
     public class ZXJJob : JobBase, IJob
     {
+        public static bool W_ZXJ_Heat = true;
         private readonly ITaskService _taskService;
         WebSocketServer _webSocketServer;
         private readonly Idt_ErrormsginfoService _ErrormsginfoService;
@@ -88,6 +89,16 @@
                         OHTJob.oHTReadData.R_HC_isReadyWork = device.GetValue<ZXJDBName, bool>(ZXJDBName.R_HC_isReadyWork);
                         OHTJob.oHTReadData.R_issafe = device.GetValue<ZXJDBName, bool>(ZXJDBName.R_issafe);
                         #endregion
+                        if (W_ZXJ_Heat)
+                        {
+                            W_ZXJ_Heat = false;
+                            device.SetValue(ZXJDBName.W_ZXJ_HeartBeat, W_ZXJ_Heat);
+                        }
+                        else
+                        {
+                            W_ZXJ_Heat = true;
+                            device.SetValue(ZXJDBName.W_ZXJ_HeartBeat, W_ZXJ_Heat);
+                        }
                     }
                     else
                     {
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/~$\346\234\211\350\211\262WMS\344\270\216\345\244\251\350\275\246\344\272\244\344\272\222\345\215\217\350\256\256.docx" "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/~$\346\234\211\350\211\262WMS\344\270\216\345\244\251\350\275\246\344\272\244\344\272\222\345\215\217\350\256\256.docx"
deleted file mode 100644
index fcd42e3..0000000
--- "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/~$\346\234\211\350\211\262WMS\344\270\216\345\244\251\350\275\246\344\272\244\344\272\222\345\215\217\350\256\256.docx"
+++ /dev/null
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/~$\346\234\272\347\273\204\351\200\232\344\277\241\345\215\217\350\256\256.doc" "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/~$\346\234\272\347\273\204\351\200\232\344\277\241\345\215\217\350\256\256.doc"
deleted file mode 100644
index fcd42e3..0000000
--- "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/~$\346\234\272\347\273\204\351\200\232\344\277\241\345\215\217\350\256\256.doc"
+++ /dev/null
Binary files differ

--
Gitblit v1.9.3