package com.red.circle.console.app.dto.cmd.app.order;

import com.red.circle.framework.core.dto.CommonCommand;
import com.red.circle.order.inner.model.enums.inapp.PayPlatform;
import jakarta.validation.constraints.NotNull;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @author pengliang on 2020/11/30
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class OrderCompensateCmd extends CommonCommand {

  /**
   * 用户id
   */
  @NotNull(message = "用户id不可为空")
  private Long userId;

  /**
   * 订单id
   */
  @NotNull(message = "订单id不可为空")
  private String orderId;

  /**
   * 平台
   */
  @NotNull(message = "平台不可为空")
  private PayPlatform platform;

  /**
   * 来源平台.
   */
  @NotNull(message = "来源平台不可为空")
  private String sysOrigin;

  /**
   * 产品
   */
  @NotNull(message = "产品不可为空")
  private String productCode;

  /**
   * 过期时间
   */
  private LocalDateTime vipExpireTime;

}
