Telegramda yozing@Odilient

SAAS

Moydom

Munitsipal tashkilotlar uchun modulli «aqlli shahar» platformasi: OCR bilan hujjatlarni qayta ishlash, Canvas asosidagi reja muharriri, fon vazifalari navbatlari va qat’iy multi-tenant kirish nazorati.

Moydom
Mijoz
Davlat va jamoat sektori
Soha
9–12 oy
Muddat
2023
Yil
Boshlang‘ich nuqta

Muammo

Munitsipal ish qog‘oz va chizmalar ustida quriladi: skanerlangan hujjatlar, qavat rejalari, planimetriya va izohli xaritalar. Moydom’ga bir nechta munitsipal tashkilot hujjatlarni qayta ishlashi va rejalarni brauzerda tahrirlashi mumkin bo‘lgan yagona platforma kerak edi. Tashkilotlarning ma’lumotlari aralashib ketmasligi, ish yurituvchilar, inspektorlar va administratorlar turli huquqlarga ega bo‘lishi, og‘ir OCR va PDF vazifalari esa interfeysni qotirib qo‘ymasligi kerak edi.

Biz nima qildik

Yechim

Hisob-kitob (billing), hujjatlarni qayta ishlash va xaritalarni render qilish alohida modullarga ajratilgan modulli Laravel 9 backendini hamda Vue 3 va Inertia.js interfeysini qurdik. Canvas asosidagi muharrir xodimlarga rejalarga to‘g‘ridan-to‘g‘ri brauzerda izoh qo‘yish va o‘lchash imkonini beradi. RabbitMQ worker navbatlari OCR, PDF yaratish va boshqa uzoq davom etadigan vazifalarni so‘rov siklidan chiqarib oladi. Tenantlar izolyatsiyasi va rollarga asoslangan kirish nazorati tashkilotlar va rollarni bir-biridan ajratadi.

Texnologiyalar
Laravel 9Vue.js 3Inertia.jsMySQLRabbitMQRedisCanvas APITailwind CSS
Parda ortida

Loyiha qanday yaratildi

Munitsipal hujjatlar va rejalar uchun «aqlli shahar» platformasi

Moydom (moydom.ru) «aqlli shahar» xizmatlarini yaratadi. Biz uning hujjatlar, bino rejalari va shahar xizmatlari jarayonlarini boshqarish uchun munitsipal platformasini qurdik. Shaharlar juda katta hajmda qog‘oz hujjat ishlab chiqaradi, ularga qavat rejalari, planimetriya va izohli xaritalar kabi vizual materiallar ham qo‘shiladi. Moydom ularning barchasini bitta multi-tenant tizimga jamlaydi, shuning uchun ish endi tarqoq fayllar va kompyuter dasturlariga bog‘liq emas.

Loyihani to‘rt nafar full-stack dasturchidan iborat jamoa bilan boshqardik: yetkazib berish 9–12 oy davomida iteratsiyalar bilan borgan, yo‘l xaritasini esa jarayon davomida mijoz bilan kelishib bordik.

Asosiy imkoniyatlar

  • Hujjatlarni qayta ishlash: yuklangan hujjatlar fonda OCR va PDF generatsiyasidan o‘tadi, skanlar platforma ishlay oladigan matnga aylanadi.
  • Canvas asosidagi reja muharriri: xodimlar qavat rejalari va planimetriyani brauzerning o‘zida chizadi, o‘lchaydi va izohlaydi — hech qanday kompyuter dasturisiz.
  • Xaritalarni render qilish: xaritalar va rejalar hujjatlar bilan ishlashdan alohida, o‘z modulida render qilinadi.
  • Mustaqil billing moduli: hisob-kitobning o‘z chegaralari bor va u platformaning qolgan qismiga aralashmaydi.
  • Multi-tenant arxitektura: har bir munitsipal tashkilot o‘z tenantida ishlaydi, tashkilotlar o‘rtasida ma’lumotlar qat’iy ajratilgan.
  • Rollarga asoslangan kirish nazorati: huquqlar ish yurituvchilar, inspektorlar va administratorlar kabi munitsipal rollar asosida qurilgan.
  • Asinxron vazifalar navbatlari: uzoq davom etadigan vazifalarni RabbitMQ worker’lari bajaradi, shuning uchun vazifalar ishlayotganda ham interfeys tez javob beradi.

