package com.yiqi.order.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
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.Date;
import java.util.List;

@Data
public class OrderClothDTO {

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

    @NotEmpty(message = "请先设置付款时间类型")
    @ApiModelProperty("付款时间类型（0=收衣付款,1=取衣付款）")
    private String payTimeType;

    @ApiModelProperty("支付方式（0=微信，1=支付宝，2=现金，3=余额）")
    private String payType;

    @ApiModelProperty("洗衣速度ID，默认空为普洗")
    private Long speedId;

    @ApiModelProperty("订单编号，预约单时需要")
    private String orderNo;

    @ApiModelProperty("是否预约")
    private String isAppointment;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm",timezone = "GMT+8")
    @ApiModelProperty("取衣时间")
    private Date takeClothTime;

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

    @ApiModelProperty("现金代金券抵扣金额")
    private BigDecimal cashDeductAmount;

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

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

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

    @ApiModelProperty("是否特殊")
    private String isSpecial;

    @ApiModelProperty("衣服明细")
    private List<OrderClothItemDTO> orderClothItemDTOS;

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

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