public async Task <ActionResult <AirPlaneModel> > UpdateAirPlane(string id, [FromBody] AirPlaneAlterModel airPlane) { Guid identifier = Guid.Empty; if (!Guid.TryParse(id, out identifier)) { return(await Task.FromResult <ActionResult>(this.BadRequest(new ErrorModel(1, "Id", "Invalid ID!").ToList()))); } if (airPlane == null) { return(await Task.FromResult <ActionResult>(this.BadRequest(new ErrorModel(1, "Id", "The AirPlane can not be null!").ToList()))); } if (!AirPlaneRepository.AirPlanes.Any(x => x.Model.Id == airPlane.Model.Id)) { return(await Task.FromResult <ActionResult>(this.UnprocessableEntity("There is no such model airplane registered in the system!"))); } var selectedAirPlane = this.SelectAirPlane(identifier); if (selectedAirPlane == null) { return(await Task.FromResult <ActionResult>(this.NotFound())); } else { this.AlterAirPlane(selectedAirPlane, airPlane); } selectedAirPlane = this.SelectAirPlane(identifier); return(await Task.FromResult <ActionResult>(this.Ok(selectedAirPlane))); }
public async Task <ActionResult <AirPlaneModel> > UpdateAirPlane(string id, [FromBody] AirPlaneAlterModel airPlane) { Guid identifier = Guid.Empty; if (!Guid.TryParse(id, out identifier)) { return(await Task.FromResult <ActionResult>(this.BadRequest(new ErrorModel(1, "Id", "Invalid ID!").ToList()))); } if (airPlane == null) { return(await Task.FromResult <ActionResult>(this.BadRequest(new ErrorModel(1, "AirPlane", "AirPlane invalid!").ToList()))); } var entity = new AirPlaneDDD.Domain.Entities.AirPlane() { Code = airPlane.Code, NumberOfPassengers = airPlane.NumberOfPassengers, ModelId = airPlane.Model.Id }; var result = this._IAppAirPlane.Update(identifier, entity); if (result.Errors.Count > 0) { return(await Task.FromResult <ActionResult>(this.UnprocessableEntity(result.Errors.First()))); } else { return(await Task.FromResult <ActionResult>(this.Ok(result.Response))); } }
private void AlterAirPlane(AirPlaneModel selectedAirPlane, AirPlaneAlterModel airPlane) { selectedAirPlane.Model.Id = airPlane.Model.Id; selectedAirPlane.Code = airPlane.Code; }