public InterfaceDto GetInterfaceByClientId(int clientId, string InterfaceSystem) { InterfaceDto result; using (SDACloudEntities sDACloudEntities = new SDACloudEntities()) { Interface source = (from i in sDACloudEntities.Interfaces where i.ClientID == clientId && i.InterfaceSystem.Equals(InterfaceSystem) select i).SingleOrDefault <Interface>(); Mapper.CreateMap <Interface, InterfaceDto>(); InterfaceDto interfaceDto = Mapper.Map <Interface, InterfaceDto>(source); result = interfaceDto; } return(result); }
public IActionResult CreateOrUpdate([FromBody] InterfaceDto ifaceDto, [FromQuery(Name = "token")] string token = "") { try { if (!token.Equals(_token)) { return(Unauthorized()); } var iface = _mapper.Map <Interface>(ifaceDto); iface = _interfaceService.CreateOrUpdate(iface); ifaceDto = _mapper.Map <InterfaceDto>(iface); return(Ok(ifaceDto)); } catch (Exception e) { return(BadRequest(e.Message)); } }
public void Can_Add_InterfaceDevice() { var accounts = _accountService.GetAccounts(); var accountDto = new AccountDto(); var siteDto = new SiteDto(); foreach (var account in accounts) { var sites = _siteService.GetSiteForAccount(account.AccountId); if (sites != null && sites.Any()) { accountDto = account; siteDto = sites.FirstOrDefault(); break; } } var sysIterface = new InterfaceDto { AccountId = accountDto.AccountId, Name = "Interface Name", Description = "Alarm Panel", InterfaceTypeId = 2 }; var addedInterface = _systemService.AddInterface(sysIterface, accountDto.AccountId, siteDto.SiteId); var getInterface = _systemService.GetInterface(addedInterface.InterfaceId); Assert.IsNotNull(getInterface); var newDeviceDto = new DeviceDto { Altitude = 100, Description = "Device Description", ExternalId = "External Id", LocationDescription = "Location Description", InterfaceId = getInterface.InterfaceId, Lat = 100, Long = 100, /*Metadata = "<Metadata>Metadata-Test-Method</Metadata>",*/ SiteId = siteDto.SiteId, Type = "FireAlarm", ActiveAlert = false, Name = "Device Name" }; var addedDeviceDto = _systemService.AddDeviceToInterface(newDeviceDto, getInterface.InterfaceId); Assert.NotNull(addedDeviceDto); bool deletedDevice = _systemService.DeleteDevice(addedDeviceDto.DeviceId); Assert.IsTrue(deletedDevice); bool deletedInterface = _systemService.Delete(getInterface.InterfaceId); Assert.IsTrue(deletedInterface); }
public void Can_Add_InterfaceNvr() { var accounts = _accountService.GetAccounts(); var accountDto = new AccountDto(); var siteDto = new SiteDto(); foreach (var account in accounts) { var sites = _siteService.GetSiteForAccount(account.AccountId); if (sites != null && sites.Any()) { accountDto = account; siteDto = sites.FirstOrDefault(); break; } } var sysIterface = new InterfaceDto { AccountId = accountDto.AccountId, Name = "Nvr Interface Name", Description = "Nvr", InterfaceTypeId = 1 }; var addedInterface = _systemService.AddInterface(sysIterface, accountDto.AccountId, siteDto.SiteId); var getInterface = _systemService.GetInterface(addedInterface.InterfaceId); Assert.IsNotNull(getInterface); var newDeviceDto = new NvrCameraDto() { Altitude = 100, Description = "Device Description", ExternalId = "External Id", LocationDescription = "Location Description", InterfaceId = getInterface.InterfaceId, Lat = 100, Long = 100, SiteId = siteDto.SiteId, Type = "FireAlarm", ActiveAlert = false, Name = "Device Name", FPS = 21, AnalyticAlgorithmType = _algorithms.First(), AnalyticAlgorithmTypeId = _algorithms.First().AnalyticAlgorithmId, AlarmDelay = 60, Version = "1.0.0.167", MaxBlobSize = 1000, MinBlobSize = 100, UpdateRate = (decimal)20.5, Width = 100, Height = 100, ZoneRows = 13, ZoneColumns = 14, ZoneData = null }; var addedDeviceDto = _systemService.AddDeviceToInterface(newDeviceDto, getInterface.InterfaceId); Assert.NotNull(addedDeviceDto); var updayedDevice = _systemService.UpdateDevice(addedDeviceDto, getInterface.InterfaceId); bool deletedDevice = _systemService.DeleteDevice(updayedDevice.DeviceId); Assert.IsTrue(deletedDevice); bool deletedInterface = _systemService.Delete(getInterface.InterfaceId); Assert.IsTrue(deletedInterface); }