feat(registratura): revert intrat full categories + add urbanism deadlines
- Revert: only iesit+cerere/aviz gets full permitting categories - Urbanism: furnizare date retele (15z cal, doar autoritati publice) - Urbanism: aviz oportunitate PUZ — verificare (30z) + convocare CTATU (30z, chain) + emitere dupa comisie (15z, auto-track) - Urbanism: aviz arhitect sef PUD/PUZ — convocare CTATU (30z, chain) + emitere (15z, auto-track) - Urbanism: promovare CL (30z) + vot CL (45z dupa dezbatere publica) - None of the urbanism deadlines have tacit approval Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -510,13 +510,31 @@ export const DEADLINE_CATALOG: DeadlineTypeDef[] = [
|
||||
},
|
||||
|
||||
// ═══════════════════════════════════════════════════════════════
|
||||
// URBANISM (PUD/PUZ/PUG) — renamed from "Analiza"
|
||||
// URBANISM (PUD/PUZ/PUG) — nu se aplica acordul tacit
|
||||
// ═══════════════════════════════════════════════════════════════
|
||||
{
|
||||
id: "ctatu-analiza",
|
||||
label: "Analiza CTATU",
|
||||
id: "retele-furnizare-date",
|
||||
label: "Furnizare date detinatori retele",
|
||||
description:
|
||||
"Termen de analiza in Comisia Tehnica de Amenajare a Teritoriului si Urbanism.",
|
||||
"Detinatorii de retele tehnico-edilitare furnizeaza gratuit datele solicitate de autoritate, in 15 zile de la solicitare. Aplicabil doar proiectelor cu autoritati publice.",
|
||||
days: 15,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data solicitarii de la autoritate",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint:
|
||||
"Data la care autoritatea a solicitat datele de la detinatorii de retele",
|
||||
tacitApprovalApplicable: false,
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
directionFilter: ["iesit"],
|
||||
},
|
||||
|
||||
// ── Aviz de oportunitate (PUZ privat) ──
|
||||
{
|
||||
id: "aviz-oportunitate-verificare",
|
||||
label: "Aviz oportunitate — verificare / completare",
|
||||
description:
|
||||
"Autoritatea verifica documentatia si solicita completari in max. 30 de zile de la depunere. Daca nu solicita completari, documentatia intra in comisie.",
|
||||
days: 30,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
@@ -527,9 +545,10 @@ export const DEADLINE_CATALOG: DeadlineTypeDef[] = [
|
||||
directionFilter: ["iesit"],
|
||||
},
|
||||
{
|
||||
id: "consiliu-promovare",
|
||||
label: "Promovare Consiliu Local",
|
||||
description: "Termen de promovare in sedinta Consiliului Local.",
|
||||
id: "aviz-oportunitate-ctatu",
|
||||
label: "Aviz oportunitate — convocare CTATU",
|
||||
description:
|
||||
"Documentatia trebuie introdusa in Comisia Tehnica (CTATU) in maximum 30 de zile de la depunere. Se inchide cu event de tip Convocare sedinta.",
|
||||
days: 30,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
@@ -538,17 +557,89 @@ export const DEADLINE_CATALOG: DeadlineTypeDef[] = [
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
directionFilter: ["iesit"],
|
||||
chainNextTypeId: "aviz-oportunitate-emitere",
|
||||
chainNextActionLabel:
|
||||
"Adauga termen emitere aviz oportunitate (15 zile cal.)",
|
||||
},
|
||||
{
|
||||
id: "aviz-oportunitate-emitere",
|
||||
label: "Aviz oportunitate — emitere dupa comisie",
|
||||
description:
|
||||
"Se emite avizul de oportunitate in maximum 15 zile de la analiza favorabila in comisia tehnica CTATU.",
|
||||
days: 15,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data analizei in comisie",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint:
|
||||
"Data la care comisia CTATU a analizat favorabil documentatia",
|
||||
tacitApprovalApplicable: false,
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
directionFilter: ["iesit"],
|
||||
autoTrack: true,
|
||||
},
|
||||
|
||||
// ── Aviz arhitect sef PUD/PUZ ──
|
||||
{
|
||||
id: "aviz-arh-sef-ctatu",
|
||||
label: "Aviz arhitect sef — convocare CTATU",
|
||||
description:
|
||||
"Documentatia PUD/PUZ trebuie introdusa in Comisia Tehnica (CTATU) in maximum 30 de zile de la depunere. Se inchide cu event de tip Convocare sedinta.",
|
||||
days: 30,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: false,
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
directionFilter: ["iesit"],
|
||||
chainNextTypeId: "aviz-arh-sef-emitere",
|
||||
chainNextActionLabel: "Adauga termen emitere aviz arh. sef (15 zile cal.)",
|
||||
},
|
||||
{
|
||||
id: "aviz-arh-sef-emitere",
|
||||
label: "Aviz arhitect sef — emitere dupa comisie",
|
||||
description:
|
||||
"Se emite avizul arhitectului sef in maximum 15 zile de la analiza in comisia tehnica CTATU.",
|
||||
days: 15,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data analizei in comisie",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint:
|
||||
"Data la care comisia CTATU a analizat documentatia PUD/PUZ",
|
||||
tacitApprovalApplicable: false,
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
directionFilter: ["iesit"],
|
||||
autoTrack: true,
|
||||
},
|
||||
|
||||
// ── Consiliul Local ──
|
||||
{
|
||||
id: "consiliu-promovare",
|
||||
label: "Promovare Consiliu Local",
|
||||
description:
|
||||
"Primarul promoveaza documentatia completa si avizata catre Consiliul Local in maximum 30 de zile de la inregistrare.",
|
||||
days: 30,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data inregistrarii documentatiei complete",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: false,
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
directionFilter: ["iesit"],
|
||||
},
|
||||
{
|
||||
id: "consiliu-vot",
|
||||
label: "Vot Consiliu Local",
|
||||
description:
|
||||
"Termen de vot in Consiliu Local de la finalizarea dezbaterii publice.",
|
||||
"Consiliul Local emite hotararea (aprobare sau respingere) in maximum 45 de zile de la finalizarea dezbaterii publice si inaintarea rapoartelor.",
|
||||
days: 45,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data finalizare dezbatere",
|
||||
startDateLabel: "Data finalizare dezbatere publica",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: "Data finalizarii dezbaterii publice",
|
||||
startDateHint:
|
||||
"Data finalizarii dezbaterii publice si inaintarii rapoartelor catre Consiliu",
|
||||
tacitApprovalApplicable: false,
|
||||
category: "urbanism",
|
||||
legalReference: "Legea 350/2001",
|
||||
@@ -710,22 +801,12 @@ export const CATEGORY_LABELS: Record<DeadlineCategory, string> = {
|
||||
contestatie: "Contestatie",
|
||||
};
|
||||
|
||||
/** All permitting categories — shown for cerere/aviz doc types regardless of direction */
|
||||
const ALL_PERMITTING_CATEGORIES: DeadlineCategory[] = [
|
||||
"certificat",
|
||||
"avize",
|
||||
"urbanism",
|
||||
"autorizare",
|
||||
"completari",
|
||||
"contestatie",
|
||||
];
|
||||
|
||||
/** Restricted categories per direction (for non-permitting doc types) */
|
||||
/** Full categories available per direction (before doc type filtering) */
|
||||
export const DIRECTION_CATEGORIES: Record<
|
||||
RegistryDirection,
|
||||
DeadlineCategory[]
|
||||
> = {
|
||||
iesit: ["completari"],
|
||||
iesit: ["certificat", "avize", "urbanism", "autorizare", "completari"],
|
||||
intrat: ["completari", "contestatie"],
|
||||
};
|
||||
|
||||
@@ -737,19 +818,21 @@ const FULL_DEADLINE_DOC_TYPES = new Set(["cerere", "aviz"]);
|
||||
|
||||
/**
|
||||
* Get the ordered list of deadline categories for a given direction + document type.
|
||||
* - "cerere" / "aviz" doc types → full permitting set (certificat, avize, urbanism, autorizare, completari, contestatie)
|
||||
* - All other doc types (scrisoare, notificare, etc.) → direction-dependent limited set
|
||||
* - iesit + cerere/aviz → full set (certificat, avize, urbanism, autorizare, completari)
|
||||
* - intrat → completari + contestatie (always, regardless of doc type)
|
||||
* - iesit + other doc types → only completari
|
||||
*/
|
||||
export function getCategoriesForDirection(
|
||||
direction: RegistryDirection,
|
||||
documentType?: string,
|
||||
): DeadlineCategory[] {
|
||||
// cerere / aviz unlock ALL permitting categories regardless of direction
|
||||
const all = DIRECTION_CATEGORIES[direction];
|
||||
// If doc type triggers full permitting flow, show all categories for this direction
|
||||
if (!documentType || FULL_DEADLINE_DOC_TYPES.has(documentType)) {
|
||||
return ALL_PERMITTING_CATEGORIES;
|
||||
return all;
|
||||
}
|
||||
// Other doc types get direction-specific limited categories
|
||||
return DIRECTION_CATEGORIES[direction];
|
||||
// Otherwise, only completari + contestatie
|
||||
return all.filter((c) => c === "completari" || c === "contestatie");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user