package com.yiqi.order.domain.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;

@Data
public class OrderClothAppPayDTO {

    @ApiModelProperty("客户ID")
    private Long appUserId;

    @NotEmpty(message = "请先设置支付方式")
    @ApiModelProperty("支付方式（0=微信，1=支付宝，3=余额 8=组合支付）")
    private String payType;

    @ApiModelProperty("订单编号")
    @NotNull(message = "订单编号必传")
    private String orderNo;

    @ApiModelProperty("配送金额")
    private BigDecimal deliveryAmount;

    @ApiModelProperty("配送费抵扣金额")
    private BigDecimal deliveryDeductAmount;


    @ApiModelProperty("订单金额")
    @NotNull(message = "订单金额必传")
    private BigDecimal payAmount;

    /**
     * 组合支付必传
     */
    @ApiModelProperty("会员支付订单金额")
    private BigDecimal memberPayAmount;

    /**
     * 组合支付其他付款方式
     */
    @ApiModelProperty("组合支付其他付款方式 0=微信，1=支付宝")
    private String otherPayType;

    @ApiModelProperty("优惠券优惠金额")
    private BigDecimal couponDeductAmount;

    @ApiModelProperty("优惠券ID")
    private Long couponId;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("折扣活动ID")
    private Long activityId;

    @ApiModelProperty("活动折扣金额")
    private BigDecimal activityDiscountAmount;

    @ApiModelProperty("订单使用优惠券")
    private List<OrderCouponDTO> orderCouponDTOS;

    @ApiModelProperty("送衣方式（0=到店，1=上门）")
    private String sendClothWay;

    @ApiModelProperty("付款平台(APP=APP、WEAPP=小程序)")
    private String platform;
}
