diff --git a/components/Apps/FixedPositionBox.tsx b/components/Apps/FixedPositionBox.tsx index 1568d96..1bd30fa 100644 --- a/components/Apps/FixedPositionBox.tsx +++ b/components/Apps/FixedPositionBox.tsx @@ -131,7 +131,7 @@ export const FixedStation = ({ stationID }) => { }; export const FixedTrain = ({ trainID }) => { - const { fixedPosition, setFixedPosition, currentTrain } = useCurrentTrain(); + const { fixedPosition, setFixedPosition, currentTrain,getCurrentStationData } = useCurrentTrain(); const { allCustomTrainData, allTrainDiagram } = useAllTrainDiagram(); const getTrainDataFromCurrentTrain = (trainNum: string) => { @@ -187,9 +187,10 @@ export const FixedTrain = ({ trainID }) => { setCustomData(getTrainDataFromCurrentTrain(trainID)); }, [currentTrain, trainID]); useEffect(() => { - currentTrain.forEach((d) => { - if (d.num == trainID) setTrain(d); - }); + const stationData = getCurrentStationData(trainID); + if (stationData) { + setTrain(stationData); + } }, [trainID, currentTrain]); const [ToData, setToData] = useState(""); @@ -219,22 +220,6 @@ export const FixedTrain = ({ trainID }) => { station.length > 0 ? lineColorList[station[0]?.StationNumber.slice(0, 1)] : "black"; - let firstText = ""; - let secondText = ""; - let marginText = ""; - let externalText = ""; - const { isBetween, Pos: PosData } = trainPosition(train); - if (isBetween === true) { - const { from, to } = PosData; - firstText = from; - secondText = to; - marginText = "→"; - } else { - const { Pos } = PosData; - if (Pos !== "") { - firstText = Pos; - } - } return ( { > - + + + + ); +}; + +const CurrentPositionBox = ({train,lineColor})=>{ + let firstText = ""; + let secondText = ""; + let marginText = ""; + let externalText = ""; + const { isBetween, Pos: PosData } = trainPosition(train); + if (isBetween === true) { + const { from, to } = PosData; + firstText = from; + secondText = to; + marginText = "→"; + } else { + const { Pos } = PosData; + if (Pos !== "") { + firstText = Pos; + } + } + return { {marginText == "→" ? firstText + marginText + secondText : firstText} - - - ); -}; + ; +} \ No newline at end of file