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‘ish, deadline / 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
Registration Project (Custom) — ro‘yxatga olish loyihasi boshqaruvi
Medical Device Registry (Custom) — ro‘yxatga olingan uskunalar reestri
Import Declaration Manager (Custom) — IM-40/IM-42/IM-74 deklaratsiya workflow
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)
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)
Checklist line document_id ulanganida:
status → uploaded
hujjat “Reg folder”ga majburan joylashtiriladi
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)
Boshlash (Draft)
Hujjat tayyorlash
Topshirish (Submission)
Ekspertiza / Tekshiruv
Tasdiqlash (Approval)
Registratsiya yakunlandi
Realizatsiyaga ruxsat (Release)
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)