feat 设备连接

This commit is contained in:
2024-04-01 11:15:02 +08:00
parent 175ca143e2
commit a1559a5b53
3 changed files with 78 additions and 0 deletions

View File

@@ -0,0 +1,58 @@
using Dlhis.Basic.Device.Request;
using Dlhis.Basic.Device.Services;
using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Dlhis.Basic.Device.Controllers;
/// <summary>
/// 设备连接控制器
/// </summary>
[Authorize]
[Route("api/[controller]")]
[ApiController]
public class DevicesConnectController : ControllerBase
{
private readonly IDeviceConnectService _deviceConnectService;
public DevicesConnectController(IDeviceConnectService deviceConnectService)
{
_deviceConnectService = deviceConnectService;
}
/// <summary>
/// 设备心跳
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost("heartbeat")]
[IgnoreTenant]
public async Task HeartbeatAsync(DeviceHeartbeatRequest request)
{
await _deviceConnectService.HeartbeatAsync(request);
}
/// <summary>
/// 设备注册
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost("resigter")]
[IgnoreTenant]
public async Task<string> ResigterAsync(DeviceResigterRequest request)
{
return await _deviceConnectService.ResigterAsync(request);
}
/// <summary>
/// 尝试连接
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost("try-connect")]
public async Task<bool> TryConnectAsync(DeviceConnectionTryRequest request)
{
return await _deviceConnectService.TryConnectAsync(request);
}
}

View File

@@ -0,0 +1,8 @@
namespace Dlhis.Basic.Device.Dtos
{
public class IPPortDto
{
public string IP { get; set; }
public int Port { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
using System.ComponentModel.DataAnnotations;
namespace Dlhis.Basic.Device.Request;
public class DeviceConnectionTryRequest
{
/// <summary>
/// 连接信息
/// </summary>
[Required(ErrorMessage = "连接信息不可为空")]
public string ConnectionInfo { get; set; }
}