public async Task <OperationResultModel <ElectricMeterDto> > Add(ElectricMeterDto model) { var result = new OperationResultModel <ElectricMeterDto>(); try { bool existAlready = await _electricMeterDao.GetBySerialNumber(model.SerialNumber) != null; if (existAlready) { result.SetMessage("The electric meter is already registered"); return(result); } var device = await _electricMeterDao.Add(new ElectricMeter { SerialNumber = model.SerialNumber, FirmwareVersion = model.FirmwareVersion, State = model.State }); model.Id = device.Id; result .SetStatus(true) .SetMessage("Electric meter has been registered successfully") .SetData(model); } catch (Exception ex) { _logger.LogError(ex.Message); result.SetMessage("Error creating an electric meter"); } return(result); }
public async Task <OperationResultModel <GatewayDto> > Add(GatewayDto model) { var result = new OperationResultModel <GatewayDto>(); try { bool existAlready = await _gatewayDao.GetBySerialNumber(model.SerialNumber) != null; if (existAlready) { result.SetMessage("The gateway is already registered"); return(result); } var device = await _gatewayDao.Add(new Gateway { SerialNumber = model.SerialNumber, FirmwareVersion = model.FirmwareVersion, State = model.State, IP = model.IP, Port = model.Port }); model.Id = device.Id; result .SetStatus(true) .SetMessage("Gateway has been registered successfully") .SetData(model); } catch (Exception ex) { _logger.LogError(ex.Message); result.SetMessage("Error creating a gateway"); } return(result); }