public IActionResult CreateHouse(HouseModel model) { houseService.CreateHouseAsync(new House { Name = model.Name, Address = new Address { City = model.City, DoorNo = model.DoorNo, FloorNo = model.Floor, HouseNo = model.HouseNo, Street = model.Street, ZipCode = model.ZipCode } }, AccountModel.GetInstace().Session).Wait(); return(Home()); }
public async Task <IActionResult> CreateHouse([FromServices] IConfiguration configuration, [FromBody] CreateHouseRequest request) { if (request is null) { return(BadRequest(new FailedHouseResponse { Status = false, Errors = new[] { "Request should have a valid data." } })); } //Checking all props have values if (PropertyHelper.IsAnyPropIsNull(request)) { return(BadRequest( new FailedHouseResponse { Status = false, Errors = new[] { "House properties can not be null." } } )); } var creationResult = await _houseService.CreateHouseAsync(request.CreateHouseRequestToCreateHouseDto()); if (!creationResult.Status) { if (creationResult.ServerError) { return(StatusCode(500)); } return(BadRequest(new FailedHouseResponse { Status = creationResult.Status, Errors = creationResult.Errors })); } string itemUrl = $"{configuration["ApplicationHostAddress"]}/{ApiRoutes.HouseRoute.HouseV1}/{creationResult.House.Id}"; return(Created( new Uri(itemUrl), new SuccessHouseCreationResponse { Id = creationResult.House.Id, HouseNumber = creationResult.House.HouseNumber, StreetName = creationResult.House.StreetName, City = creationResult.House.City, Country = creationResult.House.Country, PostCode = creationResult.House.PostCode })); }