feat(registratura): smart defaults per direction, new doc types, expanded cerere templates

- Default doc type: aviz (intrat) / cerere (iesit); auto-switches on direction toggle
- New default doc types: Proces verbal, Notificare, Comunicare (with full seed templates)
- Cerere templates rewritten: emiterea CU/AC, prelungirea valabilitatii, completare
  documentatie, indreptarea erorilor materiale, inaintare dispozitie de santier,
  eliberarea certificatului, aviz, racordare
- Aviz label renamed to "Aviz / Act administrativ"
- Scrisoare label renamed to "Scrisoare / Adresa", raport to "Raport / Studiu"
- Moved PV/notificare/comunicare templates from scrisoare/altele to their own types
- Cleaned up duplicate templates across categories

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
AI Assistant
2026-03-10 14:02:46 +02:00
parent b62e01b153
commit eb7c28ca14
3 changed files with 79 additions and 27 deletions
@@ -240,12 +240,20 @@ function fieldWidth(ft: TemplateFieldType): string {
const SEED_TEMPLATES: Record<string, SubjectTemplate[]> = {
cerere: [
// Cereri trimise (iesit)
seedTemplate("Cerere CU nr. {nr}/{an} — {proiect}", "Cerere CU nr. 123/2026 — Farmacie Str. Exemplu"),
seedTemplate("Cerere AC nr. {nr}/{an} — {proiect}", "Cerere AC nr. 456/2026 — Locuinta P+1E"),
seedTemplate("Cerere prelungire CU nr. {nr}/{an} — {proiect}", "Cerere prelungire CU nr. 78/2026 — Bloc D4"),
seedTemplate("Cerere prelungire AC nr. {nr}/{an} — {proiect}", "Cerere prelungire AC nr. 90/2026 — Hala industriala"),
seedTemplate("Cerere completari nr. {nr}/{an} — {proiect}", "Cerere completari nr. 33/2026 — Bloc rezidential"),
// Cereri emitere acte
seedTemplate("Cerere pentru emiterea CU — {proiect}", "Cerere pentru emiterea CU — Farmacie Str. Exemplu"),
seedTemplate("Cerere pentru emiterea AC — {proiect}", "Cerere pentru emiterea AC — Locuinta P+1E"),
seedTemplate("Cerere pentru eliberarea certificatului de {detalii} — {proiect}", "Cerere pentru eliberarea certificatului de urbanism — Bloc rezidential"),
// Cereri prelungire
seedTemplate("Cerere pentru prelungirea valabilitatii CU nr. {nr}/{an} — {proiect}", "Cerere pentru prelungirea valabilitatii CU nr. 78/2026 — Bloc D4"),
seedTemplate("Cerere pentru prelungirea valabilitatii AC nr. {nr}/{an} — {proiect}", "Cerere pentru prelungirea valabilitatii AC nr. 90/2026 — Hala industriala"),
// Cereri completari / corectii
seedTemplate("Cerere completare documentatie nr. {nr}/{an} — {proiect}", "Cerere completare documentatie nr. 33/2026 — Bloc rezidential"),
seedTemplate("Cerere pentru indreptarea erorilor materiale — {proiect}", "Cerere pentru indreptarea erorilor materiale — Cladire birouri"),
// Cereri diverse
seedTemplate("Cerere inaintare dispozitie de santier — {proiect}", "Cerere inaintare dispozitie de santier — Locuinta P+1E"),
seedTemplate("Cerere aviz {detalii} — {proiect}", "Cerere aviz ISU — Gradinita nr. 3"),
seedTemplate("Cerere racordare {detalii} — {proiect}", "Cerere racordare gaz — Bloc rezidential"),
],
aviz: [
// Acte administrative primite (intrat)
@@ -283,13 +291,11 @@ const SEED_TEMPLATES: Record<string, SubjectTemplate[]> = {
],
scrisoare: [
seedTemplate("Adresa nr. {nr}/{an} — {detalii}", "Adresa nr. 45/2026 — Raspuns solicitare informatii"),
seedTemplate("Comunicare {detalii} — {proiect}", "Comunicare rezultat analiza — Bloc rezidential"),
seedTemplate("Comunicare nr. {nr}/{an} — {proiect}", "Comunicare nr. 18/2026 — Farmacie Str. Exemplu"),
seedTemplate("Notificare {detalii} — {proiect}", "Notificare incepere lucrari — Locuinta P+1E"),
seedTemplate("Adresa {detalii} — {proiect}", "Adresa raspuns completari — Bloc rezidential"),
seedTemplate("Adeverinta {detalii} nr. {nr}/{an}", "Adeverinta stagiu practica nr. 3/2026"),
seedTemplate("Raspuns completari nr. {nr}/{an} — {proiect}", "Raspuns completari nr. 33/2026 — Bloc rezidential"),
seedTemplate("Instiintare {detalii} — {proiect}", "Instiintare incepere executie — Locuinta P+1E"),
seedTemplate("Somatie {detalii} — {proiect}", "Somatie plata factura — Cladire birouri"),
seedTemplate("Invitatie {detalii} — {proiect}", "Invitatie sedinta receptie — Cladire birouri"),
],
"nota-de-comanda": [
seedTemplate("Nota de comanda nr. {nr}/{an} — {proiect}", "Nota de comanda nr. 7/2026 — Instalatii electrice"),
@@ -307,6 +313,29 @@ const SEED_TEMPLATES: Record<string, SubjectTemplate[]> = {
seedTemplate("Audit energetic nr. {nr}/{an} — {proiect}", "Audit energetic nr. 4/2026 — Bloc C3"),
seedTemplate("Caiet de sarcini — {proiect}", "Caiet de sarcini — Instalatii electrice"),
],
"proces-verbal": [
seedTemplate("PV receptie nr. {nr}/{an} — {proiect}", "PV receptie nr. 5/2026 — Cladire birouri"),
seedTemplate("PV receptie la terminarea lucrarilor nr. {nr}/{an} — {proiect}", "PV receptie la terminarea lucrarilor nr. 2/2026 — Bloc D4"),
seedTemplate("PV receptie finala nr. {nr}/{an} — {proiect}", "PV receptie finala nr. 1/2026 — Hala logistica"),
seedTemplate("Proces verbal {detalii} nr. {nr}/{an} — {proiect}", "Proces verbal inspectie santier nr. 3/2026 — Bloc rezidential"),
seedTemplate("PV predare documentatie — {proiect}", "PV predare documentatie — Locuinta P+1E"),
seedTemplate("PV constatare {detalii} — {proiect}", "PV constatare neconformitati — Cladire birouri"),
],
notificare: [
seedTemplate("Notificare incepere lucrari — {proiect}", "Notificare incepere lucrari — Locuinta P+1E"),
seedTemplate("Notificare finalizare lucrari — {proiect}", "Notificare finalizare lucrari — Bloc rezidential"),
seedTemplate("Notificare {detalii} — {proiect}", "Notificare reluare lucrari — Hala industriala"),
seedTemplate("Notificare nr. {nr}/{an} — {proiect}", "Notificare nr. 7/2026 — Cladire birouri"),
seedTemplate("Instiintare {detalii} — {proiect}", "Instiintare incepere executie — Bloc D4"),
seedTemplate("Instiintare ISC — {proiect}", "Instiintare ISC — Gradinita nr. 3"),
],
comunicare: [
seedTemplate("Comunicare {detalii} — {proiect}", "Comunicare rezultat analiza — Bloc rezidential"),
seedTemplate("Comunicare nr. {nr}/{an} — {proiect}", "Comunicare nr. 18/2026 — Farmacie Str. Exemplu"),
seedTemplate("Comunicare completari necesare — {proiect}", "Comunicare completari necesare — Locuinta P+1E"),
seedTemplate("Comunicare respingere cerere — {proiect}", "Comunicare respingere cerere — Hala industriala"),
seedTemplate("Comunicare {detalii} nr. {nr}/{an}", "Comunicare programare nr. 5/2026"),
],
"apel-telefonic": [
seedTemplate("Convorbire {detalii} — {proiect}", "Convorbire primarie avize — Bloc D4"),
seedTemplate("Apel {detalii} — {proiect}", "Apel ISU programare — Gradinita nr. 3"),
@@ -317,8 +346,6 @@ const SEED_TEMPLATES: Record<string, SubjectTemplate[]> = {
],
altele: [
seedTemplate("Documentatie {detalii} — {proiect}", "Documentatie PAC+DDE — Locuinta P+M"),
seedTemplate("PV receptie nr. {nr}/{an} — {proiect}", "PV receptie nr. 5/2026 — Cladire birouri"),
seedTemplate("Proces verbal nr. {nr}/{an} — {proiect}", "Proces verbal nr. 3/2026 — Inspectie santier"),
seedTemplate("Referat verificare nr. {nr}/{an} — {proiect}", "Referat verificare nr. 11/2026 — Locuinta P+1E"),
seedTemplate("Memoriu tehnic — {proiect}", "Memoriu tehnic — Hala industriala"),
seedTemplate("Decizie {detalii} nr. {nr}/{an}", "Decizie etapizare nr. 2/2026"),
@@ -334,8 +361,8 @@ const SEED_TEMPLATES: Record<string, SubjectTemplate[]> = {
const SUBJECT_PLACEHOLDERS_MAP: Record<string, Record<string, string>> = {
cerere: {
intrat: "ex: Cerere completari nr. 33/2026 — Proiect X",
iesit: "ex: Cerere CU nr. 123/2026 — Proiect X",
intrat: "ex: Cerere completare documentatie — Proiect X",
iesit: "ex: Cerere pentru emiterea CU — Proiect X",
},
aviz: {
intrat: "ex: CU nr. 312/2026 — Proiect X",
@@ -355,7 +382,7 @@ const SUBJECT_PLACEHOLDERS_MAP: Record<string, Record<string, string>> = {
},
scrisoare: {
intrat: "ex: Adresa nr. 45/2026 — Raspuns informatii",
iesit: "ex: Notificare incepere lucrari — Proiect X",
iesit: "ex: Adresa raspuns completari — Proiect X",
},
"nota-de-comanda": {
intrat: "ex: Nota de comanda nr. 7/2026 — Proiect X",
@@ -365,6 +392,18 @@ const SUBJECT_PLACEHOLDERS_MAP: Record<string, Record<string, string>> = {
intrat: "ex: Expertiza tehnica nr. 7/2026 — Proiect X",
iesit: "ex: Raport nr. 3/2026 — Proiect X",
},
"proces-verbal": {
intrat: "ex: PV receptie nr. 5/2026 — Proiect X",
iesit: "ex: PV predare documentatie — Proiect X",
},
notificare: {
intrat: "ex: Notificare finalizare lucrari — Proiect X",
iesit: "ex: Notificare incepere lucrari — Proiect X",
},
comunicare: {
intrat: "ex: Comunicare completari necesare — Proiect X",
iesit: "ex: Comunicare nr. 18/2026 — Proiect X",
},
"apel-telefonic": {
intrat: "ex: Apel primarie avize — Proiect X",
iesit: "ex: Convorbire ISU programare — Proiect X",