23 lines
813 B
JavaScript
23 lines
813 B
JavaScript
import axios from 'axios';
|
|
|
|
const BUSCAMAN_URL = 'https://gps.buscalia.com/usuario/localizar.aspx?bmi=true&addr=';
|
|
|
|
export async function openBuscaman(vehicleId, tickets) {
|
|
if (!vehicleId) throw new Error(`The route doesn't have a vehicle`);
|
|
|
|
const response = await axios.get(`Routes/${vehicleId}/getDeliveryPoint`);
|
|
|
|
if (!response.data) {
|
|
throw new Error(`The route's vehicle doesn't have a delivery point`);
|
|
}
|
|
|
|
let addresses = response.data;
|
|
tickets.forEach((ticket, index) => {
|
|
const previousLine = tickets[index - 1] ? tickets[index - 1].street : null;
|
|
if (previousLine !== tickets.street) {
|
|
addresses += `+to:${ticket.postalCode} ${ticket.city} ${ticket.street}`;
|
|
}
|
|
});
|
|
window.open(BUSCAMAN_URL + encodeURI(addresses), '_blank');
|
|
}
|