add data to repository instead of shared memory

This commit is contained in:
2024-12-22 18:51:59 -08:00
parent a55573afbd
commit eb067e6628

View File

@@ -1,39 +1,31 @@
// Mock data
import { Eta, OrderedStop, Route, Shuttle, Stop, System } from "./generated/graphql";
import { SharedMemory } from "./sharedMemory";
import { IOrderedStop, IRoute, IShuttle, IStop, ISystem, Repository } from "./repository";
const systems: System[] = [
const systems: ISystem[] = [
{
id: "1",
name: "Chapman University",
routes: [],
stops: [],
shuttles: [],
},
];
const routes: Route[] = [
const routes: IRoute[] = [
{
name: "Red Route",
id: "1",
system: systems[0],
orderedStops: [],
shuttles: [],
systemId: systems[0].id,
polylineCoordinates: [],
color: "#ffffff",
},
{
name: "Teal Route",
id: "2",
system: systems[0],
orderedStops: [],
shuttles: [],
systemId: systems[0].id,
polylineCoordinates: [],
color: "#ffffff",
},
];
const stops: Stop[] = [
const stops: IStop[] = [
{
id: "1",
name: "Chapman Court",
@@ -41,9 +33,7 @@ const stops: Stop[] = [
latitude: 33.796001,
longitude: -117.8892805,
},
system: systems[0],
etas: [],
orderedStops: [],
systemId: systems[0].id,
},
{
id: "2",
@@ -52,45 +42,43 @@ const stops: Stop[] = [
latitude: 33.804433,
longitude: -117.895966,
},
system: systems[0],
etas: [],
orderedStops: [],
systemId: systems[0].id,
}
];
const orderedStopsForRedRoute: OrderedStop[] = [
{
route: routes[0],
stop: stops[0],
},
{
route: routes[0],
stop: stops[1],
},
];
// const orderedStopsForRedRoute: IOrderedStop[] = [
// {
// routeId: routes[0].id,
// stopId: stops[0].id
// },
// {
// route: routes[0],
// stop: stops[1],
// },
// ];
//
// const orderedStopsForTealRoute: OrderedStop[] = [
// {
// route: routes[1],
// stop: stops[1],
// },
// {
// route: routes[1],
// stop: stops[0],
// }
// ]
const orderedStopsForTealRoute: OrderedStop[] = [
{
route: routes[1],
stop: stops[1],
},
{
route: routes[1],
stop: stops[0],
}
]
// orderedStopsForRedRoute[0].nextStop = orderedStopsForRedRoute[1];
// orderedStopsForRedRoute[1].previousStop = orderedStopsForRedRoute[0];
// orderedStopsForTealRoute[0].nextStop = orderedStopsForTealRoute[1];
// orderedStopsForTealRoute[1].previousStop = orderedStopsForTealRoute[0];
orderedStopsForRedRoute[0].nextStop = orderedStopsForRedRoute[1];
orderedStopsForRedRoute[1].previousStop = orderedStopsForRedRoute[0];
orderedStopsForTealRoute[0].nextStop = orderedStopsForTealRoute[1];
orderedStopsForTealRoute[1].previousStop = orderedStopsForTealRoute[0];
// stops[0].orderedStops = [orderedStopsForRedRoute[0], orderedStopsForTealRoute[1]];
// stops[1].orderedStops = [orderedStopsForRedRoute[1], orderedStopsForTealRoute[0]];
// routes[0].orderedStops = orderedStopsForRedRoute;
// routes[1].orderedStops = orderedStopsForTealRoute;
stops[0].orderedStops = [orderedStopsForRedRoute[0], orderedStopsForTealRoute[1]];
stops[1].orderedStops = [orderedStopsForRedRoute[1], orderedStopsForTealRoute[0]];
routes[0].orderedStops = orderedStopsForRedRoute;
routes[1].orderedStops = orderedStopsForTealRoute;
const shuttles: Shuttle[] = [
const shuttles: IShuttle[] = [
{
name: "Red Shuttle 17",
id: "1",
@@ -98,33 +86,47 @@ const shuttles: Shuttle[] = [
latitude: 33.796001,
longitude: -117.8892805,
},
route: routes[0],
system: systems[0],
etas: [],
routeId: routes[0].id,
systemId: systems[0].id,
}
];
const etas: Eta[] = [
{
stop: stops[0],
shuttle: shuttles[0],
secondsRemaining: 12.023,
},
{
stop: stops[1],
shuttle: shuttles[0],
secondsRemaining: 600.123,
}
];
// const etas: Eta[] = [
// {
// stop: stops[0],
// shuttle: shuttles[0],
// secondsRemaining: 12.023,
// },
// {
// stop: stops[1],
// shuttle: shuttles[0],
// secondsRemaining: 600.123,
// }
// ];
shuttles[0].etas = etas;
// shuttles[0].etas = etas;
//
// routes[0].shuttles = shuttles;
//
// systems[0].stops = stops;
// systems[0].routes = routes;
// systems[0].shuttles = shuttles;
routes[0].shuttles = shuttles;
// export function loadTestData(sharedMemory: SharedMemory) {
// sharedMemory.systems = systems;
// }
systems[0].stops = stops;
systems[0].routes = routes;
systems[0].shuttles = shuttles;
export function loadTestData(sharedMemory: SharedMemory) {
sharedMemory.systems = systems;
export async function loadTestData(repository: Repository) {
await Promise.all(systems.map(async (system) => {
await repository.addOrUpdateSystem(system);
}));
await Promise.all(routes.map(async (route) => {
await repository.addOrUpdateRoute(route);
}));
await Promise.all(shuttles.map(async (shuttle) => {
await repository.addOrUpdateShuttle(shuttle);
}));
await Promise.all(stops.map(async (stop) => {
await repository.addOrUpdateStop(stop);
}));
}