fix(entity): @Column name explicite sur BackupConfig/BackupRecord

Sans @Column(name=...), Hibernate génère des noms camelCase (includedatabase)
alors que V16 a créé les colonnes en snake_case (include_database).
Alignement explicite avec les conventions des autres entités.
This commit is contained in:
dahoud
2026-04-05 11:51:41 +00:00
parent f22b3472a8
commit 8352ea1669
2 changed files with 20 additions and 18 deletions

View File

@@ -16,37 +16,37 @@ import lombok.NoArgsConstructor;
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
public class BackupConfig extends BaseEntity { public class BackupConfig extends BaseEntity {
@Column(nullable = false) @Column(name = "auto_backup_enabled", nullable = false)
@Builder.Default @Builder.Default
private Boolean autoBackupEnabled = true; private Boolean autoBackupEnabled = true;
/** HOURLY, DAILY, WEEKLY */ /** HOURLY, DAILY, WEEKLY */
@Column(nullable = false, length = 20) @Column(name = "frequency", nullable = false, length = 20)
@Builder.Default @Builder.Default
private String frequency = "DAILY"; private String frequency = "DAILY";
@Column(nullable = false) @Column(name = "retention_days", nullable = false)
@Builder.Default @Builder.Default
private Integer retentionDays = 30; private Integer retentionDays = 30;
/** HH:mm format, e.g. "02:00" */ /** HH:mm format, e.g. "02:00" */
@Column(nullable = false, length = 10) @Column(name = "backup_time", nullable = false, length = 10)
@Builder.Default @Builder.Default
private String backupTime = "02:00"; private String backupTime = "02:00";
@Column(nullable = false) @Column(name = "include_database", nullable = false)
@Builder.Default @Builder.Default
private Boolean includeDatabase = true; private Boolean includeDatabase = true;
@Column(nullable = false) @Column(name = "include_files", nullable = false)
@Builder.Default @Builder.Default
private Boolean includeFiles = false; private Boolean includeFiles = false;
@Column(nullable = false) @Column(name = "include_configuration", nullable = false)
@Builder.Default @Builder.Default
private Boolean includeConfiguration = true; private Boolean includeConfiguration = true;
/** Absolute path where backup files are stored */ /** Absolute path where backup files are stored */
@Column(length = 500) @Column(name = "backup_directory", length = 500)
private String backupDirectory; private String backupDirectory;
} }

View File

@@ -18,42 +18,44 @@ import java.time.LocalDateTime;
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
public class BackupRecord extends BaseEntity { public class BackupRecord extends BaseEntity {
@Column(nullable = false, length = 200) @Column(name = "name", nullable = false, length = 200)
private String name; private String name;
@Column(length = 500) @Column(name = "description", length = 500)
private String description; private String description;
/** AUTO, MANUAL, RESTORE_POINT */ /** AUTO, MANUAL, RESTORE_POINT */
@Column(nullable = false, length = 50) @Column(name = "type", nullable = false, length = 50)
private String type; private String type;
@Column(name = "size_bytes")
private Long sizeBytes; private Long sizeBytes;
/** IN_PROGRESS, COMPLETED, FAILED */ /** IN_PROGRESS, COMPLETED, FAILED */
@Column(nullable = false, length = 50) @Column(name = "status", nullable = false, length = 50)
private String status; private String status;
@Column(name = "completed_at")
private LocalDateTime completedAt; private LocalDateTime completedAt;
@Column(length = 200) @Column(name = "created_by", length = 200)
private String createdBy; private String createdBy;
@Column(nullable = false) @Column(name = "includes_database", nullable = false)
@Builder.Default @Builder.Default
private Boolean includesDatabase = true; private Boolean includesDatabase = true;
@Column(nullable = false) @Column(name = "includes_files", nullable = false)
@Builder.Default @Builder.Default
private Boolean includesFiles = false; private Boolean includesFiles = false;
@Column(nullable = false) @Column(name = "includes_configuration", nullable = false)
@Builder.Default @Builder.Default
private Boolean includesConfiguration = true; private Boolean includesConfiguration = true;
@Column(length = 500) @Column(name = "file_path", length = 500)
private String filePath; private String filePath;
@Column(columnDefinition = "TEXT") @Column(name = "error_message", columnDefinition = "TEXT")
private String errorMessage; private String errorMessage;
} }