From 2c4c125072e1b88c994efc9bb6f1ff5ef754d41b Mon Sep 17 00:00:00 2001 From: 陈勇 <chenyong@hnkhzn.com> Date: 星期四, 14 十一月 2024 10:01:21 +0800 Subject: [PATCH] 忽略项 --- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs | 68 ++++++++++++++++++++------------- 1 files changed, 41 insertions(+), 27 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..856cbac 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 澶栭儴鎺ュ彛鏂规硶 @@ -121,6 +124,7 @@ private AgingOutputDto MapToAgingOutputDto(DtStockInfo stock, ResponseEqptRunDto info) { + // TODO Value鍊兼牴鎹甅OM涓嬪彂鐨勯潤缃椂闂村埌褰撳墠鏃堕棿鐨勫垎閽熸暟 return new AgingOutputDto { OpFlag = 1, @@ -132,16 +136,16 @@ SlotNo = x.OrderNo.ToInt32(), SerialNo = x.SerialNumber, SerialNoResult = true, - ParameterInfo = info.ParameterInfo.Select(x => new ParameterInfo() + ParameterInfo = info.ParameterInfo.Select(y => new ParameterInfo() { - LowerLomit = x.LowerControlLimit, - UpperLimit = x.UpperControlLimit, - ParameterResult = x.EquipmentAvailabilityFlag, - ParameterCode = x.ParameterCode, - ParameterDesc = x.Description, - TargetValue = x.TargetValue, - Value = (DateTime.Now - stock.CreateDate).TotalMinutes.ToString(), - DefectCode = x.UOMCode + LowerLomit = y.LowerControlLimit, + UpperLimit = y.UpperControlLimit, + ParameterResult = y.EquipmentAvailabilityFlag, + ParameterCode = y.ParameterCode, + ParameterDesc = y.Description, + TargetValue = y.TargetValue, + Value = ( DateTime.Parse(stock.LinedProcessFeedbackTime, null, System.Globalization.DateTimeStyles.RoundtripKind).ToLocalTime() - stock.CreateDate).TotalMinutes.ToString(), + DefectCode = y.UOMCode }).ToList() }).ToList() }; @@ -342,7 +346,8 @@ }; var result = _agingInOrOutInputService.GetOCVInputAsync(agingInputDto).Result; var respone = JsonConvert.DeserializeObject<ResponeAgingInputDto>(result.Data.ToString()); - stock.Remark = respone.LinedProcessFeedbackTime; + stock.LinedProcessFeedbackTime = respone.LinedProcessFeedbackTime; + stock.SpecialParameterDuration = respone.SpecialParameterDuration; // 璁板綍鏃ュ織 LogFactory.GetLog("浠诲姟瀹屾垚").InfoFormat(true, "鍏ュ簱浠诲姟瀹屾垚", $"璐т綅鍦板潃锛歿task.TargetAddress},淇敼鍚庤揣浣嶆暟鎹細{locationInf}"); @@ -452,7 +457,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 +474,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 +585,7 @@ SerialNumber = serialNoObj.SerialNo, OrderNo = serialNoObj.PositionNo.ToString(), Status = serialNoObj.SerialNoStatus, - MaterielCode = serialNoObj.BindCode, + MaterielCode = result.BindCode, Remark = result.TrayBarcodePropertys.ToJsonString(), }).ToList() }; @@ -679,7 +700,8 @@ /// </summary> private DtStockInfo QueryStockInfoForRealTray(string areaCode, List<string> roadways) { - return _stockInfoRepository.Db.Queryable<DtStockInfo>().Where(x => x.AreaCode == areaCode && Convert.ToDateTime(x.Remark) < DateTime.Now && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && roadways.Contains(x.LocationInfo.RoadwayNo)) + // TODO鏃堕棿鏍规嵁MOM绯荤粺閰嶇疆鐨勫嚭搴撴椂闂存潵鑾峰彇,鏆傛椂涓嶇煡閬揗OM杩斿洖鐨勬椂闂存槸浠�涔堟墍浠ヨ繖閲屾祴璇曟椂鍊欏湪鏀� + return _stockInfoRepository.Db.Queryable<DtStockInfo>().Where(x => x.AreaCode == areaCode && Convert.ToDateTime(x.LinedProcessFeedbackTime) < DateTime.Now && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && roadways.Contains(x.LocationInfo.RoadwayNo)) .Includes(x => x.LocationInfo) .Includes(x => x.StockInfoDetails) .OrderBy(x => x.CreateDate) @@ -1184,20 +1206,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