refactor route fetching logic for single system ID to external function

This commit is contained in:
2025-01-22 14:27:12 -08:00
parent 5e5f76afcc
commit f1fd774821
2 changed files with 39 additions and 35 deletions

View File

@@ -9,8 +9,8 @@ export class ApiResponseError extends Error {
}
export class ApiBasedRepositoryLoader {
readonly supportedSystemIds = ["263"];
readonly baseUrl = "https://passiogo.com/mapGetData.php";
supportedSystemIds = ["263"];
baseUrl = "https://passiogo.com/mapGetData.php";
constructor(
public repository: GetterSetterRepository,
@@ -51,15 +51,20 @@ export class ApiBasedRepositoryLoader {
}
}
public async fetchAndUpdateRouteDataForExistingSystems() {
public async fetchAndUpdateRouteDataForExistingSystemsInRepository() {
const systems = await this.repository.getSystems();
await Promise.all(systems.map(async (system) => {
await this.fetchAndUpdateRouteDataForSystemId(system.id);
}));
}
public async fetchAndUpdateRouteDataForSystemId(systemId: string) {
const params = {
getRoutes: "2",
};
const formDataJsonObject = {
"systemSelected0": system.id,
"systemSelected0": systemId,
"amount": "1",
}
const formData = new FormData();
@@ -79,13 +84,12 @@ export class ApiBasedRepositoryLoader {
color: jsonRoute.color,
id: jsonRoute.myid,
polylineCoordinates: [],
systemId: system.id,
systemId: systemId,
};
await this.repository.addOrUpdateRoute(constructedRoute);
}))
}
}));
}
public async fetchAndUpdateStopAndPolylineDataForRoutesInExistingSystems() {

View File

@@ -50,7 +50,7 @@ export class TimedApiBasedRepositoryLoader extends ApiBasedRepositoryLoader {
await this.repository.clearSystemData();
await this.fetchAndUpdateSystemData();
await this.repository.clearRouteData();
await this.fetchAndUpdateRouteDataForExistingSystems();
await this.fetchAndUpdateRouteDataForExistingSystemsInRepository();
await this.repository.clearStopData();
await this.fetchAndUpdateStopAndPolylineDataForRoutesInExistingSystems();
await this.repository.clearShuttleData();