|
import pandas as pd |
|
from datetime import datetime, timedelta |
|
import logging |
|
|
|
logger = logging.getLogger(__name__) |
|
|
|
def upcoming_amc_devices(df): |
|
"""Identify devices with upcoming AMC expiries.""" |
|
logger.info("Processing AMC expiries...") |
|
try: |
|
df["amc_expiry"] = pd.to_datetime(df["amc_expiry"]) |
|
today = datetime.now() |
|
threshold = today + timedelta(days=14) |
|
amc_df = df[df["amc_expiry"] <= threshold][["equipment", "amc_expiry"]] |
|
logger.info(f"Found {len(amc_df)} devices with upcoming AMC expiries.") |
|
return amc_df |
|
except Exception as e: |
|
logger.error(f"Failed to process AMC expiries: {e}") |
|
raise |