#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Проверка загруженных Classification Codes
"""
import frappe

def check_codes():
    frappe.init(site='site1')
    frappe.connect()

    count = frappe.db.count('Classification code')
    print(f'\n✓ Всего Classification Codes в базе: {count}')

    if count > 0:
        codes = frappe.get_all('Classification code',
            fields=['name', 'code', 'name_az'],
            limit=5,
            order_by='code')

        print('\n📋 Первые 5 записей:')
        print('=' * 100)
        for idx, c in enumerate(codes, 1):
            name_short = c.name_az[:70] + '...' if len(c.name_az) > 70 else c.name_az
            print(f'{idx}. ID: {c.name:10} | Code: {c.code:10} | Name: {name_short}')
        print('=' * 100)

        # Проверка что code = name
        print('\n🔍 Проверка что ID (name) = Code:')
        all_match = True
        for c in codes:
            if c.name != c.code:
                print(f'  ❌ Несоответствие: name={c.name}, code={c.code}')
                all_match = False

        if all_match:
            print('  ✅ Все записи правильные: ID (name) = Code')
    else:
        print('\n⚠️ Записи не найдены в базе!')

    frappe.destroy()

if __name__ == '__main__':
    check_codes()
