Últimas correções
This commit is contained in:
10
src/App.tsx
10
src/App.tsx
@@ -21,6 +21,9 @@ import CadastroVan from './pages/CadastroVan';
|
|||||||
import CadastroCompletar from './pages/CadastroCompletar/CadastroCompletar';
|
import CadastroCompletar from './pages/CadastroCompletar/CadastroCompletar';
|
||||||
import CompletarDocumento from './pages/CadastroCompletar/CompletarDocumento';
|
import CompletarDocumento from './pages/CadastroCompletar/CompletarDocumento';
|
||||||
import CompletarTelefone from './pages/CadastroCompletar/CompletarTelefone';
|
import CompletarTelefone from './pages/CadastroCompletar/CompletarTelefone';
|
||||||
|
import Transportes from './pages/Transportes/Transportes';
|
||||||
|
import BuscarPassageiro from './pages/BuscarPassageiro/BuscarPassageiro';
|
||||||
|
import BuscarTransporte from './pages/BuscarTransporte/BuscarTransporte';
|
||||||
|
|
||||||
/* Core CSS required for Ionic components to work properly */
|
/* Core CSS required for Ionic components to work properly */
|
||||||
import '@ionic/react/css/core.css';
|
import '@ionic/react/css/core.css';
|
||||||
@@ -40,15 +43,12 @@ import '@ionic/react/css/display.css';
|
|||||||
|
|
||||||
/* Theme variables */
|
/* Theme variables */
|
||||||
import './theme/variables.css';
|
import './theme/variables.css';
|
||||||
import BuscarPassageiro from './pages/BuscarPassageiro/BuscarPassageiro';
|
|
||||||
import Transportes from './pages/Transportes/Transportes';
|
|
||||||
import BuscarTransporte from './pages/BuscarTransporte/BuscarTransporte';
|
|
||||||
// import Tabs from './components/Tabs';
|
// import Tabs from './components/Tabs';
|
||||||
import { search, home, person } from 'ionicons/icons';
|
import { search, home, person } from 'ionicons/icons';
|
||||||
import { useState, useContext } from 'react';
|
import { useState, useContext } from 'react';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import MinhasVans from './pages/MinhasVans';
|
import MinhasVans from './pages/MinhasVans';
|
||||||
import BuscarPassageiro from './pages/BuscarPassageiro/BuscarPassageiro';
|
|
||||||
|
|
||||||
setupIonicReact();
|
setupIonicReact();
|
||||||
|
|
||||||
@@ -65,7 +65,9 @@ const routes = (
|
|||||||
<Route exact path="/perfil/completar/documento" component={CompletarDocumento}></Route>
|
<Route exact path="/perfil/completar/documento" component={CompletarDocumento}></Route>
|
||||||
<Route exact path="/perfil/completar/telefone" component={CompletarTelefone}></Route>
|
<Route exact path="/perfil/completar/telefone" component={CompletarTelefone}></Route>
|
||||||
|
|
||||||
|
<Route exact path="/transportes" component={Transportes}></Route>
|
||||||
<Route exact path="/buscar-passageiro" component={BuscarPassageiro}></Route>
|
<Route exact path="/buscar-passageiro" component={BuscarPassageiro}></Route>
|
||||||
|
<Route exact path="/buscar-transporte" component={BuscarTransporte}></Route>
|
||||||
|
|
||||||
<Route exact path="/usuario/:id" component={Perfil}></Route>
|
<Route exact path="/usuario/:id" component={Perfil}></Route>
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,10 @@ const usersRoutes = {
|
|||||||
// TODO, depois corrigir
|
// TODO, depois corrigir
|
||||||
getUsersSearching: {
|
getUsersSearching: {
|
||||||
url: `/search/inraio`
|
url: `/search/inraio`
|
||||||
}
|
},
|
||||||
|
createUserSearch: {
|
||||||
|
url: `${usersRoutesDefault}/search`
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
export default usersRoutes;
|
export default usersRoutes;
|
||||||
@@ -8,7 +8,7 @@ import { useEffect, useState } from 'react';
|
|||||||
|
|
||||||
import RecordsStore from '../../store/RecordsStore';
|
import RecordsStore from '../../store/RecordsStore';
|
||||||
import { fetchRecords } from '../../store/Selectors';
|
import { fetchRecords } from '../../store/Selectors';
|
||||||
import { getUsersSearching } from '../../services/users';
|
import { getUsersSearching } from '../../services/api/users';
|
||||||
import { UserSearchInfos } from '../../components/UserSearchInfos/UserSearchInfos';
|
import { UserSearchInfos } from '../../components/UserSearchInfos/UserSearchInfos';
|
||||||
|
|
||||||
const maptilerProvider = maptiler('d5JQJPLLuap8TkJJlTdJ', 'streets');
|
const maptilerProvider = maptiler('d5JQJPLLuap8TkJJlTdJ', 'streets');
|
||||||
|
|||||||
@@ -1,182 +0,0 @@
|
|||||||
import {
|
|
||||||
IonContent,
|
|
||||||
IonPage,
|
|
||||||
IonIcon,
|
|
||||||
IonCard,
|
|
||||||
IonInput,
|
|
||||||
IonRow,
|
|
||||||
IonCardContent,
|
|
||||||
IonButton,
|
|
||||||
IonSearchbar,
|
|
||||||
IonModal,
|
|
||||||
IonProgressBar,
|
|
||||||
} from "@ionic/react";
|
|
||||||
import {
|
|
||||||
arrowBack,
|
|
||||||
arrowForwardOutline,
|
|
||||||
chevronForwardOutline,
|
|
||||||
locateOutline,
|
|
||||||
locationOutline,
|
|
||||||
timeOutline,
|
|
||||||
} from "ionicons/icons";
|
|
||||||
import "./BuscarTransporte.css";
|
|
||||||
|
|
||||||
import { useEffect, useState } from "react";
|
|
||||||
import { autoCompleteAddress } from "../../services/utils";
|
|
||||||
import { useHistory } from "react-router";
|
|
||||||
|
|
||||||
const BuscarTransporte: React.FC = () => {
|
|
||||||
const history = useHistory();
|
|
||||||
const [addressFrom, setAddressFrom] = useState<any>("");
|
|
||||||
const [coordinatesFrom, setCoordinatesFrom] = useState<any>("")
|
|
||||||
const [addressTo, setAddressTo] = useState<any>("");
|
|
||||||
const [coordinatesTo, setCoordinatesTo] = useState<any>("")
|
|
||||||
const [showModalEnd, setShowModalEnd] = useState(false);
|
|
||||||
const [addressResults, setAddressResults] = useState<any>([]);
|
|
||||||
const [inputActive, setInputActive] = useState("");
|
|
||||||
|
|
||||||
const optionsAddress = async (inputValue: any) => {
|
|
||||||
let results = await autoCompleteAddress(inputValue)
|
|
||||||
.then((res) => {
|
|
||||||
return res.map((item: any) => {
|
|
||||||
return {
|
|
||||||
value:
|
|
||||||
item.geometry.coordinates[0] + "," + item.geometry.coordinates[1],
|
|
||||||
label: item.properties.formatted,
|
|
||||||
};
|
|
||||||
});
|
|
||||||
})
|
|
||||||
.catch((err) => {
|
|
||||||
console.log("Erro ao buscar endereço:", err);
|
|
||||||
});
|
|
||||||
setAddressResults(results);
|
|
||||||
};
|
|
||||||
|
|
||||||
function setInputActiveOpenModal(input: string) {
|
|
||||||
setInputActive(input);
|
|
||||||
setShowModalEnd(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
function setAddress(div: any) {
|
|
||||||
if (inputActive === "from") {
|
|
||||||
setAddressFrom(div.target.attributes[2].value);
|
|
||||||
setCoordinatesFrom(div.target.attributes[1].value);
|
|
||||||
}else{
|
|
||||||
setAddressTo(div.target.attributes[2].value)
|
|
||||||
setCoordinatesTo(div.target.attributes[1].value)
|
|
||||||
}
|
|
||||||
setShowModalEnd(false)
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<IonPage>
|
|
||||||
<IonContent fullscreen>
|
|
||||||
<IonCard>
|
|
||||||
<IonCardContent>
|
|
||||||
<div className="inputs-from-to">
|
|
||||||
<IonIcon icon={locateOutline}></IonIcon>
|
|
||||||
<IonSearchbar
|
|
||||||
showClearButton="never"
|
|
||||||
onClick={() => setInputActiveOpenModal("from")}
|
|
||||||
value={addressFrom}
|
|
||||||
placeholder="R. José Paulino, 1234 - Centro, Campinas - SP, 13013-001"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div className="inputs-from-to">
|
|
||||||
<IonIcon icon={locationOutline}></IonIcon>
|
|
||||||
<IonSearchbar
|
|
||||||
showClearButton="never"
|
|
||||||
onClick={() => setInputActiveOpenModal("to")}
|
|
||||||
value={addressTo}
|
|
||||||
placeholder="PUC Campinas"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div className="button-search">
|
|
||||||
<IonButton color="primary" onClick={() => history.push("/transportes")}>Buscar</IonButton>
|
|
||||||
</div>
|
|
||||||
</IonCardContent>
|
|
||||||
</IonCard>
|
|
||||||
<IonRow class="latest-searches">
|
|
||||||
<IonIcon
|
|
||||||
className="icon-align-vcenter"
|
|
||||||
size="large"
|
|
||||||
icon={timeOutline}
|
|
||||||
></IonIcon>
|
|
||||||
<div className="div_from_to">
|
|
||||||
<span>Rua Tal Tal, 154, São Paulo - SP</span>
|
|
||||||
<IonIcon icon={arrowForwardOutline}></IonIcon>
|
|
||||||
<span>USP</span>
|
|
||||||
<br />
|
|
||||||
<small>Há 1 hora</small>
|
|
||||||
</div>
|
|
||||||
<IonIcon
|
|
||||||
className="icon-forward icon-align-vcenter"
|
|
||||||
size="large"
|
|
||||||
icon={chevronForwardOutline}
|
|
||||||
></IonIcon>
|
|
||||||
</IonRow>
|
|
||||||
<IonRow class="latest-searches">
|
|
||||||
<IonIcon
|
|
||||||
className="icon-align-vcenter"
|
|
||||||
size="large"
|
|
||||||
icon={timeOutline}
|
|
||||||
/>
|
|
||||||
<div className="div_from_to">
|
|
||||||
<span>Taquaral</span>
|
|
||||||
<IonIcon icon={arrowForwardOutline}></IonIcon>
|
|
||||||
<span>PUC-Campinas</span>
|
|
||||||
<br />
|
|
||||||
<small>Há 2 hora</small>
|
|
||||||
</div>
|
|
||||||
<IonIcon
|
|
||||||
className="icon-forward icon-align-vcenter"
|
|
||||||
size="large"
|
|
||||||
icon={chevronForwardOutline}
|
|
||||||
/>
|
|
||||||
</IonRow>
|
|
||||||
<IonModal isOpen={showModalEnd}>
|
|
||||||
<IonContent>
|
|
||||||
<div className="header-search-modal">
|
|
||||||
<IonIcon
|
|
||||||
className="icon-return-modal"
|
|
||||||
icon={arrowBack}
|
|
||||||
onClick={() => setShowModalEnd(false)}
|
|
||||||
/>
|
|
||||||
<IonInput
|
|
||||||
onIonChange={(e) => optionsAddress(e.detail.value)}
|
|
||||||
placeholder="R. José Paulino, 1234 - Centro, Campinas - SP, 13013-001"
|
|
||||||
className="search-modal"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
{addressResults.length > 0 ? (
|
|
||||||
addressResults.map((item: any) => {
|
|
||||||
return (
|
|
||||||
<div
|
|
||||||
key={item.value}
|
|
||||||
className="modal-search-results"
|
|
||||||
data-value={item.value}
|
|
||||||
data-label={item.label}
|
|
||||||
onClick={(e) => setAddress(e)}
|
|
||||||
>
|
|
||||||
{item.label}
|
|
||||||
<IonIcon
|
|
||||||
className="icon-results-modal"
|
|
||||||
icon={chevronForwardOutline}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
})
|
|
||||||
) : (
|
|
||||||
<>
|
|
||||||
<IonProgressBar type="indeterminate" />
|
|
||||||
<br />
|
|
||||||
</>
|
|
||||||
)}
|
|
||||||
</IonContent>
|
|
||||||
</IonModal>
|
|
||||||
</IonContent>
|
|
||||||
</IonPage>
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
export default BuscarTransporte;
|
|
||||||
@@ -46,7 +46,7 @@ import {
|
|||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import { useHistory, useLocation } from "react-router";
|
import { useHistory, useLocation } from "react-router";
|
||||||
import { getTransportes } from "../../services/transportes";
|
import { getTransportes } from "../../services/transportes";
|
||||||
import { createUserSearch } from "../../services/users";
|
import { createUserSearch } from "../../services/api/users";
|
||||||
import "./Transportes.css";
|
import "./Transportes.css";
|
||||||
|
|
||||||
interface InfoBusca {
|
interface InfoBusca {
|
||||||
|
|||||||
@@ -99,4 +99,11 @@ export async function getUsersSearching(currentPoint: any) {
|
|||||||
// const data = await response.json();
|
// const data = await response.json();
|
||||||
console.log(response.data)
|
console.log(response.data)
|
||||||
setStore(response.data);
|
setStore(response.data);
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function createUserSearch(latitude_from: any, longitude_from: any, addres_to: any) {
|
||||||
|
const response = await instance.post(`${userRoutes.createUserSearch.url}`, { latitude_from, longitude_from, addres_to });
|
||||||
|
|
||||||
|
console.log(response)
|
||||||
|
setStore(response);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user