diff --git a/Src/Dlhis.External/OpenApi/Controllers/DeviceController.cs b/Src/Dlhis.External/OpenApi/Controllers/DeviceController.cs
index 63d43761..cb0f5362 100644
--- a/Src/Dlhis.External/OpenApi/Controllers/DeviceController.cs
+++ b/Src/Dlhis.External/OpenApi/Controllers/DeviceController.cs
@@ -41,6 +41,7 @@ public class DevicesController : ControllerBase
HeartbeatInterval = x.HeartbeatInterval,
DirectionType = x.DeployDirection,
LastHeartbeatTime = xr.LastHeartbeatTime,
+ ConnectionInfo = x.ConnectionInfo
})
.ToListAsync();
}
diff --git a/Src/Dlhis.External/OpenApi/Response/DeviceResponse.cs b/Src/Dlhis.External/OpenApi/Response/DeviceResponse.cs
index 75fcd769..41b47ee5 100644
--- a/Src/Dlhis.External/OpenApi/Response/DeviceResponse.cs
+++ b/Src/Dlhis.External/OpenApi/Response/DeviceResponse.cs
@@ -1,4 +1,7 @@
using Dlhis.Entity.Device.Enums;
+using Kurisu.AspNetCore.Utils.Extensions;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
namespace Dlhis.External.OpenApi.Response;
@@ -49,4 +52,27 @@ public class DeviceResponse
return LastHeartbeatTime.Value.AddSeconds(HeartbeatInterval) >= DateTime.Now;
}
}
+
+ [JsonIgnore]
+ public string ConnectionInfo { get; set; }
+
+ ///
+ /// 设备列表
+ ///
+ public string Ip
+ {
+ get
+ {
+ if (!ConnectionInfo.IsPresent())
+ {
+ return string.Empty;
+ }
+
+ var jObj = JObject.Parse(ConnectionInfo);
+
+ return jObj.TryGetValue("ip", out var ip)
+ ? ip.Value()
+ : string.Empty;
+ }
+ }
}
\ No newline at end of file