import pandas as pd

def add_depend_stock_column(file_path: str, output_path: str):
    # Загружаем Excel-файл
    df = pd.read_excel(file_path)

    # Проверка наличия нужных колонок
    required_columns = ['Артикул', 'PartNumber', 'Наличие на сайте']
    for col in required_columns:
        if col not in df.columns:
            raise ValueError(f"Колонка '{col}' не найдена в файле.")

    # Создаем словарь для быстрого поиска по (Артикул, последние 11 символов PartNumber)
    lookup = {
        (row['Артикул'], str(row['PartNumber'])[-11:]): row['Наличие на сайте']
        for _, row in df.iterrows()
    }

    # Функция поиска соответствия
    def get_depend_stock(row):
        part = str(row['PartNumber'])[-11:]
        key = (row['Артикул'], part)
        return lookup.get(key, 'Нет данных')

    # Добавляем колонку
    df['DependStock'] = df.apply(get_depend_stock, axis=1)

    # Сохраняем в новый файл
    df.to_excel(output_path, index=False)
    print(f"Готово! Результат сохранён в: {output_path}")

# Пример использования
if __name__ == "__main__":
    input_file = "/Users/valis/Yandex.Disk.localized/Python3/Parsing ZARAHOME/src_2024-09-05/records_folder/lighting-ceiling-lamps-n4884.xlsx"       # <-- ваш входной файл
    output_file = "/Users/valis/Yandex.Disk.localized/Python3/Parsing ZARAHOME/src_2024-09-05/records_folder/result_with_depend_stock.xlsx"           # <-- имя выходного файла
    add_depend_stock_column(input_file, output_file)
