Spaces:
Sleeping
Sleeping
| import { | |
| Entity, | |
| PrimaryGeneratedColumn, | |
| Column, | |
| CreateDateColumn, | |
| ManyToOne, | |
| JoinColumn, | |
| } from 'typeorm'; | |
| import { User } from '../../auth/entities/user.entity'; | |
| export enum BackupType { | |
| MANUAL = 'manual', | |
| SCHEDULED = 'scheduled', | |
| } | |
| export enum BackupStatus { | |
| PENDING = 'pending', | |
| IN_PROGRESS = 'in_progress', | |
| COMPLETED = 'completed', | |
| FAILED = 'failed', | |
| } | |
| ('backup_records') | |
| export class BackupRecord { | |
| ({ type: 'bigint', unsigned: true }) | |
| id: number; | |
| ({ name: 'file_name', type: 'varchar', length: 255 }) | |
| fileName: string; | |
| ({ name: 'file_size_bytes', type: 'bigint', unsigned: true, default: 0 }) | |
| fileSizeBytes: number; | |
| ({ | |
| type: 'enum', | |
| enum: BackupType, | |
| default: BackupType.MANUAL, | |
| }) | |
| type: BackupType; | |
| ({ | |
| type: 'enum', | |
| enum: BackupStatus, | |
| default: BackupStatus.PENDING, | |
| }) | |
| status: BackupStatus; | |
| ({ name: 'created_by', type: 'bigint', unsigned: true, nullable: true }) | |
| createdBy: number; | |
| ({ name: 'created_at' }) | |
| createdAt: Date; | |
| ({ name: 'completed_at', type: 'timestamp', nullable: true }) | |
| completedAt: Date; | |
| (() => User) | |
| ({ name: 'created_by' }) | |
| creator: User; | |
| } | |