package cn.iocoder.yudao.module.pay.controller.admin.wxorder.vo;

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

@Schema(description = "管理后台 - 微信订单新增/修改 Request VO")
@Data
public class WxOrderSaveReqVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "12136")
    private Long id;

    @Schema(description = "渠道编号", example = "14125")
    private Long channelId;

    @Schema(description = "渠道编码")
    private String channelCode;

    @Schema(description = "微信用户ID", example = "26852")
    private String openId;

    @Schema(description = "充值金额，单位：分", requiredMode = Schema.RequiredMode.REQUIRED, example = "30914")
    @NotNull(message = "充值金额，单位：分不能为空")
    private Integer totalPrice;

    @Schema(description = "可用于分账的金额，单位：分", example = "13002")
    private Integer profitsharingPrice;

    @Schema(description = "可用于退款金额，单位：分", example = "16832")
    private Integer refundPrice;

    @Schema(description = "商户系统内部订单号")
    private String outTradeNo;

    @Schema(description = "微信支付订单号", example = "9069")
    private String transactionId;

}