package cn.iocoder.yudao.module.pay.controller.admin.demo.vo.withdraw;
|
|
import cn.hutool.core.util.ObjectUtil;
|
import cn.iocoder.yudao.framework.common.validation.InEnum;
|
import cn.iocoder.yudao.module.pay.enums.demo.PayDemoWithdrawTypeEnum;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import jakarta.validation.constraints.*;
|
import lombok.Data;
|
|
@Schema(description = "管理后台 - 示例提现单创建 Request VO")
|
@Data
|
public class PayDemoWithdrawCreateReqVO {
|
|
@Schema(description = "提现标题", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿是一种菜")
|
@NotEmpty(message = "提现标题不能为空")
|
private String subject;
|
|
@Schema(description = "提现金额,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
|
@NotNull(message = "提现金额不能为空")
|
@Min(value = 1, message = "提现金额必须大于零")
|
private Integer price;
|
|
@Schema(description = "收款人账号", requiredMode= Schema.RequiredMode.REQUIRED, example = "test1")
|
@NotBlank(message = "收款人账号不能为空")
|
private String userAccount;
|
|
@Schema(description = "收款人姓名", example = "test1")
|
private String userName;
|
|
@Schema(description = "提现方式", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@NotNull(message = "提现方式不能为空")
|
@InEnum(PayDemoWithdrawTypeEnum.class)
|
private Integer type;
|
|
@AssertTrue(message = "收款人姓名")
|
public boolean isUserNameValid() {
|
// 特殊:支付宝必须填写用户名!!!
|
return ObjectUtil.notEqual(type, PayDemoWithdrawTypeEnum.ALIPAY.getType())
|
|| ObjectUtil.isNotEmpty(userName);
|
}
|
|
}
|