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