📄 ILOVA 7.REGISTRATSIYA & REGULYATOR JARAYONI ODOO MODULLARI VA ICHKI MODELLAR ARXITEKTURASI (TZ)

ILOVA 7.REGISTRATSIYA & REGULYATOR JARAYONI ODOO MODULLARI VA ICHKI MODELLAR ARXITEKTURASI (TZ)

ILOVA 7 — REGISTRATSIYA & REGULYATOR JARAYONI


ODOO MODULLARI VA ICHKI MODELLAR ARXITEKTURASI (TZ)


1) Scope va maqsad


Maqsad: Har bir tibbiy uskuna bo‘yicha ro‘yxatga olish loyihasini Odoo’da boshqarish, hujjatlarni avtomatik papkaga yig‘ishdeadline / mas’ul taqsimlash, IM-40 / IM-42 / IM-74 deklaratsiya oqimini yuritish, sertifikatlarni monitoring qilish, va Released for Sale statusiga chiqarguncha blokirovkani boshqarish.

2) Ishlatiladigan modullar


2.1 Core (Odoo Enterprise standard)

  • Purchase — RFQ/PO (import buyurtma signali)

  • Inventory — Lot/Serial, ombor, status-based blocking

  • Documents — reestr hujjatlari, versioning, papkalar

  • Approvals — tasdiqlashlar: import sxemasi, realizatsiya ruxsati

  • Project — registratsiya loyihalari (tasklar / stage)

  • Quality — CAPA (keyingi bosqichda, trigger bo‘lishi mumkin)


2.2 Custom (majburiy) modullar

  1. Registration Project (Custom) — ro‘yxatga olish loyihasi boshqaruvi

  2. Medical Device Registry (Custom) — ro‘yxatga olingan uskunalar reestri

  3. Import Declaration Manager (Custom) — IM-40/IM-42/IM-74 deklaratsiya workflow

  4. Certification Tracker (Custom) — sertifikat statusi, muddati, alertlar


Muhim: “Regulatory Checklist” va “Cost Breakdown” talablaringiz Registration Project ichida submodel sifatida beriladi (alohida modul shart emas).

3) Kodlash tizimi (ID) va sequence talabi (MAJBURIY)


3.1 Kodlash formati


Har bir registratsiya loyihasi uchun yagona kod:

  • REG/{YEAR}/{SEQ}

    Misol: REG/2026/00041


Har bir deklaratsiya uchun:

  • DEC/{TYPE}/{YEAR}/{SEQ}

    Misol: DEC/IM40/2026/00112


Har bir sertifikat yozuvi uchun:

  • CERT/{AUTH}/{YEAR}/{SEQ}

    Misol: CERT/SSV/2026/00007


3.2 Texnik talab (Odoo)

  • ir.sequence obyektlari:

    • reg.project.seq

    • reg.declaration.seq

    • reg.certificate.seq

  • Kodlar rekord yaratilishi bilan avtomatik beriladi.

  • Kodlar Documents papka nomlari va Attachment namingga ham qo‘llanadi.

4) CUSTOM MODUL 1 — Registration Project (Custom)


4.1 Model: 

reg.project


Vazifa: Har bir “ro‘yxatga olish” ishini loyiha sifatida yuritish.


Asosiy maydonlar (fields):

  • name (Display): avtomatik REG/2026/00041 - {Product}

  • code (sequence, unique)

  • product_id → product.template

  • vendor_id → res.partner (ishlab chiqaruvchi / yetkazib beruvchi)

  • company_id → res.company (qaysi korxona nomidan)

  • warehouse_id → stock.warehouse (TK / Qashqa)

  • state (selection): draft, in_review, submitted, approved, released, rejected, archived

  • risk_class (selection): I / IIa / IIb / III

  • authority (selection): SSV / Expert Center / boshqalar

  • start_date, target_deadline, approved_date, release_date

  • responsible_id → res.users

  • department_id → hr.department (REG-05)

  • doc_folder_id → documents.folder (avtomatik)

  • project_id → project.project (Odoo Project bilan link)

  • task_ids → project.task (auto yaratiladi)

  • checklist_ids → reg.checklist.line (submodel)

  • attachment_count (computed)

  • ai_assistant_enabled (bool)


