Operațiuni IT

Inventar

Fiecare echipament are cod, proprietar, locație și garanție, cu scanare de rețea și etichete QR.

Versiune
1.0.0
Stadiu
Stabil
Capturi
4
Înlocuiește
Tabele Excel și inventarieri manuale
Lista echipamentelor. Cele 418 echipamente ale firmei, fiecare cu cod TTDDLLNNNN, model, serie, stare, utilizator și IP; sus apar cele modificate recent. Căutarea și filtrele pe tip și stare găsesc orice echipament în câteva secunde.
Lista echipamentelor. Cele 418 echipamente ale firmei, fiecare cu cod TTDDLLNNNN, model, serie, stare, utilizator și IP; sus apar cele modificate recent. Căutarea și filtrele pe tip și stare găsesc orice echipament în câteva secunde.

Capturi din aplicație

Cum arată în lucru

Interfața reală Monolit, cu datele unei firme fictive într-o zi obișnuită. Apăsați pe o captură ca s-o vedeți la dimensiune completă.

Fișa unui laptop. Fișa laptopului LTVZPL0007 al lui Sorin Vlad: achiziția, garanția care expiră pe 12.10.2026, notițele IT și documentele atașate (factură, proces-verbal de predare, raport de service). Filele de sus deschid rețeaua, specificațiile, defectele, istoricul și eticheta QR.
Captura 2 din 4

Fișa unui laptop

Fișa laptopului LTVZPL0007 al lui Sorin Vlad: achiziția, garanția care expiră pe 12.10.2026, notițele IT și documentele atașate (factură, proces-verbal de predare, raport de service). Filele de sus deschid rețeaua, specificațiile, defectele, istoricul și eticheta QR.

Scanarea rețelei. Scanarea subrețelei de birouri din Ploiești a găsit 47 de gazde, dintre care trei nu sunt în inventar: un PC personal și două imprimante noi. Sunt bifate pentru a fi promovate direct în lista de echipamente.
Captura 3 din 4

Scanarea rețelei

Scanarea subrețelei de birouri din Ploiești a găsit 47 de gazde, dintre care trei nu sunt în inventar: un PC personal și două imprimante noi. Sunt bifate pentru a fi promovate direct în lista de echipamente.

Etichetă QR. Codul QR pentru LTVZPL0007 conține numărul de inventar, modelul, seria, departamentul și locația, fără numele utilizatorului. Eticheta se descarcă sau se tipărește direct din fișă.
Captura 4 din 4

Etichetă QR

Codul QR pentru LTVZPL0007 conține numărul de inventar, modelul, seria, departamentul și locația, fără numele utilizatorului. Eticheta se descarcă sau se tipărește direct din fișă.

1Nivelul 1

Pentru conducere

Ce problemă rezolvă, cum se lucrează cu modulul și ce se poate măsura.

Inventarul ține într-un singur loc toate echipamentele IT ale firmei: stații, laptopuri, monitoare, imprimante, servere, echipamente de rețea, UPS-uri. Pentru fiecare se știe cine îl folosește, unde se află, când a fost cumpărat, până când are garanție și ce s-a întâmplat cu el. Înlocuiește foile de calcul care rămân în urmă după fiecare mutare sau angajare.

Ce face concret:

  • Registru unic. Fiecare echipament are un cod de inventar (tip, departament, locație, număr), marcă, model, serie și o stare: disponibil, în folosință, în service, retras/casat sau pierdut. Lista se caută după cod, nume, serie, IP, MAC sau utilizator și se filtrează după tip și stare.
  • Fișa echipamentului. Date de achiziție (dată, garanție, furnizor, factură, preț), utilizator și locație, date de rețea (IP, MAC, VLAN, priză, port de switch, rack), specificații tehnice, defecte cu costul reparațiilor, istoricul modificărilor și documente atașate (facturi, procese-verbale, rapoarte de service).
  • Etichete QR. Din fișă se generează o etichetă cu codul de inventar, modelul, seria, departamentul și locația. Numele utilizatorului nu este inclus în cod.
  • Descoperirea echipamentelor neînregistrate. O scanare a unei subrețele (cu opțiuni pentru porturi deschise, SNMP și tabel ARP) listează gazdele găsite. Ce nu apare în inventar se selectează și se adaugă cu un click.
  • Sincronizare cu controllerul UniFi. Switch-urile și access point-urile intră și se actualizează automat în inventar, la un interval stabilit.
  • Export CSV și JSON pentru audit sau contabilitate.

Fluxuri de lucru tipice:

  1. Echipament nou. IT-ul adaugă echipamentul cu datele de pe factură (sau îl preia din sincronizarea UniFi ori din scanare). Primește cod de inventar, este alocat unui angajat, iar eticheta QR se tipărește din fișă.
  2. Dispozitiv necunoscut în rețea. Scanarea unei subrețele arată o gazdă care nu figurează în inventar, de exemplu un PC personal sau o imprimantă nouă. Tehnicianul o identifică, o bifează și o promovează în lista de echipamente, cu IP-ul, MAC-ul și tipul detectat.
  3. Defect și reparație. Defectul se înregistrează cu severitate și cost, echipamentul trece „în service”, iar la întoarcere revine „în folosință”. Fiecare pas rămâne în istoric, iar costul total al reparațiilor se vede în fișă.
  4. Angajare și plecare. Modulul HR ia echipamentele disponibile din inventar la angajare și le eliberează la plecare, astfel încât alocarea rămâne corectă fără introducere dublă.

