From bc7bd9be4efa79645cb8f5c959b5e398fae9986f Mon Sep 17 00:00:00 2001 From: duyongjia <adu_555@163.com> Date: 星期三, 26 二月 2025 10:23:42 +0800 Subject: [PATCH] 最新提交 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 130 +++++++++++++++++++------------------------ 1 files changed, 58 insertions(+), 72 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" index 4b262f6..6dcdd61 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" @@ -16,34 +16,21 @@ #endregion << 鐗� 鏈� 娉� 閲� >> using AutoMapper; -using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; using Quartz; -using System; -using System.Collections.Generic; using System.Data; -using System.Linq; -using System.Reflection; -using System.Text; using System.Threading.Tasks; -using WIDESEAWCS_BasicInfoService; using WIDESEAWCS_Common.TaskEnum; -using WIDESEAWCS_Core; -using WIDESEAWCS_Core.Enums; -using WIDESEAWCS_Core.Helper; using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_ITaskInfoService; using WIDESEAWCS_Model.Models; using WIDESEAWCS_QuartzJob; -using WIDESEAWCS_QuartzJob.DTO; -using WIDESEAWCS_QuartzJob.Models; using WIDESEAWCS_QuartzJob.Service; -using WIDESEAWCS_TaskInfoRepository; using WIDESEAWCS_Tasks.ConveyorLineJob; namespace WIDESEAWCS_Tasks { [DisallowConcurrentExecution] - public class CommonConveyorLineJob : IJob + public class CommonConveyorLineJob :JobBase, IJob { private readonly ITaskService _taskService; private readonly ITaskRepository _taskRepository; @@ -81,76 +68,75 @@ command.CL1002Status = conveyorLine.Communicator.Read<short>("DB801.46.0"); command.Weight = conveyorLine.Communicator.Read<short>("DB801.48.0"); command.CL1002Barcode = conveyorLine.Communicator.Read<string>("DB801.52.0"); - command.ISIn = conveyorLine.Communicator.Read<short>("DB801.84.0"); + command.ISIn = conveyorLine.Communicator.Read<short>("DB801.84.0");//绛変簬1鐨勬椂鍊欎笉璁╁嚭搴� if (command != null) { - Dt_Task Intask = _taskService.QueryConveyorLineTask(command.CL1002Barcode); - if (Intask != null) + if (!string.IsNullOrEmpty(command.CL1002Barcode.Trim())) { - //鍏ュ簱澶勭悊 - //濡傛灉鍏ュ簱鍒颁綅锛屽垯鏍规嵁鎵樼洏鐮侊紙鏉$爜锛夊幓鑾峰彇WCS浠诲姟鍙� - if (command.ISInFinish == 1) + Dt_Task Intask = _taskService.QueryConveyorLineTask(command.CL1002Barcode); + if (Intask != null) { - _taskService.UpdateTaskStatus(Intask.TaskId, (int)TaskInStatusEnum.Line_InExecuting); - _taskExecuteDetailService.AddTaskExecuteDetail(Intask.TaskId, $"杈撻�佺嚎鍏ュ簱鎵ц涓�"); - //鍏ュ簱纭淇″彿 - conveyorLine.Communicator.Write<short>("DB800.6.0", 1); - _taskService.UpdateTaskStatus(Intask.TaskId, (int)TaskInStatusEnum.Line_InFinish); - _taskExecuteDetailService.AddTaskExecuteDetail(Intask.TaskId, $"杈撻�佺嚎鍏ュ簱瀹屾垚"); + //鍏ュ簱澶勭悊 + //濡傛灉鍏ュ簱鍒颁綅锛屽垯鏍规嵁鎵樼洏鐮侊紙鏉$爜锛夊幓鑾峰彇WCS浠诲姟鍙� + if (command.ISInFinish == 1) + { + _taskService.UpdateTaskStatus(Intask.TaskId, (int)TaskInStatusEnum.Line_InExecuting); + _taskExecuteDetailService.AddTaskExecuteDetail(Intask.TaskId, $"杈撻�佺嚎鍏ュ簱鎵ц涓�"); + //鍏ュ簱纭淇″彿 + conveyorLine.Communicator.Write<short>("DB800.6.0", 1); + _taskService.UpdateTaskStatus(Intask.TaskId, (int)TaskInStatusEnum.Line_InFinish); + _taskExecuteDetailService.AddTaskExecuteDetail(Intask.TaskId, $"杈撻�佺嚎鍏ュ簱瀹屾垚"); + } + } + else//濡傛灉鏍规嵁鎵樼洏鏉$爜鏌ヤ笉鍒颁换鍔★紝鍒欒涓烘槸绌烘墭鐩橈紝绌烘墭鐩樺叆搴撳彲浠ヤ笉闇�瑕佺粍鐩橈紝鐩存帴鏂板缓浠诲姟锛屼篃鍙互鐩存帴涓嬬┖鎵樺嚭搴撲换鍔� + { + + if (command.ISInFinish == 1)//澧炲姞鏍规嵁閲嶉噺鍒ゆ柇鏄惁鏄┖鎵樼洏鍒ゆ柇閫昏緫 + { + if (command.Weight <= 600) + { + //鍏堜笉缁橮LC鍏ュ簱纭淇″彿锛岃皟WMS绌烘墭鍏ュ簱浠诲姟鎺ュ彛 + _taskService.GenerateEmptyInBoundTask(command.CL1002Barcode); + } + else + { + WriteDebug(nameof(CommonConveyorLineJob), $"鐢熸垚绌烘墭鍏ュ簱浠诲姟鏃讹紝閲嶉噺瓒呴噸锛岀敓鎴愮┖鎵樺叆搴撲换鍔″け璐ワ紒"); + } + } + } } - else//濡傛灉鏍规嵁鎵樼洏鏉$爜鏌ヤ笉鍒颁换鍔★紝鍒欒涓烘槸绌烘墭鐩橈紝绌烘墭鐩樺叆搴撲笉闇�瑕佺粍鐩橈紝鐩存帴鏂板缓浠诲姟 + if (!string.IsNullOrEmpty(command.Barcode.Trim())) { - if (command.ISInFinish == 1) + Dt_Task Outtask = _taskService.QueryConveyorLineOutTask(command.Barcode); + if (Outtask != null) { - //鍏ュ簱纭淇″彿 - conveyorLine.Communicator.Write<short>("DB800.6.0", 1); - Dt_Task task = new Dt_Task(); - task.TaskNum= GetTaskNo(); - task.PalletCode = command.CL1002Barcode; - task.TaskType =(int)TaskInboundTypeEnum.Inbound; - task.TaskState = (int)TaskInStatusEnum.Line_InFinish; - task.Roadway = "SC01"; - task.SourceAddress = "R01-001-023-001"; - //鍚慦MS鐢宠绌鸿揣浣� - task.TargetAddress= WMSApiInvoke.GetAllLocationGroups(task.PalletCode); - _taskService.AddData(task); - Dt_Router dt_Router = new Dt_Router(); - //涓存椂璁板綍涓嬫墭鐩樺拰搴撲綅鐨勭粦瀹氬叧绯� - dt_Router.StartPosi = task.TargetAddress; - dt_Router.NextPosi = task.PalletCode; - dt_Router.InOutType = RouterInOutType.Out; - dt_Router.ChildPosi = "1"; - dt_Router.ChildPosiDeviceCode = "1"; - dt_Router.IsEnd = true; - _routerService.AddData(dt_Router); - _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskNum, $"杈撻�佺嚎鍏ュ簱鎵ц涓�"); - _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskNum, $"杈撻�佺嚎鍏ュ簱瀹屾垚"); - - - } + //鍑哄簱澶勭悊 + //濡傛灉鍑哄簱鍒颁綅锛屽嚭搴撲换鍔″畬鎴� + if (command.ISOutFinish == 1) + { + _taskService.UpdateTaskStatus(Outtask.TaskId, (int)TaskOutStatusEnum.Line_OutExecuting); + _taskExecuteDetailService.AddTaskExecuteDetail(Outtask.TaskId, $"杈撻�佺嚎鍑哄簱鎵ц涓�"); + _taskService.UpdateTaskStatus(Outtask.TaskId, (int)TaskOutStatusEnum.Line_OutFinish); + _taskExecuteDetailService.AddTaskExecuteDetail(Outtask.TaskId, $"杈撻�佺嚎鍑哄簱瀹屾垚"); + //鍑哄簱纭淇″彿 + conveyorLine.Communicator.Write<short>("DB800.0.0", 1); + _taskService.UpdateTaskStatus(Outtask.TaskId, (int)TaskOutStatusEnum.OutFinish); + _taskExecuteDetailService.AddTaskExecuteDetail(Outtask.TaskId, $"鍑哄簱浠诲姟瀹屾垚"); + _taskService.OutBoundTaskByWMS(Outtask.TaskNum); - - } - - Dt_Task Outtask = _taskService.QueryConveyorLineOutTask(command.Barcode); - if (Outtask != null) - { - //鍑哄簱澶勭悊 - //濡傛灉鍑哄簱鍒颁綅锛屽嚭搴撲换鍔″畬鎴� - if (command.ISOutFinish == 1) - { - _taskService.UpdateTaskStatus(Outtask.TaskId, (int)TaskOutStatusEnum.Line_OutExecuting); - _taskExecuteDetailService.AddTaskExecuteDetail(Outtask.TaskId, $"杈撻�佺嚎鍑哄簱鎵ц涓�"); - _taskService.UpdateTaskStatus(Outtask.TaskId, (int)TaskOutStatusEnum.Line_OutFinish); - _taskExecuteDetailService.AddTaskExecuteDetail(Outtask.TaskId, $"杈撻�佺嚎鍑哄簱瀹屾垚"); - //鍑哄簱纭淇″彿 - conveyorLine.Communicator.Write<short>("DB800.0.0", 1); - _taskService.UpdateTaskStatus(Outtask.TaskId, (int)TaskOutStatusEnum.OutFinish); - _taskExecuteDetailService.AddTaskExecuteDetail(Outtask.TaskId, $"鍑哄簱浠诲姟瀹屾垚"); + } } } + //Intask = _taskService.QueryConveyorLineTask(command.CL1002Barcode); + //Outtask = _taskService.QueryConveyorLineOutTask(command.Barcode); + //if (Intask==null&&Outtask==null && command.CL1001Free==1 && command.CL1002Free==1&& command.ISIn==0) + //{ + // //鐢熸垚绌鸿溅鍑哄簱浠诲姟 + // _taskService.GenerateEmptyOutBoundTask(); + //} + } Task.WaitAll(tasks.ToArray()); } -- Gitblit v1.9.3