package com.battery.business.report; import java.util.List; import java.util.Map; import jakarta.validation.Valid; import jakarta.validation.constraints.*; public record SpliceReportRequest(@NotBlank @Size(max=100) String name, @Size(max=2000) String description, @NotNull @Size(min=2) List<@NotNull @Valid Selection> selections, @NotNull Map settings) { public record Selection(@NotNull @Positive Long testId, @NotNull @Positive Long testBatteryId) {} public record Edit(@Positive int baseVersionNo, @NotBlank @Size(max=100) String name, String description, @Size(min=2) List<@NotNull @Valid Selection> selections, @NotNull Map settings, @NotBlank @Size(max=500) String changeSummary) {} }