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