From 3ca1401ff81f256f54533110b48c68e7fa6bfca5 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期六, 01 十一月 2025 00:50:53 +0800
Subject: [PATCH] 整体流程代码优化

---
 新建文件夹/WIDESEA_WMSServer/ClassLibrary2/ContainerService.cs |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 52 insertions(+), 0 deletions(-)

diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/ClassLibrary2/ContainerService.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/ClassLibrary2/ContainerService.cs"
index 50f771e..bc1b6d0 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/ClassLibrary2/ContainerService.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/ClassLibrary2/ContainerService.cs"
@@ -38,6 +38,58 @@
                 var url = "http://172.16.1.4:8082/api/environment/sensor";
                 var result = HttpHelper.Get(url);
                 var response = JsonConvert.DeserializeObject<CollResponse<CoolDto>>(result);
+                if (response == null || response.code != "000") throw new Exception("鎺ュ彛杩斿洖鏁版嵁鎶ラ敊");
+                var deviceNames = response.data.Select(x => x.name?.Trim()).Distinct().ToList();
+                var containers = BaseDal.QueryData(x => deviceNames.Contains(x.deviceName)).ToList();
+                List<Dt_Container> containersAdd = new List<Dt_Container>();
+                List<Dt_Container> containersUp = new List<Dt_Container>();
+                foreach (var item in response.data)
+                {
+                    Dt_Container? container = containers.Where(x => x.deviceName == item.name).FirstOrDefault();
+                    if (container == null)
+                    {
+                        container = new Dt_Container()
+                        {
+                            deviceName = item.name,
+                            Alarm = item.alarm,
+                            CurrentTemperature = item.temperature,
+                            Humidity = item.humidity,
+                            CreateDate = DateTime.Now,
+                            AlarmInformation = item.message
+                        };
+                        containersAdd.Add(container);
+                    }
+                    else
+                    {
+                        container.Alarm = item.alarm;
+                        container.CurrentTemperature = item.temperature;
+                        container.Humidity = item.humidity;
+                        container.AlarmInformation = item.message;
+                        container.ModifyDate = DateTime.Now;
+                        containersUp.Add(container);
+                    }
+                    if (item.alarm != "姝e父")
+                    {
+                        _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm,
+                            $"鍐锋煖{item.alarm}", item.message, MessageStatusEnum.Undisposed);
+                    }
+                }
+                if (containersAdd.Count > 0) BaseDal.AddData(containersAdd);
+                if (containersUp.Count > 0) BaseDal.UpdateData(containersUp);
+                return WebResponseContent.Instance.OK();
+            }
+            catch (Exception ex)
+            {
+                return WebResponseContent.Instance.Error(ex.Message);
+            }
+        }
+        public WebResponseContent Sensor1()
+        {
+            try
+            {
+                var url = "http://172.16.1.4:8082/api/environment/sensor";
+                var result = HttpHelper.Get(url);
+                var response = JsonConvert.DeserializeObject<CollResponse<CoolDto>>(result);
 
                 if (response.code != "000" || response.data == null)
                 {

--
Gitblit v1.9.3