An integrated urban transportation system usually consists of multiple transport modes that have complementary characteristics of capacities, speeds, and costs, facilitating smooth passenger transfers according to planned schedules. However, such an integration is not designed to operate under disruptive events, e.g., a signal failure at a subway station or a breakdown of a bus, which have rippling effects on passenger demand and significantly increase delays. To address these disruptive events, current solutions mainly rely on a substitute service to transport passengers from and to affected areas using ad-hoc schedules and static routes, e.g., sending shuttles to closed subway stations. These solutions are highly inefficient and do not utilize real-time data to estimate dynamic passenger demand. To fully utilize heterogeneous transportation systems under disruptive events, we design a service called eRoute based on a hierarchical receding horizon control framework to automatically reroute, reschedule, and reallocate multi-mode transportation systems based on real-time and predicted demand and supply. Focusing on an integration of subway and bus, we implement and evaluate eRoute with large datasets including (i) a bus system with 13,000 buses, (ii) a subway system with 127 subway stations, (iii) an automatic fare collection system with a total of 16,840 readers and 8 million card users from a metropolitan city. The data-driven evaluation results show that our solution improves the ratio of served passengers (RSP) by up to 11.5 times and reduces the average traveling time by up to 82.1% compared with existing solutions.