erp-construccion-backend/dist/shared/constants/enums.constants.d.ts

366 lines
11 KiB
TypeScript

/**
* Enums Constants - SSOT (Single Source of Truth)
*
* Todos los enums del sistema. Estos se sincronizan automaticamente
* al frontend usando el script sync-enums.ts
*
* @module @shared/constants/enums
*/
/**
* Roles del sistema de construccion
*/
export declare const ROLES: {
readonly SUPER_ADMIN: "super_admin";
readonly ADMIN: "admin";
readonly DIRECTOR_GENERAL: "director_general";
readonly DIRECTOR_PROYECTOS: "director_proyectos";
readonly DIRECTOR_CONSTRUCCION: "director_construccion";
readonly GERENTE_ADMINISTRATIVO: "gerente_administrativo";
readonly GERENTE_OPERACIONES: "gerente_operaciones";
readonly INGENIERO_RESIDENTE: "ingeniero_residente";
readonly INGENIERO_COSTOS: "ingeniero_costos";
readonly CONTROL_OBRA: "control_obra";
readonly PLANEADOR: "planeador";
readonly SUPERVISOR_OBRA: "supervisor_obra";
readonly SUPERVISOR_HSE: "supervisor_hse";
readonly SUPERVISOR_CALIDAD: "supervisor_calidad";
readonly COMPRAS: "compras";
readonly ALMACENISTA: "almacenista";
readonly RRHH: "rrhh";
readonly NOMINA: "nomina";
readonly CONTADOR: "contador";
readonly TESORERO: "tesorero";
readonly POSTVENTA: "postventa";
readonly SUBCONTRATISTA: "subcontratista";
readonly PROVEEDOR: "proveedor";
readonly DERECHOHABIENTE: "derechohabiente";
readonly VIEWER: "viewer";
};
export type Role = typeof ROLES[keyof typeof ROLES];
/**
* Estados de cuenta de usuario
*/
export declare const USER_STATUS: {
readonly ACTIVE: "active";
readonly INACTIVE: "inactive";
readonly PENDING: "pending";
readonly SUSPENDED: "suspended";
readonly BLOCKED: "blocked";
};
export type UserStatus = typeof USER_STATUS[keyof typeof USER_STATUS];
/**
* Estados de proyecto
*/
export declare const PROJECT_STATUS: {
readonly DRAFT: "draft";
readonly PLANNING: "planning";
readonly BIDDING: "bidding";
readonly AWARDED: "awarded";
readonly ACTIVE: "active";
readonly PAUSED: "paused";
readonly COMPLETED: "completed";
readonly CANCELLED: "cancelled";
};
export type ProjectStatus = typeof PROJECT_STATUS[keyof typeof PROJECT_STATUS];
/**
* Tipos de proyecto
*/
export declare const PROJECT_TYPE: {
readonly HORIZONTAL: "horizontal";
readonly VERTICAL: "vertical";
readonly MIXED: "mixed";
readonly INFRASTRUCTURE: "infrastructure";
};
export type ProjectType = typeof PROJECT_TYPE[keyof typeof PROJECT_TYPE];
/**
* Estados de fraccionamiento
*/
export declare const FRACCIONAMIENTO_STATUS: {
readonly ACTIVE: "activo";
readonly PAUSED: "pausado";
readonly COMPLETED: "completado";
readonly CANCELLED: "cancelado";
};
export type FraccionamientoStatus = typeof FRACCIONAMIENTO_STATUS[keyof typeof FRACCIONAMIENTO_STATUS];
/**
* Estados de lote
*/
export declare const LOT_STATUS: {
readonly AVAILABLE: "disponible";
readonly RESERVED: "apartado";
readonly SOLD: "vendido";
readonly IN_CONSTRUCTION: "en_construccion";
readonly DELIVERED: "entregado";
readonly WARRANTY: "en_garantia";
};
export type LotStatus = typeof LOT_STATUS[keyof typeof LOT_STATUS];
/**
* Tipos de concepto de obra
*/
export declare const CONCEPT_TYPE: {
readonly MATERIAL: "material";
readonly LABOR: "mano_obra";
readonly EQUIPMENT: "equipo";
readonly SUBCONTRACT: "subcontrato";
readonly INDIRECT: "indirecto";
readonly OVERHEAD: "overhead";
readonly UTILITY: "utilidad";
};
export type ConceptType = typeof CONCEPT_TYPE[keyof typeof CONCEPT_TYPE];
/**
* Estados de presupuesto
*/
export declare const BUDGET_STATUS: {
readonly DRAFT: "borrador";
readonly SUBMITTED: "enviado";
readonly APPROVED: "aprobado";
readonly CONTRACTED: "contratado";
readonly CLOSED: "cerrado";
};
export type BudgetStatus = typeof BUDGET_STATUS[keyof typeof BUDGET_STATUS];
/**
* Estados de orden de compra
*/
export declare const PURCHASE_ORDER_STATUS: {
readonly DRAFT: "borrador";
readonly SUBMITTED: "enviado";
readonly APPROVED: "aprobado";
readonly CONFIRMED: "confirmado";
readonly PARTIAL: "parcial";
readonly RECEIVED: "recibido";
readonly CANCELLED: "cancelado";
};
export type PurchaseOrderStatus = typeof PURCHASE_ORDER_STATUS[keyof typeof PURCHASE_ORDER_STATUS];
/**
* Estados de requisicion
*/
export declare const REQUISITION_STATUS: {
readonly DRAFT: "borrador";
readonly SUBMITTED: "enviado";
readonly APPROVED: "aprobado";
readonly REJECTED: "rechazado";
readonly ORDERED: "ordenado";
readonly CLOSED: "cerrado";
};
export type RequisitionStatus = typeof REQUISITION_STATUS[keyof typeof REQUISITION_STATUS];
/**
* Tipos de movimiento de inventario
*/
export declare const STOCK_MOVE_TYPE: {
readonly INCOMING: "entrada";
readonly OUTGOING: "salida";
readonly TRANSFER: "traspaso";
readonly ADJUSTMENT: "ajuste";
readonly RETURN: "devolucion";
readonly CONSUMPTION: "consumo";
};
export type StockMoveType = typeof STOCK_MOVE_TYPE[keyof typeof STOCK_MOVE_TYPE];
/**
* Estados de estimacion
*/
export declare const ESTIMATION_STATUS: {
readonly DRAFT: "borrador";
readonly IN_REVIEW: "en_revision";
readonly SUBMITTED: "enviado";
readonly CLIENT_REVIEW: "revision_cliente";
readonly APPROVED: "aprobado";
readonly REJECTED: "rechazado";
readonly PAID: "pagado";
readonly CANCELLED: "cancelado";
};
export type EstimationStatus = typeof ESTIMATION_STATUS[keyof typeof ESTIMATION_STATUS];
/**
* Tipos de retencion
*/
export declare const RETENTION_TYPE: {
readonly WARRANTY: "garantia";
readonly ADVANCE_AMORTIZATION: "amortizacion_anticipo";
readonly IMSS: "imss";
readonly ISR: "isr";
readonly OTHER: "otro";
};
export type RetentionType = typeof RETENTION_TYPE[keyof typeof RETENTION_TYPE];
/**
* Severidad de incidente
*/
export declare const INCIDENT_SEVERITY: {
readonly LOW: "bajo";
readonly MEDIUM: "medio";
readonly HIGH: "alto";
readonly CRITICAL: "critico";
readonly FATAL: "fatal";
};
export type IncidentSeverity = typeof INCIDENT_SEVERITY[keyof typeof INCIDENT_SEVERITY];
/**
* Tipos de incidente
*/
export declare const INCIDENT_TYPE: {
readonly ACCIDENT: "accidente";
readonly NEAR_MISS: "casi_accidente";
readonly UNSAFE_CONDITION: "condicion_insegura";
readonly UNSAFE_ACT: "acto_inseguro";
readonly FIRST_AID: "primeros_auxilios";
readonly ENVIRONMENTAL: "ambiental";
};
export type IncidentType = typeof INCIDENT_TYPE[keyof typeof INCIDENT_TYPE];
/**
* Estados de incidente
*/
export declare const INCIDENT_STATUS: {
readonly REPORTED: "reportado";
readonly UNDER_INVESTIGATION: "en_investigacion";
readonly PENDING_ACTIONS: "pendiente_acciones";
readonly ACTIONS_IN_PROGRESS: "acciones_en_progreso";
readonly CLOSED: "cerrado";
};
export type IncidentStatus = typeof INCIDENT_STATUS[keyof typeof INCIDENT_STATUS];
/**
* Tipos de capacitacion
*/
export declare const TRAINING_TYPE: {
readonly INDUCTION: "induccion";
readonly SAFETY: "seguridad";
readonly TECHNICAL: "tecnico";
readonly REGULATORY: "normativo";
readonly REFRESHER: "actualizacion";
readonly CERTIFICATION: "certificacion";
};
export type TrainingType = typeof TRAINING_TYPE[keyof typeof TRAINING_TYPE];
/**
* Tipos de permiso de trabajo
*/
export declare const WORK_PERMIT_TYPE: {
readonly HOT_WORK: "trabajo_caliente";
readonly CONFINED_SPACE: "espacio_confinado";
readonly HEIGHT_WORK: "trabajo_altura";
readonly ELECTRICAL: "electrico";
readonly EXCAVATION: "excavacion";
readonly LIFTING: "izaje";
};
export type WorkPermitType = typeof WORK_PERMIT_TYPE[keyof typeof WORK_PERMIT_TYPE];
/**
* Tipos de empleado
*/
export declare const EMPLOYEE_TYPE: {
readonly PERMANENT: "planta";
readonly TEMPORARY: "temporal";
readonly CONTRACTOR: "contratista";
readonly INTERN: "practicante";
};
export type EmployeeType = typeof EMPLOYEE_TYPE[keyof typeof EMPLOYEE_TYPE];
/**
* Tipos de asistencia
*/
export declare const ATTENDANCE_TYPE: {
readonly CHECK_IN: "entrada";
readonly CHECK_OUT: "salida";
readonly BREAK_START: "inicio_descanso";
readonly BREAK_END: "fin_descanso";
};
export type AttendanceType = typeof ATTENDANCE_TYPE[keyof typeof ATTENDANCE_TYPE];
/**
* Metodos de validacion de asistencia
*/
export declare const ATTENDANCE_VALIDATION: {
readonly GPS: "gps";
readonly BIOMETRIC: "biometrico";
readonly QR: "qr";
readonly MANUAL: "manual";
readonly NFC: "nfc";
};
export type AttendanceValidation = typeof ATTENDANCE_VALIDATION[keyof typeof ATTENDANCE_VALIDATION];
/**
* Estados de asignacion INFONAVIT
*/
export declare const INFONAVIT_ASSIGNMENT_STATUS: {
readonly AVAILABLE: "disponible";
readonly IN_PROCESS: "en_proceso";
readonly ASSIGNED: "asignado";
readonly DOCUMENTED: "documentado";
readonly REGISTERED: "registrado";
readonly DELIVERED: "entregado";
};
export type InfonavitAssignmentStatus = typeof INFONAVIT_ASSIGNMENT_STATUS[keyof typeof INFONAVIT_ASSIGNMENT_STATUS];
/**
* Programas INFONAVIT
*/
export declare const INFONAVIT_PROGRAM: {
readonly TRADICIONAL: "tradicional";
readonly COFINAVIT: "cofinavit";
readonly APOYO_INFONAVIT: "apoyo_infonavit";
readonly UNAMOS_CREDITOS: "unamos_creditos";
readonly MEJORAVIT: "mejoravit";
};
export type InfonavitProgram = typeof INFONAVIT_PROGRAM[keyof typeof INFONAVIT_PROGRAM];
/**
* Estados de ticket postventa
*/
export declare const TICKET_STATUS: {
readonly OPEN: "abierto";
readonly IN_PROGRESS: "en_proceso";
readonly PENDING_CUSTOMER: "pendiente_cliente";
readonly PENDING_PARTS: "pendiente_refacciones";
readonly RESOLVED: "resuelto";
readonly CLOSED: "cerrado";
};
export type TicketStatus = typeof TICKET_STATUS[keyof typeof TICKET_STATUS];
/**
* Prioridad de ticket
*/
export declare const TICKET_PRIORITY: {
readonly LOW: "baja";
readonly MEDIUM: "media";
readonly HIGH: "alta";
readonly URGENT: "urgente";
};
export type TicketPriority = typeof TICKET_PRIORITY[keyof typeof TICKET_PRIORITY];
/**
* Estados de documento
*/
export declare const DOCUMENT_STATUS: {
readonly DRAFT: "borrador";
readonly PENDING_REVIEW: "pendiente_revision";
readonly APPROVED: "aprobado";
readonly REJECTED: "rechazado";
readonly OBSOLETE: "obsoleto";
};
export type DocumentStatus = typeof DOCUMENT_STATUS[keyof typeof DOCUMENT_STATUS];
/**
* Tipos de documento
*/
export declare const DOCUMENT_TYPE: {
readonly PLAN: "plano";
readonly CONTRACT: "contrato";
readonly PERMIT: "permiso";
readonly CERTIFICATE: "certificado";
readonly REPORT: "reporte";
readonly PHOTO: "fotografia";
readonly OTHER: "otro";
};
export type DocumentType = typeof DOCUMENT_TYPE[keyof typeof DOCUMENT_TYPE];
/**
* Acciones de workflow
*/
export declare const WORKFLOW_ACTION: {
readonly SUBMIT: "submit";
readonly APPROVE: "approve";
readonly REJECT: "reject";
readonly RETURN: "return";
readonly CANCEL: "cancel";
readonly REOPEN: "reopen";
};
export type WorkflowAction = typeof WORKFLOW_ACTION[keyof typeof WORKFLOW_ACTION];
/**
* Tipos de accion de auditoria
*/
export declare const AUDIT_ACTION: {
readonly CREATE: "create";
readonly UPDATE: "update";
readonly DELETE: "delete";
readonly VIEW: "view";
readonly EXPORT: "export";
readonly LOGIN: "login";
readonly LOGOUT: "logout";
};
export type AuditAction = typeof AUDIT_ACTION[keyof typeof AUDIT_ACTION];
//# sourceMappingURL=enums.constants.d.ts.map