fix(registratura): 5 post-3.02 fixes - QuickContact pre-fill (useEffect sync), form close on contact create (stopPropagation), Switch label 'Inchis' -> 'Status', CU moved from Avize to own category, close guard for active deadlines
This commit is contained in:
@@ -1,220 +1,234 @@
|
||||
import type { DeadlineTypeDef, DeadlineCategory } from '../types';
|
||||
import type { DeadlineTypeDef, DeadlineCategory } from "../types";
|
||||
|
||||
export const DEADLINE_CATALOG: DeadlineTypeDef[] = [
|
||||
// ── Certificat de Urbanism ──
|
||||
{
|
||||
id: "cerere-cu",
|
||||
label: "Cerere CU",
|
||||
description:
|
||||
"Termen de emitere a Certificatului de Urbanism de la data depunerii cererii.",
|
||||
days: 15,
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: true,
|
||||
category: "certificat",
|
||||
legalReference: "Legea 50/1991, art. 6¹",
|
||||
},
|
||||
|
||||
// ── Avize ──
|
||||
{
|
||||
id: 'cerere-cu',
|
||||
label: 'Cerere CU',
|
||||
description: 'Termen de emitere a Certificatului de Urbanism de la data depunerii cererii.',
|
||||
id: "avize-normale",
|
||||
label: "Cerere Avize normale",
|
||||
description: "Termen de emitere a avizelor de la data depunerii cererii.",
|
||||
days: 15,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data depunerii',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: true,
|
||||
category: 'avize',
|
||||
legalReference: 'Legea 50/1991, art. 6¹',
|
||||
category: "avize",
|
||||
},
|
||||
{
|
||||
id: 'avize-normale',
|
||||
label: 'Cerere Avize normale',
|
||||
description: 'Termen de emitere a avizelor de la data depunerii cererii.',
|
||||
days: 15,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data depunerii',
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: true,
|
||||
category: 'avize',
|
||||
},
|
||||
{
|
||||
id: 'aviz-cultura',
|
||||
label: 'Aviz Cultură',
|
||||
description: 'Termen de emitere a avizului Ministerului Culturii de la data comisiei.',
|
||||
id: "aviz-cultura",
|
||||
label: "Aviz Cultură",
|
||||
description:
|
||||
"Termen de emitere a avizului Ministerului Culturii de la data comisiei.",
|
||||
days: 30,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data comisie',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data comisie",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data ședinței comisiei de specialitate',
|
||||
startDateHint: "Data ședinței comisiei de specialitate",
|
||||
tacitApprovalApplicable: true,
|
||||
category: 'avize',
|
||||
category: "avize",
|
||||
},
|
||||
{
|
||||
id: 'aviz-mediu',
|
||||
label: 'Aviz Mediu',
|
||||
description: 'Termen de emitere a avizului de mediu de la finalizarea procedurilor.',
|
||||
id: "aviz-mediu",
|
||||
label: "Aviz Mediu",
|
||||
description:
|
||||
"Termen de emitere a avizului de mediu de la finalizarea procedurilor.",
|
||||
days: 15,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data finalizare proceduri',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data finalizare proceduri",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data finalizării procedurii de evaluare de mediu',
|
||||
startDateHint: "Data finalizării procedurii de evaluare de mediu",
|
||||
tacitApprovalApplicable: true,
|
||||
category: 'avize',
|
||||
category: "avize",
|
||||
},
|
||||
{
|
||||
id: 'aviz-aeronautica',
|
||||
label: 'Aviz Aeronautică',
|
||||
description: 'Termen de emitere a avizului de la Autoritatea Aeronautică.',
|
||||
id: "aviz-aeronautica",
|
||||
label: "Aviz Aeronautică",
|
||||
description: "Termen de emitere a avizului de la Autoritatea Aeronautică.",
|
||||
days: 30,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data depunerii',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: true,
|
||||
category: 'avize',
|
||||
category: "avize",
|
||||
},
|
||||
|
||||
// ── Completări ──
|
||||
{
|
||||
id: 'completare-beneficiar',
|
||||
label: 'Completare — termen beneficiar',
|
||||
description: 'Termen acordat beneficiarului pentru completarea documentației.',
|
||||
id: "completare-beneficiar",
|
||||
label: "Completare — termen beneficiar",
|
||||
description:
|
||||
"Termen acordat beneficiarului pentru completarea documentației.",
|
||||
days: 60,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data notificării',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data notificării",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: false,
|
||||
chainNextTypeId: 'completare-emitere',
|
||||
chainNextActionLabel: 'Adaugă termen emitere (15 zile)',
|
||||
category: 'completari',
|
||||
chainNextTypeId: "completare-emitere",
|
||||
chainNextActionLabel: "Adaugă termen emitere (15 zile)",
|
||||
category: "completari",
|
||||
},
|
||||
{
|
||||
id: 'completare-emitere',
|
||||
label: 'Completare — termen emitere',
|
||||
description: 'Termen de emitere după depunerea completărilor.',
|
||||
id: "completare-emitere",
|
||||
label: "Completare — termen emitere",
|
||||
description: "Termen de emitere după depunerea completărilor.",
|
||||
days: 15,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data depunere completări',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunere completări",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data la care beneficiarul a depus completările',
|
||||
startDateHint: "Data la care beneficiarul a depus completările",
|
||||
tacitApprovalApplicable: true,
|
||||
category: 'completari',
|
||||
category: "completari",
|
||||
},
|
||||
|
||||
// ── Analiză ──
|
||||
{
|
||||
id: 'ctatu-analiza',
|
||||
label: 'Analiză CTATU',
|
||||
description: 'Termen de analiză în Comisia Tehnică de Amenajare a Teritoriului și Urbanism.',
|
||||
id: "ctatu-analiza",
|
||||
label: "Analiză CTATU",
|
||||
description:
|
||||
"Termen de analiză în Comisia Tehnică de Amenajare a Teritoriului și Urbanism.",
|
||||
days: 30,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data depunerii',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'analiza',
|
||||
category: "analiza",
|
||||
},
|
||||
{
|
||||
id: 'consiliu-promovare',
|
||||
label: 'Promovare Consiliu Local',
|
||||
description: 'Termen de promovare în ședința Consiliului Local.',
|
||||
id: "consiliu-promovare",
|
||||
label: "Promovare Consiliu Local",
|
||||
description: "Termen de promovare în ședința Consiliului Local.",
|
||||
days: 30,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data depunerii',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'analiza',
|
||||
category: "analiza",
|
||||
},
|
||||
{
|
||||
id: 'consiliu-vot',
|
||||
label: 'Vot Consiliu Local',
|
||||
description: 'Termen de vot în Consiliu Local de la finalizarea dezbaterii publice.',
|
||||
id: "consiliu-vot",
|
||||
label: "Vot Consiliu Local",
|
||||
description:
|
||||
"Termen de vot în Consiliu Local de la finalizarea dezbaterii publice.",
|
||||
days: 45,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data finalizare dezbatere',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data finalizare dezbatere",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data finalizării dezbaterii publice',
|
||||
startDateHint: "Data finalizării dezbaterii publice",
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'analiza',
|
||||
category: "analiza",
|
||||
},
|
||||
|
||||
// ── Autorizare ──
|
||||
{
|
||||
id: 'verificare-ac',
|
||||
label: 'Verificare AC',
|
||||
description: 'Termen de verificare a documentației pentru Autorizația de Construire.',
|
||||
id: "verificare-ac",
|
||||
label: "Verificare AC",
|
||||
description:
|
||||
"Termen de verificare a documentației pentru Autorizația de Construire.",
|
||||
days: 5,
|
||||
dayType: 'working',
|
||||
startDateLabel: 'Data depunerii',
|
||||
dayType: "working",
|
||||
startDateLabel: "Data depunerii",
|
||||
requiresCustomStartDate: false,
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'autorizare',
|
||||
category: "autorizare",
|
||||
},
|
||||
{
|
||||
id: 'prelungire-ac',
|
||||
label: 'Cerere prelungire AC',
|
||||
description: 'Cererea de prelungire trebuie depusă cu minim 45 zile lucrătoare ÎNAINTE de expirarea AC.',
|
||||
id: "prelungire-ac",
|
||||
label: "Cerere prelungire AC",
|
||||
description:
|
||||
"Cererea de prelungire trebuie depusă cu minim 45 zile lucrătoare ÎNAINTE de expirarea AC.",
|
||||
days: 45,
|
||||
dayType: 'working',
|
||||
startDateLabel: 'Data expirare AC',
|
||||
dayType: "working",
|
||||
startDateLabel: "Data expirare AC",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data de expirare a Autorizației de Construire',
|
||||
startDateHint: "Data de expirare a Autorizației de Construire",
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'autorizare',
|
||||
category: "autorizare",
|
||||
isBackwardDeadline: true,
|
||||
},
|
||||
{
|
||||
id: 'prelungire-ac-comunicare',
|
||||
label: 'Comunicare decizie prelungire',
|
||||
description: 'Termen de comunicare a deciziei privind prelungirea AC.',
|
||||
id: "prelungire-ac-comunicare",
|
||||
label: "Comunicare decizie prelungire",
|
||||
description: "Termen de comunicare a deciziei privind prelungirea AC.",
|
||||
days: 15,
|
||||
dayType: 'working',
|
||||
startDateLabel: 'Data depunere cerere',
|
||||
dayType: "working",
|
||||
startDateLabel: "Data depunere cerere",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data depunerii cererii de prelungire',
|
||||
startDateHint: "Data depunerii cererii de prelungire",
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'autorizare',
|
||||
category: "autorizare",
|
||||
},
|
||||
|
||||
// ── Publicitate ──
|
||||
{
|
||||
id: 'publicitate-ac',
|
||||
label: 'Publicitate AC',
|
||||
description: 'Termen de publicitate a Autorizației de Construire.',
|
||||
id: "publicitate-ac",
|
||||
label: "Publicitate AC",
|
||||
description: "Termen de publicitate a Autorizației de Construire.",
|
||||
days: 30,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data emitere AC',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data emitere AC",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data emiterii Autorizației de Construire',
|
||||
startDateHint: "Data emiterii Autorizației de Construire",
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'publicitate',
|
||||
category: "publicitate",
|
||||
},
|
||||
{
|
||||
id: 'plangere-prealabila',
|
||||
label: 'Plângere prealabilă',
|
||||
description: 'Termen de depunere a plângerii prealabile.',
|
||||
id: "plangere-prealabila",
|
||||
label: "Plângere prealabilă",
|
||||
description: "Termen de depunere a plângerii prealabile.",
|
||||
days: 30,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data ultimă publicitate',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data ultimă publicitate",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data ultimei publicități / aduceri la cunoștință',
|
||||
startDateHint: "Data ultimei publicități / aduceri la cunoștință",
|
||||
tacitApprovalApplicable: false,
|
||||
chainNextTypeId: 'contestare-instanta',
|
||||
chainNextActionLabel: 'Adaugă termen contestare instanță (60 zile)',
|
||||
category: 'publicitate',
|
||||
chainNextTypeId: "contestare-instanta",
|
||||
chainNextActionLabel: "Adaugă termen contestare instanță (60 zile)",
|
||||
category: "publicitate",
|
||||
},
|
||||
{
|
||||
id: 'contestare-instanta',
|
||||
label: 'Contestare în instanță',
|
||||
description: 'Termen de contestare în instanța de contencios administrativ.',
|
||||
id: "contestare-instanta",
|
||||
label: "Contestare în instanță",
|
||||
description:
|
||||
"Termen de contestare în instanța de contencios administrativ.",
|
||||
days: 60,
|
||||
dayType: 'calendar',
|
||||
startDateLabel: 'Data răspuns plângere',
|
||||
dayType: "calendar",
|
||||
startDateLabel: "Data răspuns plângere",
|
||||
requiresCustomStartDate: true,
|
||||
startDateHint: 'Data primirii răspunsului la plângerea prealabilă',
|
||||
startDateHint: "Data primirii răspunsului la plângerea prealabilă",
|
||||
tacitApprovalApplicable: false,
|
||||
category: 'publicitate',
|
||||
category: "publicitate",
|
||||
},
|
||||
];
|
||||
|
||||
export const CATEGORY_LABELS: Record<DeadlineCategory, string> = {
|
||||
avize: 'Avize',
|
||||
completari: 'Completări',
|
||||
analiza: 'Analiză',
|
||||
autorizare: 'Autorizare',
|
||||
publicitate: 'Publicitate',
|
||||
certificat: "Certificat de Urbanism",
|
||||
avize: "Avize",
|
||||
completari: "Completări",
|
||||
analiza: "Analiză",
|
||||
autorizare: "Autorizare",
|
||||
publicitate: "Publicitate",
|
||||
};
|
||||
|
||||
export function getDeadlineType(typeId: string): DeadlineTypeDef | undefined {
|
||||
return DEADLINE_CATALOG.find((d) => d.id === typeId);
|
||||
}
|
||||
|
||||
export function getDeadlinesByCategory(category: DeadlineCategory): DeadlineTypeDef[] {
|
||||
export function getDeadlinesByCategory(
|
||||
category: DeadlineCategory,
|
||||
): DeadlineTypeDef[] {
|
||||
return DEADLINE_CATALOG.filter((d) => d.category === category);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user