Estou com meu código em passavens service da seguinte forma:
export class PassagensService {
apiUrl = environment.apiUrl;
constructor(private httpclient: HttpClient) {}
getPassagens(search: DadosDeBusca): Observable<iResultado> {
const params = this.converterParametrosParaString(search);
return this.httpclient.get<iResultado>(
`${this.apiUrl}/passagem/search?${params}`
);
}
converterParametrosParaString(busca: DadosDeBusca) {
const query = Object.entries(busca)
.map(([key, value]) => {
if (!value) {
return '';
}
return `${key}=${value}`;
})
.join('&');
return query;
}
}
na aula foi passado para implementar esse método do converterParametrosParaString porem, ao clicar no cambo busca, com duas companhias, ele manda pra api o endereço, q nao existe:
http://localhost:8080/passagem/search?pagina=1&porPagina=50&dataIda=2023-10-26T16:48:22.147Z&passageirosAdultos=1&passageirosCriancas=0&passageirosBebes=0&somenteIda=false&origemId=9&destinoId=15&tipo=Econ%C3%B4mica&companhiasId=4&companhiasId=3
ele está passando o companhiasId duas vezes no parametro e entendi q não era pra isso aconteceu... onde estou errando? com uma companhia somente ele passa certinho, como por exemplo:
http://localhost:8080/passagem/search?pagina=1&porPagina=50&dataIda=2023-10-26T16:48:22.147Z&passageirosAdultos=1&passageirosCriancas=0&passageirosBebes=0&somenteIda=false&origemId=9&destinoId=15&tipo=Econ%C3%B4mica&companhiasId=3
Obrigado!