public CommandResult Handle(UpdateSensorCommand command) { CommandResult result = new CommandResult(); ObjectId sensorId = new ObjectId(); if (!ObjectId.TryParse(command.SensorId, out sensorId)) { AddNotification(nameof(command.SensorId), ENotifications.InvalidFormat); } if (Valid) { Sensor sensor = _sensorRepository.Get(sensorId); if (sensor == null && _sensorRepository.Valid) { AddNotification(nameof(command.SensorId), ENotifications.NotFound); } if (Valid) { PinPort pinPort = null; if (command.PinPort != null) { pinPort = new PinPort(command.PinPort); } sensor.Update(command.Description, pinPort, command.Type); if (sensor.Valid) { _sensorRepository.Update(sensor); if (_sensorRepository.Valid) { result = new CommandResult(HttpStatusCode.OK); } } else { result = new CommandResult(HttpStatusCode.BadRequest, sensor.Notifications); } } else { result = new CommandResult(HttpStatusCode.BadRequest, Notifications); } } else { result = new CommandResult(HttpStatusCode.BadRequest, Notifications); } return(result); }
public Task Put(Guid id, [FromBody] CreateSensorCommand request) { var update = new UpdateSensorCommand { Id = id, FarmId = request.FarmId, State = request.State }; return(_mediator.Send(update)); }
public CommandResult Update(string sensorId, [FromBody] UpdateSensorCommand command) { if (command == null) { command = new UpdateSensorCommand(); } command.SetSensorId(sensorId); return(Execute <UpdateSensorCommand, CommandResult>(command)); }
public async Task <ActionResult <int> > Update([FromBody] UpdateSensorCommand command) { int result = await Mediator.Send(command); return(Ok(result)); }