Add allow anonymous device creation + add wlan and eth differenciation for ipaddress
This commit is contained in:
parent
f03ef70fa3
commit
7be57deb46
@ -8,7 +8,8 @@ namespace Manager.Interfaces.DTO
|
|||||||
{
|
{
|
||||||
public string Id { get; set; }
|
public string Id { get; set; }
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
public string IpAddress { get; set; }
|
public string IpAddressWLAN { get; set; }
|
||||||
|
public string IpAddressETH { get; set; }
|
||||||
public string ConfigurationId { get; set; }
|
public string ConfigurationId { get; set; }
|
||||||
public string Configuration { get; set; }
|
public string Configuration { get; set; }
|
||||||
public bool Connected{ get; set; }
|
public bool Connected{ get; set; }
|
||||||
|
|||||||
@ -18,9 +18,13 @@ namespace Manager.Interfaces.Models
|
|||||||
[BsonElement("Name")]
|
[BsonElement("Name")]
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
|
|
||||||
[BsonElement("IpAddress")]
|
[BsonElement("IpAddressWLAN")]
|
||||||
[BsonRequired]
|
[BsonRequired]
|
||||||
public string IpAddress { get; set; }
|
public string IpAddressWLAN { get; set; }
|
||||||
|
|
||||||
|
[BsonElement("IpAddressETH")]
|
||||||
|
[BsonRequired]
|
||||||
|
public string IpAddressETH { get; set; }
|
||||||
|
|
||||||
[BsonElement("Configuration")]
|
[BsonElement("Configuration")]
|
||||||
public string Configuration { get; set; }
|
public string Configuration { get; set; }
|
||||||
@ -57,7 +61,8 @@ namespace Manager.Interfaces.Models
|
|||||||
{
|
{
|
||||||
Id = Id,
|
Id = Id,
|
||||||
Name = Name,
|
Name = Name,
|
||||||
IpAddress = IpAddress,
|
IpAddressWLAN = IpAddressWLAN,
|
||||||
|
IpAddressETH = IpAddressETH,
|
||||||
Connected = Connected,
|
Connected = Connected,
|
||||||
Configuration = Configuration,
|
Configuration = Configuration,
|
||||||
ConfigurationId = ConfigurationId,
|
ConfigurationId = ConfigurationId,
|
||||||
@ -71,7 +76,8 @@ namespace Manager.Interfaces.Models
|
|||||||
{
|
{
|
||||||
Id = Id,
|
Id = Id,
|
||||||
Name = Name,
|
Name = Name,
|
||||||
IpAddress = IpAddress,
|
IpAddressWLAN = IpAddressWLAN,
|
||||||
|
IpAddressETH = IpAddressETH,
|
||||||
Connected = Connected,
|
Connected = Connected,
|
||||||
Configuration = Configuration,
|
Configuration = Configuration,
|
||||||
ConfigurationId = ConfigurationId,
|
ConfigurationId = ConfigurationId,
|
||||||
|
|||||||
@ -87,6 +87,7 @@ namespace ManagerService.Controllers
|
|||||||
/// Create a new device
|
/// Create a new device
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="newDevice">New device info</param>
|
/// <param name="newDevice">New device info</param>
|
||||||
|
[AllowAnonymous]
|
||||||
[ProducesResponseType(typeof(DeviceDetailDTO), 200)]
|
[ProducesResponseType(typeof(DeviceDetailDTO), 200)]
|
||||||
[ProducesResponseType(typeof(string), 400)]
|
[ProducesResponseType(typeof(string), 400)]
|
||||||
[ProducesResponseType(typeof(string), 404)]
|
[ProducesResponseType(typeof(string), 404)]
|
||||||
@ -105,11 +106,15 @@ namespace ManagerService.Controllers
|
|||||||
if (configuration == null)
|
if (configuration == null)
|
||||||
throw new KeyNotFoundException("Configuration does not exist");
|
throw new KeyNotFoundException("Configuration does not exist");
|
||||||
|
|
||||||
|
if (_deviceService.IsExistIpWLAN(newDevice.IpAddressWLAN) || _deviceService.IsExistIpETH(newDevice.IpAddressETH))
|
||||||
|
throw new InvalidOperationException("Device with same ip already exist in system");
|
||||||
|
|
||||||
Device device = new Device();
|
Device device = new Device();
|
||||||
device.Name = newDevice.Name;
|
device.Name = newDevice.Name;
|
||||||
device.Configuration = configuration.Label;
|
device.Configuration = configuration.Label;
|
||||||
device.ConfigurationId = newDevice.ConfigurationId;
|
device.ConfigurationId = newDevice.ConfigurationId;
|
||||||
device.IpAddress = newDevice.IpAddress;
|
device.IpAddressETH = newDevice.IpAddressETH;
|
||||||
|
device.IpAddressWLAN = newDevice.IpAddressWLAN;
|
||||||
device.Connected = newDevice.Connected;
|
device.Connected = newDevice.Connected;
|
||||||
device.ConnectionLevel = newDevice.ConnectionLevel;
|
device.ConnectionLevel = newDevice.ConnectionLevel;
|
||||||
device.LastConnectionLevel = newDevice.LastConnectionLevel;
|
device.LastConnectionLevel = newDevice.LastConnectionLevel;
|
||||||
@ -163,7 +168,8 @@ namespace ManagerService.Controllers
|
|||||||
|
|
||||||
// Todo add some verification ?
|
// Todo add some verification ?
|
||||||
device.Name = updatedDevice.Name;
|
device.Name = updatedDevice.Name;
|
||||||
device.IpAddress = updatedDevice.IpAddress;
|
device.IpAddressWLAN = updatedDevice.IpAddressWLAN;
|
||||||
|
device.IpAddressETH = updatedDevice.IpAddressETH;
|
||||||
device.Connected = updatedDevice.Connected;
|
device.Connected = updatedDevice.Connected;
|
||||||
device.ConnectionLevel = updatedDevice.ConnectionLevel;
|
device.ConnectionLevel = updatedDevice.ConnectionLevel;
|
||||||
device.LastConnectionLevel = updatedDevice.LastConnectionLevel;
|
device.LastConnectionLevel = updatedDevice.LastConnectionLevel;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user