package com.talentcard.server.request; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.Size; @Schema(name = "预约申请处理请求", description = "后台处理预约申请状态") public record ServiceAppointmentStatusUpdateRequest( @Schema(description = "处理状态:待处理、处理中、已处理、已驳回、已取消、待审核、审核通过、审核不通过;也支持通过/拒绝别名", example = "已处理", requiredMode = Schema.RequiredMode.REQUIRED) @NotBlank(message = "处理状态不能为空") @Size(max = 32, message = "处理状态长度不能超过32") String status, @Schema(description = "处理人名称;未传默认管理员", example = "管理员") @Size(max = 64, message = "处理人名称长度不能超过64") String handlerName, @Schema(description = "处理/审核备注;拒绝或驳回时必填", example = "资料不完整,请补充后重新提交") @Size(max = 500, message = "处理备注长度不能超过500") String remark, @Schema(description = "驳回原因;兼容字段,未传remark时使用", example = "资料不完整") @Size(max = 500, message = "驳回原因长度不能超过500") String rejectReason ) { }