Spaces:
Sleeping
Sleeping
| from typing import Dict, Any, List | |
| from .config import PM_THRESHOLDS | |
| def predictive_maintenance(car_year: int = None, mileage_km: int = None) -> List[str]: | |
| tips = [] | |
| if mileage_km is not None: | |
| if mileage_km % PM_THRESHOLDS["engine_oil"] > PM_THRESHOLDS["engine_oil"] - 1000: | |
| tips.append("Engine oil service due soon based on mileage.") | |
| if mileage_km % PM_THRESHOLDS["tire_rotation"] > PM_THRESHOLDS["tire_rotation"] - 500: | |
| tips.append("Consider tire rotation and balancing.") | |
| if mileage_km > 50000: | |
| tips.append("Inspect suspension components (shocks/struts) for wear.") | |
| if mileage_km > 80000: | |
| tips.append("Check timing belt/chain and water pump as per manufacturer schedule.") | |
| if car_year is not None and car_year < 2015: | |
| tips.append("Vehicle age suggests comprehensive electrical & rubber parts inspection.") | |
| if not tips: | |
| tips.append("No immediate predictive maintenance items flagged.") | |
| return tips | |
| def advanced_suggestions(top_issues: Dict[str, Any]) -> List[str]: | |
| tips = [] | |
| if "engine_leak" in top_issues: | |
| tips.append("After fixing leak, clean engine bay and monitor oil level weekly for 1 month.") | |
| if "brake_wear" in top_issues: | |
| tips.append("Bed-in new pads and avoid hard braking for first 200 km.") | |
| if "flat_tire" in top_issues: | |
| tips.append("Check alignment and inspect other tires for embedded nails/screws.") | |
| if "rust" in top_issues: | |
| tips.append("Apply rust protection and inspect underbody after monsoon season.") | |
| if "cracked_windshield" in top_issues: | |
| tips.append("Avoid potholes and sudden temperature changes until replacement.") | |
| return tips | |