package cn.newfeifan.mall.module.distri.controller.admin.consumptiontransferlog.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import javax.validation.constraints.*;

@Schema(description = "管理后台 - 消费分转让记录新增/修改 Request VO")
@Data
public class ConsumptionTransferLogSaveReqVO {

    @Schema(description = "日志编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "5320")
    private Long id;

    @Schema(description = "转让用户ID", example = "7655")
    private Long transferUserId;

    @Schema(description = "转让人用户名", example = "王五")
    private String transferUserName;

    @Schema(description = "接收用户ID", example = "26720")
    private Long recipientUserId;

    @Schema(description = "接收人用户名", example = "张三")
    private String recipientUserName;

    @Schema(description = "转让的消费分", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "转让的消费分不能为空")
    private Long consumptionPoints;

    @Schema(description = "变动后消费分（余额）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "变动后消费分（余额）不能为空")
    private Long afterTransferConsumptionPoints;

    @Schema(description = "接收的消费分", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "接收的消费分不能为空")
    private Long recipientPoints;

    @Schema(description = "变动后消费分（余额）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "变动后消费分（余额）不能为空")
    private Long afterRecipientConsumptionPoints;

}