package jnpf.dmsEntity.storage.form;
|
|
import com.fasterxml.jackson.annotation.JsonAlias;
|
import jakarta.validation.constraints.Min;
|
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.Pattern;
|
import jakarta.validation.constraints.Size;
|
import lombok.Data;
|
|
import java.time.LocalDate;
|
import java.util.Collections;
|
import java.util.LinkedHashMap;
|
import java.util.Map;
|
import java.util.UUID;
|
|
@Data
|
public class DmsFileRevisionRegisterForm {
|
@NotNull
|
private UUID documentId;
|
@NotNull
|
private UUID baseFileVersionId;
|
@NotNull
|
private UUID fileVersionId;
|
@NotNull
|
private UUID fileObjectId;
|
@NotBlank
|
@Size(max = 50)
|
private String versionLabel;
|
@NotBlank
|
@Size(max = 300)
|
private String fileName;
|
@Size(max = 200)
|
private String mimeType;
|
@NotNull
|
@Min(0)
|
private Long sizeBytes;
|
@NotBlank
|
@Pattern(regexp = "^[0-9A-Fa-f]{64}$")
|
private String checksumSha256;
|
@NotBlank
|
@Size(max = 100)
|
private String preparedBy;
|
/** 登记时保存的版本扩展属性;人员姓名为历史显示快照。 */
|
private com.fasterxml.jackson.databind.JsonNode extendedProperties;
|
@NotNull
|
private LocalDate preparedOn;
|
/** 是否受控:yes=是,no=否;审批登记由主文件/记录的可信来源赋值。 */
|
@JsonAlias("shifou_shoukong")
|
@Pattern(regexp = "^(yes|no)$")
|
private String shifouShoukong;
|
@NotBlank
|
@Size(max = 1000)
|
private String revisionReason;
|
@NotBlank
|
@Size(max = 100)
|
private String storagePlatform;
|
@NotBlank
|
@Size(max = 255)
|
private String bucketName;
|
@Size(max = 500)
|
private String basePath;
|
@NotBlank
|
@Size(max = 1000)
|
private String objectPath;
|
@NotBlank
|
@Size(max = 500)
|
private String objectName;
|
@NotBlank
|
@Size(max = 120)
|
private String sourceId;
|
private Map<String, Object> auditSignParameters = Collections.emptyMap();
|
|
public Map<String, Object> getAuditSignParameters() {
|
return auditSignParameters;
|
}
|
|
public void setAuditSignParameters(Map<String, Object> auditSignParameters) {
|
this.auditSignParameters = auditSignParameters == null || auditSignParameters.isEmpty()
|
? Collections.emptyMap()
|
: Collections.unmodifiableMap(new LinkedHashMap<>(auditSignParameters));
|
}
|
}
|