Skip to content

Excel Import Service

Excel Import Service Platon platformasida Excel fayllarini dinamik import qilish, ma’lumotlarni qayta ishlash va ma’lumotlar bazasiga saqlash imkonini beruvchi servisdir.
U foydalanuvchi tomonidan yuklangan Excel fayllarini o‘qiydi, har bir satrni belgilangan handlerlarga yuboradi, ma’lumotlarni transformatsiya qiladi va bazaga yozadi.


Umumiy Ma’lumot

Excel Import Service quyidagi imkoniyatlarni ta’minlaydi:

  • Excel fayllarini import qilish va qayta ishlash
  • Har bir satr uchun belgilangan handlerlarni bajarish (SQL yoki JSON asosida)
  • Import jarayonida boshlang‘ich va yakuniy SQL kodlarini bajarish (beforeImportSql va afterImportSql)
  • Foydalanuvchi sessiyasiga mos kontekstni qo‘llash
  • Xatoliklarni markaziy tizimga loglash (NATS orqali)
  • Cache orqali import konfiguratsiyalarini saqlash va tezkor ishlashni ta’minlash
  • Import jarayonida tranzaksiyalarni boshqarish

Arxitektura Komponentlari

  • Excel Import Engine: Har bir satrni belgilangan handlerlarga yuboradi va ma’lumotlarni qayta ishlaydi
  • DataBase Manager: Tranzaksiyalarni boshlash, commit va rollback qilish, SQL so‘rovlarni bajarish
  • Cache Manager: Excel import konfiguratsiyalari va row handler’larni cache’da saqlaydi
  • Spel Component: Handler ishlash shartlarini tekshiradi
  • Logging Service: Xatoliklar va jarayon holatlarini markaziy tizimga yuboradi (NATS)
  • ThreadPoolTaskScheduler: Cache va import konfiguratsiyalarini belgilangan intervallar bilan yangilash
  • Rest Session Context: Foydalanuvchi sessiyasi va request parametrlarini boshqaradi

Import Jarayoni

  1. Foydalanuvchi Excel faylini yuklaydi
  2. Service import konfiguratsiyasini cache yoki ma’lumotlar bazasidan oladi
  3. beforeImportSql bajariladi (agar mavjud bo‘lsa)
  4. Excel fayl satrma-satr o‘qiladi:
    • Har bir satr uchun barcha ustunlar o‘qiladi va tozalangan ma’lumotlar tayyorlanadi
    • Har bir satrga tegishli handler ishlatiladi (SQL yoki JSON)
    • Handler ishlash sharti (SpEL) tekshiriladi
  5. Satrdan olingan natijalar to‘plangan ma’lumotga qo‘shiladi
  6. afterImportSql bajariladi (agar mavjud bo‘lsa)
  7. Tranzaksiya commit qilinadi, xatolik yuz bersa rollback amalga oshiriladi
  8. Natija foydalanuvchiga qaytariladi va jarayon loglanadi

Database Interactions

Excel Import Service quyidagi ma’lumotlar bazasi operatsiyalarini bajaradi:

  • Retrieve Config: Import konfiguratsiyalarini cache yoki DB’dan olish
  • Execute SQL: Importdan oldingi va keyingi SQL kodlarini bajarish
  • Row Handlers Execution: Har bir satrni handlerlar orqali DB operatsiyalariga moslashtirish
  • Transactional Execution: Barcha import jarayoni tranzaksion tarzda bajariladi

Cache va Performance

  • Import konfiguratsiyalari va row handler’lar cache’da saqlanadi
  • Tezkor kirish va server yukini kamaytiradi
  • Keshdagi konfiguratsiyalar belgilangan intervallar bilan yangilanadi
  • Eskirgan yoki o‘zgartirilgan konfiguratsiyalar avtomatik ravishda cache’ga yangilanadi

Logging va Monitoring

  • Foydalanuvchi so‘rovlari va import jarayoni loglanadi
  • Xatoliklar va muvaffaqiyatli import operatsiyalari NATS orqali markaziy tizimga yuboriladi
  • Har bir satr va handler ishlash holati kuzatiladi

Xulosa

Excel Import Service Platon platformasida Excel fayllarini modul va konfiguratsiya asosida import qilish, foydalanuvchi ma’lumotlarini qayta ishlash, ma’lumotlar bazasida saqlash va cache orqali tezkor ishlashni ta’minlaydi.
U tranzaksion boshqaruv, handlerlar, Shartli bajarish (SpEL), importdan oldingi va keyingi SQL, xatoliklarni loglash kabi imkoniyatlarni taqdim etadi.