95 lines
2.5 KiB
JavaScript
95 lines
2.5 KiB
JavaScript
const filters = [
|
|
{
|
|
can_id: "123-456",
|
|
interval: 789
|
|
},
|
|
{
|
|
can_id: "1",
|
|
interval: 1000
|
|
},
|
|
{
|
|
can_id: "1000",
|
|
interval: 1
|
|
}
|
|
]
|
|
|
|
const fleets = [
|
|
{
|
|
name: "US-WEST",
|
|
log_level: "info",
|
|
canbus: { enabled: true, data_logger_enabled: true, max_mem_buffer_size: 1, max_disk_buffer_size: 2, filters: filters },
|
|
vehicles: ["USWESTVIN12345678", "USWESTVIN12345679", "USWESTVIN12345670"]
|
|
},
|
|
{
|
|
name: "US-CENTRAL",
|
|
log_level: "warning",
|
|
canbus: { enabled: false, data_logger_enabled: false, max_mem_buffer_size: 0, max_disk_buffer_size: 0 },
|
|
vehicles: ["USCENTVIN12345678", "USCENTVIN12345679", "USCENTVIN12345670"]
|
|
},
|
|
{
|
|
name: "US-EAST",
|
|
log_level: "error",
|
|
canbus: { enabled: true },
|
|
vehicles: ["USEASTVIN12345678", "USEASTVIN12345679", "USEASTVIN12345670"]
|
|
},
|
|
];
|
|
|
|
const vehicles = ["USWESTVIN12345678", "USWESTVIN12345679", "USWESTVIN12345670"];
|
|
|
|
const fleetsAPI = {
|
|
addFleet: async (fleet) => {
|
|
fleets.push(fleet);
|
|
return fleet;
|
|
},
|
|
getFleet: async (name) => {
|
|
const index = fleets.findIndex(element => element.name === name);
|
|
return fleets[index];
|
|
},
|
|
getFleets: async () => {
|
|
return { data: fleets };
|
|
},
|
|
updateFleet: async (name, fleet) => {
|
|
const index = fleets.findIndex(element => element.name === name);
|
|
if (index >= 0) fleets[index] = fleet;
|
|
return fleet;
|
|
},
|
|
deleteFleet: async (name) => {
|
|
const index = fleets.findIndex(element => element.name === name);
|
|
if (index >= 0) fleets.splice(index, 1);
|
|
return name;
|
|
},
|
|
|
|
getFleetVehicles: async () => {
|
|
return { data: vehicles };
|
|
},
|
|
addFleetVehicles: async (_name, vehicle) => {
|
|
vehicles.push(...vehicle.vins);
|
|
return vehicle;
|
|
},
|
|
deleteFleetVehicle: async (_name, vehicle) => {
|
|
const index = vehicles.findIndex(element => element === vehicle.vin);
|
|
if (index >= 0) vehicles.splice(index, 1);
|
|
return vehicle.vin;
|
|
},
|
|
|
|
getFleetCANFilters: async () => {
|
|
return { data: filters };
|
|
},
|
|
addFleetCANFilter: async (_name, filter) => {
|
|
filters.push(filter);
|
|
return filter;
|
|
},
|
|
updateFleetCANFilter: async (_name, can_id, filter) => {
|
|
const index = filters.findIndex(element => element.can_id === can_id);
|
|
if (index >= 0) filters[index] = filter;
|
|
return filter;
|
|
},
|
|
deleteFleetCANFilter: async (_name, can_id) => {
|
|
const index = filters.findIndex(element => element.can_id === can_id);
|
|
if (index >= 0) vehicles.splice(index, 1);
|
|
return can_id;
|
|
}
|
|
};
|
|
|
|
export default fleetsAPI;
|