package jnpf.dmsEntity.storage.form;
|
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
import jakarta.validation.Valid;
|
import jakarta.validation.constraints.AssertTrue;
|
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotNull;
|
import lombok.Data;
|
|
import java.util.Date;
|
import java.util.List;
|
import java.util.UUID;
|
|
@Data
|
public class DmsFileExtendValidityForm {
|
private String sourceId;
|
private String taskId;
|
|
@Valid
|
@NotEmpty(message = "文件请求列表不能为空")
|
private List<@NotNull(message = "文件请求不能为空") FileRequest> files;
|
|
@JsonIgnore
|
@AssertTrue(message = "sourceId和taskId必须同时提供或同时为空")
|
public boolean isWorkflowPairValid() {
|
return isBlank(sourceId) == isBlank(taskId);
|
}
|
|
private boolean isBlank(String value) {
|
return value == null || value.trim().isEmpty();
|
}
|
|
@Data
|
public static class FileRequest {
|
@NotNull(message = "文件中心版本ID不能为空")
|
private UUID fileVersionId;
|
|
@NotNull(message = "有效期至不能为空")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai",
|
lenient = com.fasterxml.jackson.annotation.OptBoolean.FALSE)
|
private Date effectiveTo;
|
}
|
}
|