feat(documents): add ScriptType enum and script_type column
- ScriptType enum: UNKNOWN, TYPEWRITER, HANDWRITING_LATIN, HANDWRITING_KURRENT - V24 migration adds script_type VARCHAR(30) NOT NULL DEFAULT 'UNKNOWN' - Document entity: scriptType field with @Builder.Default UNKNOWN - DocumentUpdateDTO: optional scriptType field - DocumentService: wires scriptType through update method Refs #226 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -5,6 +5,7 @@ import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import lombok.Data;
|
||||
import org.raddatz.familienarchiv.model.ScriptType;
|
||||
|
||||
@Data
|
||||
public class DocumentUpdateDTO {
|
||||
@@ -18,4 +19,5 @@ public class DocumentUpdateDTO {
|
||||
private List<UUID> receiverIds;
|
||||
private String tags;
|
||||
private Boolean metadataComplete;
|
||||
private ScriptType scriptType;
|
||||
}
|
||||
|
||||
@@ -91,6 +91,12 @@ public class Document {
|
||||
@Builder.Default
|
||||
private boolean metadataComplete = false;
|
||||
|
||||
@Enumerated(EnumType.STRING)
|
||||
@Column(name = "script_type", nullable = false)
|
||||
@Schema(requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@Builder.Default
|
||||
private ScriptType scriptType = ScriptType.UNKNOWN;
|
||||
|
||||
@ManyToMany(fetch = FetchType.EAGER)
|
||||
@JoinTable(name = "document_receivers", joinColumns = @JoinColumn(name = "document_id"), inverseJoinColumns = @JoinColumn(name = "person_id"))
|
||||
@Builder.Default
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
package org.raddatz.familienarchiv.model;
|
||||
|
||||
public enum ScriptType {
|
||||
UNKNOWN,
|
||||
TYPEWRITER,
|
||||
HANDWRITING_LATIN,
|
||||
HANDWRITING_KURRENT
|
||||
}
|
||||
@@ -222,6 +222,10 @@ public class DocumentService {
|
||||
doc.setMetadataComplete(dto.getMetadataComplete());
|
||||
}
|
||||
|
||||
if (dto.getScriptType() != null) {
|
||||
doc.setScriptType(dto.getScriptType());
|
||||
}
|
||||
|
||||
// 4. Datei austauschen (nur wenn eine neue ausgewählt wurde)
|
||||
if (newFile != null && !newFile.isEmpty()) {
|
||||
FileService.UploadResult upload = fileService.uploadFile(newFile, newFile.getOriginalFilename());
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
ALTER TABLE documents ADD COLUMN script_type VARCHAR(30) NOT NULL DEFAULT 'UNKNOWN';
|
||||
Reference in New Issue
Block a user