4.2 Submodel: 

reg.checklist.template

 va 

reg.checklist.line


Maqsad: Topshirilishi kerak bo‘lgan hujjatlar ro‘yxati (Lex.uz talablar).

  • reg.checklist.template

    • name

    • risk_class

    • product_category

    • line_ids

  • reg.checklist.line

    • project_id

    • document_type_id (catalog)

    • required (bool)

    • deadline

    • owner_id (mas’ul user)

    • status (missing / uploaded / verified / rejected)

    • document_id → documents.document (link)

    • notes


4.3 Automation (server actions)

  1. reg.project create():

    • code sequence beriladi

    • documents.folder avtomatik yaratiladi (4.4 ga qarang)

    • project.project avtomatik yaratiladi (template asosida)

    • Checklist template risk class/category bo‘yicha auto generate

    • Har bir checklist line uchun project.task yaratiladi (deadline/owner bilan)

  2. Checklist line document_id ulanganida:

    • status → uploaded

    • hujjat “Reg folder”ga majburan joylashtiriladi

  3. Loyiha state=approved bo‘lsa:

    • Product registratsiya statusi → Approved

    • Inventory blok ochish (7-bo‘lim)

5) Documents: “Master Documents” papkalarini avtomatik yaratish (MAJBURIY)


5.1 Papka tuzilmasi


Documents / Master Documents / Registration / {REG_CODE}/


Ichida avtomatik subpapkalar:

  • 01_Application

  • 02_Technical_Dossier

  • 03_Certificates

  • 04_Translations

  • 05_Customs_Declaration

  • 06_Expertise

  • 07_Final_Approval

  • 99_Correspondence


5.2 Texnik talab

  • documents.folder yaratish server action yoki custom method orqali:

    • Root: Master Documents/Registration

    • Folder name: {REG_CODE}

    • Subfolders: yuqoridagi ro‘yxat

  • reg.project.doc_folder_id root folderga bog‘lanadi

  • reg.projectga bog‘langan barcha attachmentlar:

    • ir.attachment intercept (create/write) → hujjatni tegishli folderga joylash

    • res_model='reg.project' yoki project.task bo‘lsa ham shu loyiha folderiga tushishi shart

6) CUSTOM MODUL 2 — Medical Device Registry (Custom)


6.1 Model: 

med.registry.device


Vazifa: Ro‘yxatga olingan uskunalar reestri (Approved/Expired monitoring).


Fields:

  • product_tmpl_id → product.template

  • registration_number

  • registration_status (draft/in_review/approved/expired/suspended)

  • risk_class

  • manufacturer

  • country_origin

  • authority

  • approved_date

  • valid_until

  • certificate_ids → reg.certificate

  • project_ids → reg.project (history)

  • documents_folder_id → documents.folder

  • note


Automation:

  • reg.project state=approved → med.registry.device yaratiladi/yangilanadi

  • valid_until yaqinlashsa (30/15/7 kun) → activity + email (Documents/Discuss)

7) CUSTOM MODUL 3 — Import Declaration Manager (Custom)


7.1 Model: 

reg.declaration


Vazifa: IM-40/IM-42/IM-74 deklaratsiya jarayonini boshqarish.


Fields:

  • code = DEC/{TYPE}/{YEAR}/{SEQ}

  • declaration_type (IM-40 / IM-42 / IM-74)

  • purchase_order_id → purchase.order

  • project_id → reg.project

  • customs_status (draft/submitted/cleared/rejected)

  • certificate_required (bool)

  • clearance_deadline

  • responsible_id

  • documents_folder_id → documents.folder (Registration folder ichida 05_Customs_Declaration)

  • landed_cost_ids (link or reference; core landed cost bilan bog‘lanishi mumkin)

  • notes


Workflow:

  • PO Approved → Declaration create (optional auto)

  • Type tanlanganda → checklist tasks / docs template qo‘shiladi

  • Cleared bo‘lsa → Inventory receipt proceed (bloklar yechiladi faqat Registered bo‘lsa)

