Sprint 0: Updated inventories (MASTER/BACKEND/DATABASE) with verified baseline Sprint 1: Fixed 8 P0 blockers - CFDI entities (schema cfdi→fiscal), auth base DDL, billing duplication (→operations), 5 project entities, PaymentInvoiceAllocation, core.companies DDL, recreate-database.sh array Sprint 2: 4 new auth entities, session/role/permission DDL reconciliation, CFDI PAC+StampQueue, partner address+contact alignment Sprint 3: CFDI service+controller+routes, mobile service+controller+routes, inventory extended DDL (7 tables) Sprint 4: timestamp→timestamptz (40 files), field divergences, token/roles/permissions service alignment with new DDL-aligned entities Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
29 lines
1009 B
TypeScript
29 lines
1009 B
TypeScript
/**
|
|
* Cancellation Reason Enum
|
|
* Motivos de cancelación según catálogo SAT
|
|
*/
|
|
|
|
export enum CancellationReason {
|
|
/** 01 - Comprobante emitido con errores con relación */
|
|
ERROR_WITH_RELATION = '01',
|
|
|
|
/** 02 - Comprobante emitido con errores sin relación */
|
|
ERROR_WITHOUT_RELATION = '02',
|
|
|
|
/** 03 - No se llevó a cabo la operación */
|
|
OPERATION_NOT_PERFORMED = '03',
|
|
|
|
/** 04 - Operación nominativa relacionada en la factura global */
|
|
NOMINATIVE_OPERATION = '04',
|
|
}
|
|
|
|
/**
|
|
* Descripciones de los motivos de cancelación
|
|
*/
|
|
export const CancellationReasonDescriptions: Record<CancellationReason, string> = {
|
|
[CancellationReason.ERROR_WITH_RELATION]: 'Comprobante emitido con errores con relación',
|
|
[CancellationReason.ERROR_WITHOUT_RELATION]: 'Comprobante emitido con errores sin relación',
|
|
[CancellationReason.OPERATION_NOT_PERFORMED]: 'No se llevó a cabo la operación',
|
|
[CancellationReason.NOMINATIVE_OPERATION]: 'Operación nominativa relacionada en la factura global',
|
|
};
|