Poziție onestă: SGApps ERP nu este un software de management construcţii dedicat (nu are grafic Gantt cu drum critic, nu se integrează cu programe de deviz oficiale MD tip WinDoc/eDeviz, nu generează situații de lucrări conform format MADR / Inspectoratului de Stat în Construcţii). Ce oferim este un set de primitive extensibile — șantier cafolder-grup, articol deviz cafolder-produs, etapă construcţie cainvoice lifecycle, evidență materiale + ore-om înstock-loggerinalterabil — care se pot configura la cerere pentru firme mici / medii de construcţii care vor evidență materiale, ore muncă, subcontractori și cost pe şantier. Rapoartele oficiale către Inspectoratul de Stat în Construcţii sau formatele deviz oficiale MD rămân majoritar manuale sau customizare separată.
| Concept business | Entitate ERP | Câmpuri folosite |
|---|---|---|
| Șantier / obiectiv construcţie | folder-grup sau POS (după complexitate) | Pentru firme mici — folder-grup per şantier în catalog; pentru firme cu mai multe şantiere simultane și necesar stoc/casă distinct — fiecare şantier ca POS propriu |
| Etaj / secţiune / zonă în cadrul şantierului | folder-grup sub şantier | params.quantity_available — cantitate lucrări încheiate |
| Articol deviz (m³ beton, kg armătură, m² zidărie, ml cablu) | folder-produs de tip product | name, SKU, MPN, quantity_unit (m3, kg, m2, ml, buc), photo_* (mostre, execuție), params.* (specificaţie tehnică) |
| Material achiziţionat (ciment, cărămidă, oţel-beton, faianţă) | folder-produs cu SKU propriu | Stocuri, cost achiziţie per POS/şantier |
| Etapă lucrare (fundaţie → structură → finisaje) | invoice lifecycle (wip → validated → applied → done) | Fiecare etapă = 1 invoice cu stagii; deblocarea etapei următoare = manuală după acceptare |
| Ore muncă / echipă / subcontractor | folder-produs tip serviciu (ex.: "oră-zidar", "oră-echipă-electricieni") + invoice consum ore | Se poate configura la cerere ca resursă cu cost/oră per POS |
| Deviz / subcomandă cu cod temporar (înainte de codificare oficială) | folder-produs cu MPN temporar F:<prefix>:<uid> → upgrade la MPN permanent după emiterea devizului oficial | Pattern din applications/storage-groups-folder-invoices/api.js linia 460 |
| Rețetă tehnologică (1 m³ beton = X kg ciment + Y kg agregate + Z l apă + N ore-om) | product:recipe + bomCycleGenerate | Fiecare rulare consumă materialele + orele exact conform reţetei |
| Cod deviz / cod ofertă / cod contract | references.json — chei libere | references.santier:cod-contract, references.santier:cod-deviz, references.santier:beneficiar-idno |
| Multi-şantier cu stoc/cost izolat | params_pos[<pos>] | Aceeaşi cărămidă poate avea cost achiziţie şi stoc diferit între şantiere |
| Documentație foto evoluţie şantier / calitate lucrări | photo_00..photo_N pe folder-şantier + fişiere ataşate pe invoice-ul-etapă | Fiecare etapă poate acumula foto cronologic |
Ce nu e un fit natural: grafic Gantt / diagramă drum critic cu dependințe între activități (finisajele nu pot începe înainte de închiderea structurii) — sistemul nu are componentă de planificare temporală cu vizualizare Gantt. Dependinţele pot fi ținute la nivel de flux (etapa X are stagiu wip până când etapa Y ajunge la done), dar UI-ul de planificare temporală = customizare separată sau integrare externă (ex.: MS Project / OpenProject sau export CSV).
folder-produs pentru fiecare, folder-grup pentru organizare pe categorii (Ct. structuri, Ct. finisaje, Ct. instalaţii electrice, Ct. instalaţii sanitare). Câmpurile references.* pot stoca cod deviz standard (dacă există unul intern) sau cod contract.stock-logger (vezi applications/erp/stock-logger/) păstrează urma inalterabilă per operator, per timestamp.bomCycleGenerate (vezi applications/horeca/api.js linia 319) rulează reţeta "1 m³ beton = 350 kg ciment + 700 kg agregate + 180 l apă + 6 ore-om" → decrementează stocurile exact cât s-a lucrat.wip (planificat) → validated (în execuție) → applied (materiale şi ore consumate) → done (recepţionat de beneficiar); trecerea între stagii e manuală sau condiţionată de logică custom la onboarding.F:<prefix>:<uid> permite deschiderea unui folder-lucrare înainte de emiterea codului oficial de deviz, cu adăugare progresivă de intrări; upgrade la MPN permanent la avizare (applications/storage-groups-folder-invoices/api.js linia 507).references.json pe factură; ore/lucrări subcontractate = invoice de recepţie servicii cu cost negociat; log-ul rămâne inalterabil.docs-functionality/module-comune/fiscal-printers.md) pentru încasări directe (comandă suplimentară beneficiar, vânzare rest materiale); e-Factura B2B (applications/e-factura/api.js) pentru facturare beneficiar corporate.stock_min per POS/şantier → Notifications Watcher (applications/erp/notifications-watcher.js) livrează alerte pe dashboard + browser push + audio cue. Trimitere automată SMS/email/Telegram nu e feature product implicit (⚙️ integrare custom).sg.helpers.priceCalculate.spart_transport, depreciere_umezeala, furt, execuţie_greşită), notă liberă + eventual foto (photo_* pe invoice).params_pos[<pos>] permite ca aceeaşi cărămidă să aibă cost achiziţie diferit între şantiere; stocuri, alertă minim, prețuri de deviz calculate distinct.applications/shared-refs/) permite stocarea rețetei tehnologice per articol deviz cu istoric complet audit-log; recalcularea costurilor pe perioade vechi rămâne corectă contabil.photo_00..photo_N pe fiecare invoice-etapă permit documentarea vizuală a stagiilor (fundaţie turnat, cofraj demontat, tencuială aplicată, finisaje) cu timestamp automat.AndroidBridge (applications/android-bridge/) are USB/BT/HTTP; driver-ele specifice pentru terminale pontaj sunt configurări per hardware. Estimare: 2-3 săptămâni per model.applied → decrementează din depozitul central (unde erau în tranzit) + incrementează pe POS-şantier. stock-logger înregistrează 2 log-uri cu autor "Andrei (şef şantier)", timestamp, sursă = folder-invoice-recepţie.bomCycleGenerate cu mpn="BETON-C20", cycles=4 → reţeta "1 m³ beton" decrementează 1400 kg ciment + 2800 kg agregate + 720 l apă + 24 ore-om.depreciere_umezeala + foto (photo_00) cu sacul deteriorat.applications/e-factura/api.js). Casa de marcat rămâne opţională (doar pentru beneficiar persoană fizică).Toate log-urile rămân inalterabile pentru audit fiscal ulterior.
| Dimensiune | Pondere | Scor | Notă onestă |
|---|---|---|---|
| Model de date | 25% | 65% | Primitivele acoperă şantier, articol deviz, material, etapă lucrare, subcontractor, cost intern. Lipsă model Gantt / drum critic — se poate adăuga la nivel de flux, nu ca UI. |
| Fluxuri operaționale zilnice | 25% | 60% | Recepţie materiale, consum via BOM cycle, pierderi cu motiv, transfer inter-şantier, emitere factură beneficiar — toate rulează cu primitivele existente. UI tabletă e generic, nu are gesturi specifice şantier (input rapid consum, scan cod material, foto-pe-etapă tag automat). |
| Rapoarte management | 15% | 50% | Storage-groups + shift close + Top losses dau agregări generice. Profit/şantier, comparaţie planificat vs. executat, cash-flow multi-şantier = customizare. |
| Rapoarte oficiale autoritate | 15% | 20% | Formulare ISC / MADR / cartea tehnică nu au template. Datele brute sunt exportabile prin API JSON; formatarea oficială e nedocumentată. |
| Integrări specifice vertical | 10% | 15% | Bridge Android oferă infra, dar programe deviz oficiale MD / senzori pontaj / e-tender = configurări per proiect. |
| Documentație existentă | 10% | 5% | Prima pagină dedicată construcţii; fără capturi/scenarii vizuale încă. |