From b9740c5fc85e626cb455bc5bac685fa247839d00 Mon Sep 17 00:00:00 2001 From: wankeda <Administrator@DESKTOP-HAU3ST3> Date: 星期五, 18 四月 2025 10:04:38 +0800 Subject: [PATCH] 优化代码 --- 代码管理/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 41 ++++++++++++++++++++++++++++++++--------- 1 files changed, 32 insertions(+), 9 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" index 68847ca..448e4f4 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs" @@ -17,6 +17,7 @@ #endregion << 鐗� 鏈� 娉� 閲� >> +using System.Threading.Tasks; using AutoMapper; using Quartz; using WIDESEAWCS_Common.TaskEnum; @@ -40,8 +41,9 @@ private readonly ITaskExecuteDetailService _taskExecuteDetailService; private readonly IRouterService _routerService; private readonly IMapper _mapper; + private readonly ITaskCZDetailsRepository _detailsRepository; - public CommonConveyorLineJob(ITaskService taskService, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper, ITaskRepository taskRepository, ITaskCZRepository taskCZRepository) + public CommonConveyorLineJob(ITaskService taskService, ITaskCZDetailsRepository detailsRepository, ITaskExecuteDetailService taskExecuteDetailService, IRouterService routerService, IMapper mapper, ITaskRepository taskRepository, ITaskCZRepository taskCZRepository) { _taskService = taskService; _taskExecuteDetailService = taskExecuteDetailService; @@ -49,11 +51,10 @@ _mapper = mapper; _taskRepository = taskRepository; _taskCZRepository = taskCZRepository; + _detailsRepository = detailsRepository; } public Task Execute(IJobExecutionContext context) - - { try @@ -68,8 +69,8 @@ // 瀹氫箟绾夸綋瀹炵洏鍏ュ簱璇锋眰鐨勫湴鍧�鍜屼换鍔$被鍨� var requests = new Dictionary<string, string> { - { "DB1002.1093.0", "ZJXL-WLX002" }, - { "DB1002.1493.0", "FJXL-WLX002" } + { "DB1002.1493.0", "ZJXL-WLX002" }, + { "DB1002.1093.0", "FJXL-WLX002" } }; // 瀹氫箟绾夸綋绌虹洏鍥炴祦璇锋眰鐨勫湴鍧�鍜屼换鍔$被鍨� @@ -123,7 +124,7 @@ } // 鏌ヨ浠诲姟绫诲瀷瀵瑰簲鐨刢zTask - DtCZTask czTask = _taskCZRepository.QueryFirst(x => x.TaskType == taskType); + DtCZTask czTask = _taskCZRepository.QueryFirst(x => x.TaskType == taskType && (x.TaskStatus == TaskInStatusEnum.InFinish.ToString() || x.TaskStatus == TaskInStatusEnum.Line_InExecuting.ToString())); if (czTask == null) { ConsoleHelper.WriteInfoLine($"{nameof(CommonConveyorLineJob)}: {taskType}{requestType},{taskType}浠诲姟涓嶅瓨鍦紝绋嶅悗閲嶈瘯......"); @@ -131,7 +132,7 @@ } // 鍒涘缓骞舵坊鍔犳柊浠诲姟鍒颁换鍔′粨搴� - task = CreateTask(fromAdd, czTask.TaskEndAddress, czTask.TaskOrderNo, czTask.TaskProductCode, taskType); + task = CreateTask(fromAdd, czTask.TaskEndAddress, czTask.TaskOrderNo, czTask.TaskProductCode, taskType, czTask.Id); _taskRepository.AddData(task); ConsoleHelper.WriteInfoLine($"{nameof(CommonConveyorLineJob)}: {taskType}{requestType},浠诲姟宸茬敓鎴愶紝绛夊緟鎵ц......"); } @@ -191,8 +192,30 @@ } // 杈呭姪鏂规硶锛氬垱寤轰换鍔″璞� - private Dt_Task CreateTask(string currentAddress, string targetAddress, string remark, string palletCode, string taskType) + private Dt_Task CreateTask(string currentAddress, string targetAddress, string remark, string palletCode, string taskType, int czTaskID = 0) { + if (targetAddress != "WaitBind") + { + var details = _detailsRepository.QueryData(x => x.TaskEndAddress == targetAddress).ToList(); + foreach (var item in details) + { + var taskCZ = _taskCZRepository.QueryFirst(x => x.TaskTaskID == item.TaskTaskID); + if (taskCZ.TaskType.Contains("姝f瀬")) + { + taskCZ.TaskZJFinishNumber += 1; + } + else + { + taskCZ.TaskFJFinishNumber += 1; + } + if (taskCZ.TaskZJFinishNumber == taskCZ.TaskNumber || taskCZ.TaskFJFinishNumber == taskCZ.TaskNumber) + { + _taskCZRepository.DeleteData(taskCZ); + } + + var isTrue = _taskCZRepository.UpdateData(taskCZ); + } + } Dt_Task dt_Task = _taskRepository.QueryFirst(x => x.SourceAddress == currentAddress); if (dt_Task != null) { @@ -213,7 +236,7 @@ NextAddress = targetAddress, Barcode = "", Roadway = $"{taskType}AGV", - WMSId = 0, + WMSId = czTaskID > 0 ? czTaskID : 0, Remark = remark }; } -- Gitblit v1.9.3