feat: filter route by city_id

This commit is contained in:
2026-04-05 14:37:27 +03:00
parent a182a52111
commit 5e0b56c7dc

View File

@@ -1,6 +1,6 @@
import { DataGrid, GridColDef, GridRenderCellParams } from "@mui/x-data-grid";
import { ruRU } from "@mui/x-data-grid/locales";
import { authStore, carrierStore, languageStore, routeStore } from "@shared";
import { authStore, carrierStore, languageStore, routeStore, selectedCityStore } from "@shared";
import { useEffect, useState } from "react";
import { observer } from "mobx-react-lite";
import { Map, Pencil, Trash2, Minus } from "lucide-react";
@@ -146,7 +146,20 @@ export const RouteListPage = observer(() => {
}] : []),
];
const rows = routes.data.map((route) => ({
const filteredRoutes = () => {
const { selectedCityId } = selectedCityStore;
if (!selectedCityId) {
return routes.data;
}
const cityCarrierIds = new Set(
carriers["ru"].data
.filter((c) => c.city_id === selectedCityId)
.map((c) => c.id)
);
return routes.data.filter((route) => cityCarrierIds.has(route.carrier_id));
};
const rows = filteredRoutes().map((route) => ({
id: route.id,
carrier_id: route.carrier_id,
route_number: route.route_number,