From 65f280ee9b3b998df59b59cff117624eefae157c Mon Sep 17 00:00:00 2001 From: 陈勇 <chenyong@hnkhzn.com> Date: 星期四, 14 十一月 2024 09:49:56 +0800 Subject: [PATCH] 忽略项目 --- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs | 80 +++++++++++++++++++++++++++++++++++++--- 1 files changed, 74 insertions(+), 6 deletions(-) diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs index 1e3aa68..3601449 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs @@ -1,14 +1,26 @@ 锘縰sing LogLibrary.Log; using Masuit.Tools; +using Newtonsoft.Json; using WIDESEA_Common; +using WIDESEA_Core; using WIDESEA_DTO; +using WIDESEA_DTO.MOM; +using WIDESEA_IStorageBasicService; using WIDESEA_IStoragIntegrationServices; +using WIDESEA_Model.Models; namespace WIDESEA_StoragIntegrationServices; public class CellStateService : ICellStateService { private readonly LogFactory LogFactory = new LogFactory(); + + private readonly IBoxingInfoService _boxingInfoService; + + public CellStateService(IBoxingInfoService boxingInfoService) + { + _boxingInfoService = boxingInfoService; + } /// <summary> /// 鍗曠數鑺睘鎬ц幏鍙� @@ -17,15 +29,42 @@ /// <returns></returns> public async Task<dynamic> GetCellStateAsync(CellStateDto input) { + WebResponseContent content = new WebResponseContent(); try { input.SessionId = Guid.NewGuid().ToString(); input.Software = "闄堝寲鏈�"; input.EquipmentCode = "P1K10040"; input.EmployeeNo = "T00001"; - input.RequestTime = DateTime.UtcNow.ToString(); + input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); - var x = await HttpsClient.PostAsync("https://localhost:7251/api/CellState/GetCellState", inputJson); + var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/CellState", inputJson); + if (x != null) + { + ResultCellState result = JsonConvert.DeserializeObject<ResultCellState>(x); + DtBoxingInfo boxingInfo = new DtBoxingInfo() + { + IsFull = true, + PalletCode = "", + }; + var details = new List<DtBoxingInfoDetail>(); + foreach (var item in result.SerialNos) + { + DtBoxingInfoDetail detail = new DtBoxingInfoDetail() + { + SerialNumber = item.SerialNo, + OrderNo = item.BindCode, + Status = item.SerialNoStatus, + }; + details.Add(detail); + } + boxingInfo.BoxingInfoDetails = details; + var abc = await _boxingInfoService.AddBoxingInfoAsync(boxingInfo); + if (abc.Status) + return content.OK("缁勭洏鎴愬姛"); + else + return content.Error("缁勭洏澶辫触"); + } LogFactory.GetLog("鍗曠數鑺睘鎬ц幏鍙�").Info(true, $"\r\r--------------------------------------"); LogFactory.GetLog("鍗曠數鑺睘鎬ц幏鍙�").Info(true, x); } @@ -43,17 +82,46 @@ /// </summary> /// <param name="input">鐢佃姱鏁版嵁</param> /// <returns></returns> - public async Task<dynamic> GetTrayCellStatusAsync(TrayCellsStatusDto input) + public async Task<WebResponseContent> GetTrayCellStatusAsync(TrayCellsStatusDto input) { + WebResponseContent content = new WebResponseContent(); try { input.SessionId = Guid.NewGuid().ToString(); input.Software = "闄堝寲鏈�"; input.EquipmentCode = "P1K10040"; input.EmployeeNo = "T00001"; - input.RequestTime = DateTime.UtcNow.ToString(); + input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); - var x = await HttpsClient.PostAsync("https://localhost:7251/api/CellState/GetCellState", inputJson); + var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/TrayCellsStatus", inputJson); + if (x != null) + { + ResultTrayCellsStatus result = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(x); + DtBoxingInfo boxingInfo = new DtBoxingInfo() + { + IsFull = true, + PalletCode = result.TrayBarcode, + }; + var details = new List<DtBoxingInfoDetail>(); + foreach (var item in result.SerialNos) + { + DtBoxingInfoDetail detail = new DtBoxingInfoDetail() + { + SerialNumber = item.SerialNo, + OrderNo = item.PositionNo.ToString(), + Status = item.SerialNoStatus, + Remark = result.TrayBarcodePropertys.ToJsonString(), + MaterielCode = result.BindCode, + }; + details.Add(detail); + } + boxingInfo.BoxingInfoDetails = details; + var abc = await _boxingInfoService.AddBoxingInfoAsync(boxingInfo); + if (abc.Status) + content.OK("缁勭洏鎴愬姛", result); + else + content.Error("缁勭洏澶辫触"); + } LogFactory.GetLog("鏁寸洏鐢佃姱灞炴�ц幏鍙�").Info(true, $"\r\r--------------------------------------"); LogFactory.GetLog("鏁寸洏鐢佃姱灞炴�ц幏鍙�").Info(true, x); } @@ -63,6 +131,6 @@ LogFactory.GetLog("鏁寸洏鐢佃姱灞炴�ц幏鍙�").Error(true, $"\r\r--------------------------------------"); LogFactory.GetLog("鏁寸洏鐢佃姱灞炴�ц幏鍙�").Error(true, err.StackTrace); } - return Task.FromResult<dynamic>(null); + return content; } } \ No newline at end of file -- Gitblit v1.9.3