Skip to content

Form Service

Form Service Platon platformasida dinamik formalarni boshqarish, yaratish, yangilash, o‘chirish va qayta tiklash imkonini beruvchi servisdir.
U foydalanuvchi so‘rovlariga mos forma meta ma’lumotlarini tayyorlaydi, kirishni tekshiradi va loglarni markaziy tizimga yuboradi.


Umumiy Ma’lumot

Form Service quyidagi imkoniyatlarni ta’minlaydi:

  • Formalarni yaratish, yangilash, o‘chirish va klonlash
  • Formalarning meta ma’lumotlarini tayyorlash (create, update, restore)
  • Foydalanuvchi tomonidan yuborilgan ma’lumotlarni qayta ishlash
  • Ma’lumotlar bazasida yozuvlarni yaratish, yangilash va saqlash
  • Foydalanuvchiga mos forma komponentlarini tayyorlash
  • Public va private formalarni boshqarish
  • Cache orqali tezkor ishlashni ta’minlash
  • Xatoliklar va ma’lumotlarni markaziy tizimga loglash (NATS orqali)

Database Interactions

Form Service quyidagi ma’lumotlar bazasi operatsiyalarini bajaradi:

  • Create: Foydalanuvchi tomonidan yuborilgan ma’lumotlar asosida yangi forma yozuvi yaratadi va saqlaydi
  • Update: Mavjud forma yozuvini yangilaydi va o‘zgartirishlarni saqlaydi
  • Delete: Forma yozuvlarini mantiqiy yoki jismoniy o‘chirish
  • Restore: O‘chirilgan yoki arxivlangan forma yozuvlarini qayta tiklash
  • Clone: Mavjud forma yozuvini nusxalash va yangi yozuv sifatida saqlash
  • Block/Unblock: Forma yozuvlarining bloklanganligini belgilash va foydalanuvchi kirishini boshqarish
  • Retrieve: Ma’lumotlar bazasidan forma va komponentlarni olish, foydalanuvchi ruxsatlariga moslashtirish

Barcha CRUD operatsiyalar transactional tarzda amalga oshiriladi va foydalanuvchi sessiyasi bilan bog‘liq.


Arxitektura Komponentlari

  • Form Handler: Forma ma’lumotlarini yaratish, yangilash, klonlash va o‘chirish uchun biznes mantiqini bajaradi
  • Form Loader: Forma meta ma’lumotlarini va komponentlarini tayyorlaydi
  • Access Validator: Foydalanuvchi ruxsatlarini tekshiradi
  • Cache Manager: Formalarni keshda saqlaydi va tezkor ishlashni ta’minlaydi
  • Database Manager: CRUD operatsiyalarni bajaradi va transactionlarni boshqaradi
  • Logging Service: Xatoliklar va operatsiyalarni markaziy tizimga yuboradi (NATS)
  • Session Context: Foydalanuvchi sessiyasini va request parametrlarini boshqaradi

Form Management Capabilities

  • Dinamik formalarni yaratish, yangilash, klonlash, o‘chirish va tiklash
  • Ma’lumotlar bazasida forma yozuvlarini CRUD operatsiyalari bilan boshqarish
  • Formalarning meta ma’lumotlarini tayyorlash va foydalanuvchi so‘rovlariga moslashtirish
  • Foydalanuvchi ruxsatlari asosida forma va komponentlarga kirishni tekshirish
  • Public va private formalarni farqlash va ularga mos kirishni ta’minlash
  • Request body orqali foydalanuvchi tomonidan yuborilgan ma’lumotlarni forma bilan birlashtirish
  • Xatoliklar va muhim operatsiyalarni markaziy tizimga loglash

Cache va Performance

  • Forma meta ma’lumotlari va komponentlari cache’ga saqlanadi
  • Tezkor kirish va server yukini kamaytirish ta’minlanadi
  • Keshdagi formalar ma’lum interval bilan avtomatik yangilanadi
  • Yangi yoki o‘zgartirilgan formalar cache’ga avtomatik qo‘shiladi
  • Eskirgan yoki keraksiz formalar cache’dan o‘chiriladi

Access Control

  • Foydalanuvchi ruxsatlariga asoslanib forma va komponentlarga kirish nazorat qilinadi
  • Role va permissionlar orqali foydalanuvchining forma kirish huquqi aniqlanadi

Logging va Monitoring

  • Foydalanuvchi so‘rovlari va forma operatsiyalari loglanadi
  • Xatoliklar va muvaffaqiyatli operatsiyalar NATS orqali markaziy tizimga yuboriladi
  • Bloklangan yozuvlar va forma holatlari markaziy monitoring orqali kuzatiladi

Xulosa

Form Service Platon platformasida formalarni modul va komponent asosida boshqarish, foydalanuvchi ruxsatlariga mos formalarni tayyorlash, ma’lumotlar bazasida yozuvlarni saqlash va cache orqali tezkor ishlashni ta’minlaydi.
U public va private formalarni boshqaradi, yozuvlarni bloklash va unblock qilish imkonini beradi, shuningdek xatoliklar va muhim operatsiyalarni markaziy tizimga loglaydi.