Arxitektura va texnologiyalar

Modulli Laravel backend

Backend Laravel 9 asosida MySQL va Redis bilan qurilgan. Billing, hujjatlarni qayta ishlash va xaritalarni render qilish — aniq chegaralarga ega alohida modullar. Bunday bo‘linish har bir modulga mustaqil rivojlanish va masshtablanish imkonini beradi. Shuningdek, kichik jamoa bir xil kodni doimiy ravishda birga tahrirlamasdan, parallel ishlay oldi.

Vue 3 va Inertia.js frontend

Interfeys Vue.js 3, Inertia.js va Tailwind CSS’da qurilgan. Inertia bilan Laravel marshrutlari va kontrollerlari Vue sahifalarini to‘g‘ridan-to‘g‘ri render qiladi. Admin ekranlari ko‘p bo‘lgan katta ilova har bir ekran uchun alohida API qatlamisiz bitta kod bazasida qoladi.

Canvas reja muharriri

Rejalar va planimetriya HTML5 canvas’da tahrirlanadi. Chizish va izohlash reja ustida mijoz tomonida bajariladi, shuning uchun xodimlar brauzerdan chiqmasdan va hech narsa o‘rnatmasdan chizmaga belgi qo‘yishi va o‘lchov olishi mumkin.

OCR va PDF generatsiyasi uchun RabbitMQ worker navbatlari

Skanerlangan hujjatlarda OCR va PDF generatsiyasi oddiy veb-so‘rovdan ancha uzoq davom etadi. Foydalanuvchilarni kuttirish o‘rniga ilova bu vazifalarni RabbitMQ navbatlariga qo‘yadi va darhol javob qaytaradi. Worker jarayonlari vazifalarni olib, fonda bajaradi. Og‘ir ishlar hajmi oshganda, odamlar foydalanayotgan sahifalarni sekinlashtirmasdan qo‘shimcha worker’lar qo‘shish mumkin.

Munitsipal tashkilotlar uchun multi-tenant va kirish nazorati

Bir nechta munitsipal tashkilot bitta platformadan foydalanganda, platforma ularning hech biri boshqasining hujjatlarini ko‘rmasligini kafolatlashi kerak. Tenantlarni ajratish butun platforma bo‘ylab majburiy qo‘llanadi. Har bir tenant ichida rollarga asoslangan kirish nazorati haqiqiy munitsipal rollarga mos keladi, shuning uchun ish yurituvchilar, inspektorlar va administratorlarning har biri o‘z ishi uchun kerakli huquqlarni oladi. Xuddi shu arxitektura yangi munitsipalitetlarni ulash uchun aniq yo‘l ochadi.

Bizning rolimiz

Ishlab chiqishni jamoa rahbari (team lead) sifatida boshqardik. Bu modulli backend arxitekturasini loyihalash, reja muharriri, navbatlar infratuzilmasi va multi-tenant kirish modelini topshirish hamda iteratsiyali yetkazib berish davomida yo‘l xaritasini mijoz bilan kelishib borishni anglatardi.

Tegishli ishlar

WClinic — integratsiya ishlari ko‘p bo‘lgan yana bir loyiha, unda ham jamoa rahbari bo‘lganmiz: klinika CRM’i ustida bir nechta klinika uchun onlayn yozilish. Davlat sektori uchun konsalting bo‘yicha Tver viloyati Sog‘liqni saqlash vazirligi uchun tayyorlagan texnik tadqiqotimizga qarang. Bunday platformalar veb-ilovalar yaratish xizmatimizning bir qismi.

Birga yaratamiz

Moydom kabi loyiha kerakmi?

Mahsulotingiz nima qilishi kerakligini ayting. Ish hajmini belgilaymiz, muddatlarni rejalashtiramiz va qat’iy narx yuboramiz — bepul va davom ettirish majburiyatisiz.

Bepul konsultatsiya Majburiyatsiz Tezkor javob