From 97ae26c59fe8c0f967903538e147240f8c1600a5 Mon Sep 17 00:00:00 2001 From: wanshenmean <cathay_xy@163.com> Date: 星期二, 15 四月 2025 17:04:09 +0800 Subject: [PATCH] 更改保存条码方式 --- 代码管理/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskCZService.cs | 78 ++++++++++++++++++++++++++++++++++++++- 1 files changed, 76 insertions(+), 2 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskCZService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskCZService.cs" index d209795..1333cc9 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskCZService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/NEWCode/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskCZService.cs" @@ -17,6 +17,8 @@ #endregion << 鐗� 鏈� 娉� 閲� >> +using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical; +using System.Text.Json; using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; using WIDESEAWCS_Core.BaseServices; @@ -29,8 +31,13 @@ { public class TaskCZService : ServiceBase<DtCZTask, ITaskCZRepository>, ITaskCZService { - public TaskCZService(ITaskCZRepository BaseDal) : base(BaseDal) + private readonly ITaskRepository _taskRepository; + private readonly ITaskCZDetailsRepository _detailsRepository; + + public TaskCZService(ITaskCZRepository BaseDal, ITaskRepository taskRepository, ITaskCZDetailsRepository detailsRepository) : base(BaseDal) { + _taskRepository = taskRepository; + _detailsRepository = detailsRepository; } public Task<WebResponseContent> AddTaskCZAsync(CZTaskDto dto) @@ -56,7 +63,7 @@ TaskNumber = dto.Number, TaskExecutor = "CZ", TaskOrderNo = dto.OrderNo, - TaskOwner = "KH", + TaskOwner = "KH", TaskProductCode = dto.ProductCode, Creater = "KH" }; @@ -106,6 +113,39 @@ { czTask.TaskStatus = TaskInStatusEnum.Line_InExecuting.ToString(); } + + var details = new DtCZTaskDetails() + { + MaterialBarCode = dto.MaterialBarcode, + MaterialType = dto.ProductCode, + TaskDescription = "鍒涙櫤鎻愪氦浠诲姟瀹屾垚", + TaskEndAddress = czTask.TaskEndAddress, + TaskName = czTask.TaskName, + TaskType = czTask.TaskType, + TaskStatus = czTask.TaskStatus, + }; + _detailsRepository.AddData(details); + + //if (dto.FinishNum is < 1 or > 4) + // throw new ArgumentException("鍙傛暟閿欒锛丗inishNum 蹇呴』涓� 1-4"); + + //var detail = dto.FinishNum == 1 + // ? new CZTaskBarCodeDto() + // : JsonSerializer.Deserialize<CZTaskBarCodeDto>(czTask.DtCZTaskDetails) ?? new CZTaskBarCodeDto(); + + //var property = dto.FinishNum switch + //{ + // 1 => nameof(CZTaskBarCodeDto.BarCode1), + // 2 => nameof(CZTaskBarCodeDto.BarCode2), + // 3 => nameof(CZTaskBarCodeDto.BarCode3), + // 4 => nameof(CZTaskBarCodeDto.BarCode4), + // _ => throw new ArgumentOutOfRangeException("鍙傛暟閿欒锛佽妫�鏌ャ�怓inishNum銆戯紒") + //}; + + //typeof(CZTaskBarCodeDto).GetProperty(property)?.SetValue(detail, dto.MaterialBarcode); + + //czTask.DtCZTaskDetails = JsonSerializer.Serialize(detail); + var isTrue = BaseDal.UpdateData(czTask); if (isTrue) { @@ -122,5 +162,39 @@ } return Task.FromResult(response); } + + /// <summary> + /// 杈撻�佺嚎鍥炴祦 + /// </summary> + /// <param name="saveModel"></param> + /// <returns></returns> + public Task<WebResponseContent> EmptyTask(SaveModel saveModel) + { + WebResponseContent webResponseContent = new WebResponseContent(); + try + { + string Saddress = saveModel.MainData["sourceAddress"].ToString(); + string Taddress = saveModel.MainData["targetAddress"].ToString(); + + Dt_Task task = _taskRepository.QueryFirst(x => x.SourceAddress == Saddress && x.TaskState == (int)TaskInStatusEnum.InPending && x.TargetAddress == "WaitBind"); + if (task == null) + { + webResponseContent.Error("浠诲姟涓嶅瓨鍦紒"); + return Task.FromResult(webResponseContent); + } + task.TargetAddress = Taddress; + task.TaskState = (int)TaskInStatusEnum.InNew; + var isTrue = _taskRepository.UpdateData(task); + if (isTrue) + { + webResponseContent.OK("浠诲姟涓嬪彂鎴愬姛锛�"); + } + } + catch (Exception ex) + { + webResponseContent.Error(ex.Message); + } + return Task.FromResult(webResponseContent); + } } } \ No newline at end of file -- Gitblit v1.9.3