251223:1649 On going update to 1.7.0: Refoctory drawing Module & document number Module
Spec Validation / validate-markdown (push) Has been cancelled
Spec Validation / validate-diagrams (push) Has been cancelled
Spec Validation / check-todos (push) Has been cancelled

This commit is contained in:
admin
2025-12-23 16:49:16 +07:00
parent 0d6432ab83
commit 7db6a003db
81 changed files with 4703 additions and 1449 deletions
@@ -9,12 +9,17 @@ import {
@Entity('document_number_audit')
@Index(['createdAt'])
@Index(['userId'])
@Index(['documentId'])
@Index(['status'])
@Index(['operation'])
@Index(['generatedNumber'])
@Index(['reservationToken'])
export class DocumentNumberAudit {
@PrimaryGeneratedColumn()
id!: number;
@Column({ name: 'document_id' })
documentId!: number;
@Column({ name: 'document_id', nullable: true })
documentId?: number;
@Column({ name: 'generated_number', length: 100 })
generatedNumber!: string;
@@ -28,16 +33,49 @@ export class DocumentNumberAudit {
@Column({
name: 'operation',
type: 'enum',
enum: ['RESERVE', 'CONFIRM', 'MANUAL_OVERRIDE', 'VOID_REPLACE', 'CANCEL'],
enum: [
'RESERVE',
'CONFIRM',
'CANCEL',
'MANUAL_OVERRIDE',
'VOID',
'GENERATE',
],
default: 'CONFIRM',
})
operation!: string;
@Column({
name: 'status',
type: 'enum',
enum: ['RESERVED', 'CONFIRMED', 'CANCELLED', 'VOID', 'MANUAL'],
nullable: true,
})
status?: string;
@Column({ name: 'reservation_token', length: 36, nullable: true })
reservationToken?: string;
@Column({ name: 'idempotency_key', length: 36, nullable: true })
idempotencyKey?: string;
@Column({ name: 'originator_organization_id', nullable: true })
originatorOrganizationId?: number;
@Column({ name: 'recipient_organization_id', nullable: true })
recipientOrganizationId?: number;
@Column({ name: 'old_value', type: 'text', nullable: true })
oldValue?: string;
@Column({ name: 'new_value', type: 'text', nullable: true })
newValue?: string;
@Column({ name: 'metadata', type: 'json', nullable: true })
metadata?: any;
@Column({ name: 'user_id' })
userId!: number;
@Column({ name: 'user_id', nullable: true })
userId?: number;
@Column({ name: 'ip_address', length: 45, nullable: true })
ipAddress?: string;
@@ -45,6 +83,9 @@ export class DocumentNumberAudit {
@Column({ name: 'user_agent', type: 'text', nullable: true })
userAgent?: string;
@Column({ name: 'is_success', default: true })
isSuccess!: boolean;
@Column({ name: 'retry_count', default: 0 })
retryCount!: number;