8) CUSTOM MODUL 4 — Certification Tracker (Custom)


8.1 Model: 

reg.certificate


Vazifa: Sertifikatlar, ekspertiza, muddati va status.


Fields:

  • code = CERT/{AUTH}/{YEAR}/{SEQ}

  • project_id → reg.project

  • device_registry_id → med.registry.device

  • certificate_type (SSV / Expert Center / Declaration / boshqa)

  • authority

  • submission_date

  • approval_date

  • valid_until

  • status (draft/submitted/approved/expired/rejected)

  • document_id → documents.document (PDF)

  • reminder_days (default: 30, 15, 7)

  • owner_id


Automation:

  • valid_until yaqinlashsa → activity + dashboard KPI blok (Expired=0 target)

9) Project template: Sotuvdan endgacha stage va task shabloni (Registratsiya uchun)


9.1 Project Stages (Uzbek)

  1. Boshlash (Draft)

  2. Hujjat tayyorlash

  3. Topshirish (Submission)

  4. Ekspertiza / Tekshiruv

  5. Tasdiqlash (Approval)

  6. Registratsiya yakunlandi

  7. Realizatsiyaga ruxsat (Release)

  8. Arxiv


9.2 Stage → avtomatik tasklar (misol)

  • “Hujjat tayyorlash” bosqichi kirganda:

    • Tasklar: “Dossier to‘ldirish”, “Tarjima”, “Skan/PDF format”, “Checklist verify”

  • “Topshirish”:

    • “Ariza yuborish”, “To‘lov hujjatlari”, “Qabul kvitansiya”

  • “Ekspertiza”:

    • “Remarklar monitoring”, “Qo‘shimcha hujjat javobi”

  • “Tasdiqlash”:

    • “Sertifikatni yuklash”, “Registry update”

  • “Release”:

    • “Inventory unblock”, “Sales allowed”


Har bir task:

  • deadline = checklist line deadline

  • assignee = checklist owner_id

10) Inventory bilan bloklash (Status-based blocking)


10.1 Qoida


Agar mahsulot registration_status != approved bo‘lsa:

  • CRM/Sales’da sotuvga chiqmasin (sales order validation)

  • Inventory’da “delivery” va “reservation” blok bo‘lsin


10.2 Texnik yechim

  • product.templatega field: x_registration_status

  • sale.order.line confirm hook:

    • agar product.x_registration_status != 'approved' → ValidationError

  • Inventory:

    • “routes/stock rules” yoki move validation’da check:

      • delivery move’da approved bo‘lmasa → block

11) AI Agent (qo‘shimcha talab)


11.1 Vazifa


Registratsiya loyihasida:

  • checklistdagi “missing docs”ni aniqlash,

  • hujjat nomi/mazmunidan “qaysi checklist line” ekanini topib auto-link,

  • deadline yaqinlashsa summary chiqarish,

  • remarklar bo‘yicha “next action” tavsiya.


11.2 Minimal texnik konsept

  • reg.projectda tugma: “AI Assist”

  • Input data:

    • checklist line statuslari

    • attached documents metadata (filename, folder, type)

    • last activities / chatter notes

  • Output:

    • “Missing docs list”

    • “Suggested mapping document → checklist line”

    • “Risk flags” (deadline < 7 days, authority remark open)

  • Integratsiya:

    • Dastlab Odoo internal wizard sifatida (LLM API key keyinchalik ulanishi mumkin)


Bu AI agent “must-have” emas, lekin siz so‘raganingiz uchun TZga kiritildi — dastlab MVP: mapping + missing docs report.

12) RBAC (qisqa)

  • Registratsiya rahbari: full access reg.* (approve stage)

  • Registratsiya xodimi: create/edit own projects, docs upload

  • Quality Manager: certificate start approval / read-only registry

  • Director: “Release for Sale” approval

  • Warehouse: read-only registry status, inventory receipt

  • Sales: faqat approved status ko‘rish (no edit)