From 021edcd84d6601249e008141b3027549f864155f Mon Sep 17 00:00:00 2001 From: wanshenmean <cathay_xy@163.com> Date: 星期一, 11 十一月 2024 17:30:40 +0800 Subject: [PATCH] 24-11-11.01 --- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs | 43 +++++++++++++++++++++++++++---------------- 1 files changed, 27 insertions(+), 16 deletions(-) diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs index 5367dc9..2236c93 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs @@ -34,6 +34,7 @@ private readonly IProcessApplyService _processApplyService; //宸ヨ壓璺嚎 private readonly IDt_AreaInfoRepository _areaInfoRepository; //鍖哄煙 private readonly IAgingInOrOutInputService _agingInOrOutInputService; //闈欑疆\闄堝寲 + private readonly IProductionRepository _productionRepository; //鐢熶骇 public Dt_TaskService(IDt_TaskRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, @@ -54,7 +55,8 @@ IProcessApplyService processApplyService, IDt_AreaInfoRepository areaInfoRepository, IAgingInOrOutInputService agingInOrOutInputService, - IStockInfoDetailRepository stockInfoDetailRepository) : base(BaseDal) + IStockInfoDetailRepository stockInfoDetailRepository, + IProductionRepository productionRepository) : base(BaseDal) { _unitOfWorkManage = unitOfWorkManage; _outOrderRepository = outOrderRepository; @@ -75,6 +77,7 @@ _areaInfoRepository = areaInfoRepository; _agingInOrOutInputService = agingInOrOutInputService; _stockInfoDetailRepository = stockInfoDetailRepository; + _productionRepository = productionRepository; } #region 澶栭儴鎺ュ彛鏂规硶 @@ -452,7 +455,16 @@ var result = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(content.Data.ToString()); if (result.SerialNos.Count <= 0) return content.Error(result.MOMMessage); + + // TODO 鑾峰彇鏈湴鏂欐灞炴�т笌鏁寸洏鐢佃姱灞炴�ц幏鍙栫殑鍊艰繘琛屽姣旓紝濡傛灉涓�鑷村垯缁х画锛屽惁鍒欒繑鍥為敊璇俊鎭� + var productions = await _productionRepository.QueryDataAsync(x => result.TrayBarcodePropertys.Select(x => x.TrayBarcodeProperty).ToList().Contains(x.TrayBarcodeProperty)); + if (productions.Count <= 0) + return content.Error("鏂欐灞炴�т笉瀛樺湪"); + + // 璋冪敤CreateBoxingInfo鏂规硶锛屽垱寤虹粍鐩樹俊鎭� + var boxing = await CreateBoxingInfo(result, input.PalletCode); + if (boxing == null) return content.Error("缁勭洏澶辫触"); // 璋冪敤GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹鸿矾绾� ProcessApplyDto process = await GetProcessApplyAsync(result); @@ -460,11 +472,18 @@ // 濡傛灉process涓簄ull锛屽垯杩斿洖content if (process == null) return content; - // 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴� - var processResponse = await GetProcessResponseAsync(process, input.Position); + // 璋冪敤_processApplyService.GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹虹敵璇� + content = await _processApplyService.GetProcessApplyAsync(process); + // 濡傛灉鐘舵�佷负false锛屽垯杩斿洖null + if (!content.Status) return content.Error("宸ヨ壓鐢宠澶辫触"); + + //// 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴� + //var processResponse = await GetProcessResponseAsync(process, input.Position); + + List<string> strings = input.Position == "1088" ? new List<string>() { "CHSC01" } : new List<string>() { "JZSC01" }; // 璋冪敤CreateNewTask鏂规硶锛屽垱寤烘柊浠诲姟 - content = await CreateNewTask(input, processResponse); + content = await CreateNewTask(input, strings); if (content.Status) { var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing); @@ -564,7 +583,7 @@ SerialNumber = serialNoObj.SerialNo, OrderNo = serialNoObj.PositionNo.ToString(), Status = serialNoObj.SerialNoStatus, - MaterielCode = serialNoObj.BindCode, + MaterielCode = result.BindCode, Remark = result.TrayBarcodePropertys.ToJsonString(), }).ToList() }; @@ -1184,20 +1203,12 @@ /// <param name="areaId">鍖哄煙ID</param> /// <param name="content">鍝嶅簲鍐呭</param> /// <returns></returns> - private async Task<WebResponseContent> CreateNewTask(RequestTaskDto input, List<Dt_EquipmentProcess> process = null, int flag = 0) + private async Task<WebResponseContent> CreateNewTask(RequestTaskDto input, List<string> process = null, int flag = 0) { WebResponseContent content = new WebResponseContent(); - List<string> strings = new List<string>(); - if (process != null) - { - strings = process.Select(x => x.EquipmentName).ToList(); - } - else - { - strings = input.Position.Split(',').ToList(); - } + // 鑾峰彇鐩爣鍦板潃 - string ToAddress = await GetRoadWayAsync(strings); + string ToAddress = await GetRoadWayAsync(process); // 鍒涘缓鏂颁换鍔″疄渚� var task = new Dt_Task -- Gitblit v1.9.3