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 | 71 +++++++++++++++++++++++++++++++++--
1 files changed, 67 insertions(+), 4 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 2490157..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"
@@ -8,6 +8,7 @@
using System.Security.Claims;
using System.Text;
using System.Threading.Tasks;
+using WIDESEA_Common;
using WIDESEA_Core;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
@@ -22,8 +23,10 @@
{
public class ContainerService : ServiceBase<Dt_Container, IRepository<Dt_Container>>, IContainerService
{
- public ContainerService(IRepository<Dt_Container> BaseDal) : base(BaseDal)
+ private readonly IMessageInfoService _messageInfoService;
+ public ContainerService(IRepository<Dt_Container> BaseDal, IMessageInfoService messageInfoService) : base(BaseDal)
{
+ _messageInfoService = messageInfoService;
}
public IRepository<Dt_Container> Repository => BaseDal;
@@ -35,8 +38,60 @@
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)
+ if (response.code != "000" || response.data == null)
{
return new WebResponseContent { Status = false, Message = "鎺ュ彛杩斿洖鏁版嵁鎶ラ敊" };
}
@@ -59,9 +114,13 @@
cool.CurrentTemperature = item.temperature;
cool.Humidity = item.humidity;
cool.Alarm = item.alarm;
- cool.AlarmInformation = item.message ?? "杩愯姝e父";
+ cool.AlarmInformation = item.message;
cool.ModifyDate = currentTime;
updateList.Add(cool);
+ if (cool.Alarm!="姝e父")
+ {
+ _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm, $"鍐锋煖{item.alarm}", item.message, MessageStatusEnum.Undisposed);
+ }
}
else
{
@@ -72,13 +131,17 @@
CurrentTemperature = item.temperature,
Humidity = item.humidity,
Alarm = item.alarm,
- AlarmInformation = item.message ?? "杩愯姝e父",
+ AlarmInformation = item.message,
CreateDate = currentTime,
Creater = "System",
ModifyDate = currentTime,
Modifier = "System"
};
addList.Add(dto);
+ if (item.alarm != "姝e父")
+ {
+ _messageInfoService.AddMessageInfo(MessageGroupByEnum.EquipmentAlarm, $"鍐锋煖{item.alarm}", item.message, MessageStatusEnum.Undisposed);
+ }
}
}
--
Gitblit v1.9.3