package cn.iocoder.yudao.module.aftersales.controller.admin.compensation.vo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import lombok.Data; import java.math.BigDecimal; /** * 售后赔付/服务补偿单 保存 Request VO */ @Schema(description = "售后赔付/服务补偿单 - 保存 Request VO") @Data public class AfterSaleCompensationSaveReqVO { @Schema(description = "赔付单编号", example = "1") private Long id; @Schema(description = "赔付类型: 1-故障赔付 2-服务补偿", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "赔付类型不能为空") private Integer compensationType; @Schema(description = "关联售后工单编号", example = "1") private Long ticketId; @Schema(description = "客户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") @NotNull(message = "客户不能为空") private Long customerId; @Schema(description = "关联销售订单编号", example = "1") private Long saleOrderId; @Schema(description = "赔付金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000.00") @NotNull(message = "赔付金额不能为空") private BigDecimal amount; @Schema(description = "赔付对象", example = "张三") private String payee; @Schema(description = "赔付原因", requiredMode = Schema.RequiredMode.REQUIRED, example = "产品故障导致损失") @NotEmpty(message = "赔付原因不能为空") private String reason; @Schema(description = "备注") private String remark; }