Skip to content

Commit

Permalink
front: hard-code freight rolling stocks
Browse files Browse the repository at this point in the history
Signed-off-by: Clara Ni <[email protected]>
  • Loading branch information
clarani committed Oct 11, 2024
1 parent 49538d6 commit 676542a
Show file tree
Hide file tree
Showing 3 changed files with 134 additions and 9 deletions.
2 changes: 1 addition & 1 deletion front/src/applications/stdcmV2/components/StdcmConsist.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ const StdcmConsist = ({ setCurrentSimulationInputs, disabled = false }: StdcmCon
const { rollingStock } = useStoreDataForRollingStockSelector();

const { filters, searchRollingStock, searchRollingStockById, filteredRollingStockList } =
useFilterRollingStock();
useFilterRollingStock({ isStdcm: true });

const getLabel = (rs: LightRollingStockWithLiveries) => {
let res = '';
Expand Down
113 changes: 113 additions & 0 deletions front/src/assets/rollingStock/freightRollingStocks.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
const FREIGHT_ROLLING_STOCKS = [
'7200GH',
'15000',
'22200G',
'26000US',
'27000US',
'37000US',
'60000US',
'TC64700',
'67400A',
'69400US',
'75000US',
'75300US',
'75400US',
'EU4000US',
'JT42US',
'27000UM',
'60000UM',
'67400AUM',
'75000UM',
'75300UM',
'75400UM',
'EU4000UM',
'1CLASS92',
'1G1206',
'1GA3000C',
'20200G',
'20200P',
'22200BM',
'22200GS',
'22200IR2',
'22200IRS',
'25100',
'25150',
'25200REV',
'25500100',
'25500G',
'27000',
'2CFL3000',
'2CLASS92',
'2G1206',
'2SNCBT13',
'2Y8000GG',
'2Y8000PP',
'316500',
'36000MUX',
'36000US',
'63001A',
'63109A',
'63500A',
'63500ACH',
'65000A',
'6500G',
'6500P',
'6500V160',
'65500A',
'66000A',
'66400A',
'66700',
'67000BP',
'67200UM',
'67200US',
'67300AG',
'68000B',
'71000A',
'72000TGV',
'72001BG',
'7200GS',
'7200PH',
'72021BG',
'72021BP',
'7400P',
'8100',
'8100A100',
'8500G',
'8500P100',
'9200',
'CFD2001',
'CFD550',
'CFL1600',
'CFL1800',
'CFL3600',
'CFLBB850',
'CFLBB900',
'CFTA825',
'DBBR185',
'DE18UM',
'DE18US',
'G1000US',
'G1206UM',
'G1206US',
'G2000US',
'PE6500',
'PE7200',
'PE8500',
'PE8500P2',
'PE9200',
'SA16500G',
'SNCB20',
'SNCB27',
'SNCBHL12',
'SNCBT13',
'TRAXF140',
'Y6200A',
'Y7100A',
'Y7400A',
'Y7400B',
'Y8000AG',
'Y8000AP',
'Y9000US',
];

export default FREIGHT_ROLLING_STOCKS;
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { useState, useEffect } from 'react';
import { useState, useEffect, useMemo } from 'react';

import FREIGHT_ROLLING_STOCKS from 'assets/rollingStock/freightRollingStocks';
import { osrdEditoastApi } from 'common/api/osrdEditoastApi';
import type { LightRollingStock, LightRollingStockWithLiveries } from 'common/api/osrdEditoastApi';
import { setFailure } from 'reducers/main';
Expand Down Expand Up @@ -129,7 +130,7 @@ export function computeFilter(filter: RollingStockFilterKeys, filters: RollingSt
};
}

export default function useFilterRollingStock() {
const useFilterRollingStock = ({ isStdcm } = { isStdcm: false }) => {
const dispatch = useAppDispatch();

const [filters, setFilters] = useState<RollingStockFilters>(initialFilters);
Expand All @@ -143,10 +144,19 @@ export default function useFilterRollingStock() {
pageSize: 1000,
});

const usefulRollingStocks = useMemo(
() =>
isStdcm
? allRollingStocks.filter((rs) => FREIGHT_ROLLING_STOCKS.includes(rs.name))
: allRollingStocks,
[isStdcm, allRollingStocks]
);

const [searchIsLoading, setSearchIsLoading] = useState(true);

const [filteredRollingStockList, setFilteredRollingStockList] =
useState<LightRollingStockWithLiveries[]>(allRollingStocks);
const [filteredRollingStockList, setFilteredRollingStockList] = useState<
LightRollingStockWithLiveries[]
>([]);

const searchRollingStock = (value: string) => {
setFilters({ ...filters, id: undefined, text: value });
Expand Down Expand Up @@ -174,18 +184,18 @@ export default function useFilterRollingStock() {
}, [isError]);

useEffect(() => {
const newFilteredRollingStock = filterRollingStocks(allRollingStocks, filters);
const newFilteredRollingStock = filterRollingStocks(usefulRollingStocks, filters);
setFilteredRollingStockList(newFilteredRollingStock);
}, [isSuccess]);

useEffect(() => {
const newFilteredRollingStock = filterRollingStocks(allRollingStocks, filters);
const newFilteredRollingStock = filterRollingStocks(usefulRollingStocks, filters);
setTimeout(() => {
setFilteredRollingStockList(newFilteredRollingStock);
setSearchIsLoading(false);
}, 0);
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [filters, allRollingStocks]);
}, [filters, usefulRollingStocks]);

return {
filteredRollingStockList,
Expand All @@ -196,4 +206,6 @@ export default function useFilterRollingStock() {
searchRollingStockById,
toggleFilter,
};
}
};

export default useFilterRollingStock;

0 comments on commit 676542a

Please sign in to comment.