package com.yc.ship.module.otc.api.store.dto;


import com.yc.ship.module.otc.enums.TradeModeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

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

@Schema(description = "RPC 服务 - 门店交易信息Request DTO")
@Data
public class StoreReqDTO implements Serializable {

    @Schema(description = "门店ID", example = "")
    @NotNull(message = "门店id不能为空")
    private Long storeId;

    @Schema(description = "账户操作类型 1.余额，2.授信充正，3.授信提额,4平台授信交易", example = "")
    private Integer operateType;

    @Schema(description = "交易类型 0.不变 1.增加、2.减少、3.回滚", example = "")
    @NotNull(message = "操作类型不能为空")
    private Integer operateMode;

    @Schema(description = "交易金额", example = "")
    @NotNull(message = "交易金额不能为空")
    private BigDecimal amount;

    @Schema(description = "用户ID", example = "")
    private Long userId;

    @Schema(description = "订单ID", example = "")
    @NotNull(message = "订单ID不能为空")
    private Long orderId;

    @Schema(description = "退单ID", example = "")
    private Long refundId;

    private TradeModeEnum tradeModeEnum;

    private Long logId;

}
