public async Task <IActionResult> RegisterCondominium([FromBody] CondominiumViewModel condominium) { try { await _mediator.SendCommand(new RegisterCondominium() { Name = condominium.Name, AddressStreet = condominium.Address.Street, AddressNumber = condominium.Address.Number, AddressCity = condominium.Address.City, AddressComplement = condominium.Address.Complement, AddressNeighbourhood = condominium.Address.Neighbourhood, AddressState = condominium.Address.State, AddressZipCode = condominium.Address.ZipCode }); return(IsAValidOperation() ? RequestResponse(HttpStatusCode.Created, "kipercondominio/api/v1/condominiums") : RequestResponse(HttpStatusCode.BadRequest, "kipercondominio/api/v1/condominiums", isError: true)); } catch (Exception ex) { var error = JsonConvert.SerializeObject(ex); _logger.LogError(error); return(RequestResponse(HttpStatusCode.InternalServerError, isError: true, result: "Ocorreu um erro ao realizar a operação")); } }
public async Task <IActionResult> RegisterApartment([FromRoute] Guid condominiumId, [FromBody] RegisterApartmentViewModel apartment) { try { await _mediator.SendCommand(new RegisterApartment() { Block = apartment.Block, Number = apartment.Number, Roof = apartment.Roof, CondominiumId = condominiumId, Residents = apartment.Residents.Select(r => new ResidentCommand() { Name = r.Name, Birthday = r.Birthday, DocumentNumber = r.DocumentNumber, Email = r.Email, PhoneNumber = r.PhoneNumber }) }); return(IsAValidOperation() ? RequestResponse(HttpStatusCode.Created, "kipercondominio/api/v1/apartments") : RequestResponse(HttpStatusCode.BadRequest, "kipercondominio/api/v1/apartments", isError: true)); } catch (Exception ex) { var error = JsonConvert.SerializeObject(ex); _logger.LogError(error); return(RequestResponse(HttpStatusCode.InternalServerError, isError: true, result: "Ocorreu um erro ao realizar a operação")); } }