中央時三段活用可能に変更、ダイヤ情報の部分更新

This commit is contained in:
harukin-expo-dev-env
2024-03-17 16:16:28 +00:00
parent a769ccb951
commit d1ee693557
3 changed files with 185 additions and 93 deletions

View File

@@ -63,11 +63,51 @@ export const BusAndTrainDataProvider = ({ children }) => {
const getInfluencedTrainData = (trainNum) => {
const trainPairList = initializeTrainPairList();
// 9253M ラマル
// 9256M ラマル
// 4125m-545M
//143M-147M
// 1261M-4261M
// 3621DWANMAN
//8091D-IYO-OZU
//8093D-IYO-YAWA
//8092D-IYO-FUTAMI
//8094-IYO-DOGO
const returnArray = [];
if (!trainNum) return;
if (trainPairList[trainNum]) {
returnArray.push(Object.keys(trainPairList[trainNum])[0]);
}
switch (trainNum) {
case "4125M":
returnArray.push("545M");
break;
case "545M":
returnArray.push("4125M");
break;
case "143M":
returnArray.push("147M");
break;
case "147M":
returnArray.push("143M");
break;
case "1261M":
returnArray.push("4261M");
break;
case "4261M":
returnArray.push("1261M");
break;
case new RegExp(/^4[1-9]\d\d[DM]$/).test(trainNum):
if (trainList["5" + trainNum.substring(1)])
returnArray.push("5" + trainNum.substring(1));
break;
case new RegExp(/^5[1-7]\d\d[DM]$/).test(trainNum):
if (trainList["4" + trainNum.substring(1)])
returnArray.push("4" + trainNum.substring(1));
break;
}
if (
// 列番が4xxDまたは5xxDの場合はxxDの列番を検索
new RegExp(/^4[1-9]\d\d[DM]$/).test(trainNum) ||
@@ -82,11 +122,14 @@ export const BusAndTrainDataProvider = ({ children }) => {
if (trainList["4" + trainNum]) returnArray.push("4" + trainNum);
if (trainList["5" + trainNum]) returnArray.push("5" + trainNum);
}
if (!returnArray[0]) return [[], []];
const TD = trainList[returnArray[0]];
if (!TD) return [[], []];
const TDArray = TD.split("#").filter((d) => d != "");
return [returnArray, TDArray];
if (!returnArray.length) return [];
const TDArray = returnArray.map((d) => {
const TD = trainList[d];
if (!TD) return;
return { id: d, TrainData: TD.split("#").filter((d) => d != "") };
});
return TDArray;
};
return (
<BusAndTrainDataContext.Provider