package com.zhongshu.card.client.openApi.params;

import com.github.microservice.types.payment.PaymentType;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Data
public class RefundParam {

    @Schema(description = "项目oid")
    @NotNull(message = "projectOid不能为null")
    private String projectOid;

    @Schema(description = "机构oid")
    @NotNull(message = "oid不能为null")
    private String oid;

    @Schema(description = "用户userId")
    @NotNull(message = "userId不能为null")
    private String userId;

    @Schema(description = "金额")
    private BigDecimal total;

    @Schema(description = "订单号")
    @NotNull(message = "orderNo不能为null")
    private String orderNo;

    @Schema(description = "支付方式")
    private PaymentType paymentType;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "退款单号，支付方式为银联无感支付时，必传")
    private String refundOrderNo;

    @Schema(description = "支付订单id，支付方式为银联无感支付时，必传")
    private String targetOrderId;
}