Indicatori pe care îi oferă: numărul de echipamente pe fiecare stare (în folosință, disponibile în stoc, în service, pierdute), echipamentele alocate fiecărui angajat, costul reparațiilor pe echipament, datele de expirare a garanțiilor și numărul de dispozitive găsite în rețea fără să fie înregistrate.

2Nivelul 2

Pentru echipa IT

Arhitectură, integrări, API, roluri și limitările cunoscute.

Arhitectură. Serviciu FastAPI separat, pe portul intern 8007, cu prefixul /api/inventar și schema SQL Server inventar (versiune modul 1.0.0). API-ul folosește câmpuri în format camelCase, compatibile cu vechiul ITAM v4 din care s-au importat datele inițiale. Pe lângă câmpurile standard, fișa acceptă câmpuri extinse și câmpuri personalizate, definite prin rutele de configurare.

Joburi programate. Sincronizarea automată cu UniFi rulează la intervalul setat în interfață (minimum 5 minute), cu valoare implicită configurabilă prin variabila opțională UNIFI_AUTOSYNC_INTERVAL_MIN; după schimbarea configurației, jobul se repornește prin POST /api/inventar/unifi/restart-autosync. Scanările de rețea rulează ca joburi asincrone, cu progres, anulare și istoric.

Integrări și protocoale.

  • Controller UniFi: generație detectată automat sau aleasă manual (controller clasic sau UniFi OS), autentificare cu utilizator și parolă, site configurabil. Rezultatul fiecărei sincronizări (adăugate, actualizate, erori) este păstrat.
  • Scanner: descoperire de gazde într-un CIDR, cu scanare de porturi, SNMP și ARP opționale; alternativ, import de text din arp -a / arp -n sau citirea tabelei ARP locale a serverului.
  • Surse de date marcate pe fiecare echipament: unifi, scanner, rmm, sqlite_import.
  • Modulul HR consumă GET/POST/PUT /api/inventar/equipment pentru predarea și recuperarea echipamentelor.
  • Evenimente publicate: inventar.equipment_created, inventar.equipment_updated, inventar.equipment_deleted, inventar.unifi_sync_done.

Endpoint-uri notabile (28 în module.yaml, toate autentificate):

  • Echipamente: GET/POST /api/inventar/equipment, GET/PUT/DELETE /api/inventar/equipment/{id}, POST /api/inventar/equipment/bulk.
  • Export: GET /api/inventar/export/csv, GET /api/inventar/export/json.
  • Configurare: GET/PUT /api/inventar/setup/fields, GET /api/inventar/setup/settings, PUT /api/inventar/setup/settings/{key}.
  • Scanner: POST /api/inventar/scan/start, GET /api/inventar/scan/status/{job_id}, POST /api/inventar/scan/cancel/{job_id}, GET /api/inventar/scan/history, GET /api/inventar/scan/results/{job_id}, POST /api/inventar/scan/arp-import, GET /api/inventar/scan/arp-local, POST /api/inventar/scan/promote.
  • UniFi: GET/POST /api/inventar/unifi/config, POST /api/inventar/unifi/test, POST /api/inventar/unifi/sync, GET /api/inventar/unifi/last-sync, GET /api/inventar/unifi/devices.
  • Audit: GET /api/inventar/audit (filtre pe acțiune și limită).

Interfața folosește în plus trei rute pentru documentele atașate unui echipament (încărcare, ștergere, descărcare, sub /api/inventar/equipment/{id}/documents), care nu sunt încă declarate în contract.

Roluri și audit. Toate rutele cer autentificare. Modulul nu are restricție de rol în registrul interfeței, deci este vizibil oricărui utilizator autentificat. Acțiunile sunt scrise în jurnalul de audit (GET /api/inventar/audit), cu utilizator, acțiune, entitate, detalii și rezultat.

Cerințe. Variabilele DB_HOST, DB_USER, DB_PASSWORD, SECRET_KEY; modulul de bază (core_service) de la versiunea 1.0.0; modulul RMM este opțional. Scanarea are nevoie ca serverul să ajungă la subrețelele scanate; citirea tabelei ARP locale vede doar segmentul de rețea al serverului. Sincronizarea UniFi cere un cont local pe controller.

Limitări.

  • Eticheta QR este generată de un serviciu public extern: browserul are nevoie de acces la internet, iar datele codate (fără numele utilizatorului) sunt trimise acelui serviciu.
  • Data de expirare a garanției se vede doar în fișa echipamentului; lista nu are încă o coloană sau un filtru pentru garanții.
  • Importul bulk înlocuiește întregul inventar, nu îl completează.
  • Câmpul de subrețea din scanner pornește cu o valoare implicită fixă, care trebuie înlocuită la fiecare scanare.
  • Starea apare în engleză în listă și în română în fișă.