package com.zbkj.common.request;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 添加购物车参数Request对象

 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="OrderRefundApplyRequest对象", description="订单申请退款")
public class OrderRefundApplyRequest {
    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "订单id")
    private Integer id;

    @ApiModelProperty(value = "待退款订单", required = true)
    @NotNull(message = "待退款订单 不能为空")
    private String orderNo;

    @ApiModelProperty(value = "退款原因", required = true)
    @NotNull(message = "退款原因必须填写")
    @Length(max = 255, message = "退款原因不能超过255个字符")
    private String returnReason;

    @ApiModelProperty(value = "退款凭证图片(多个图片请用,(英文逗号)隔开)")
    @JsonProperty("return_image")
    private String returnImage;

    @ApiModelProperty(value = "联系人电话", required = true)
    @NotNull(message = "联系人电话 不能为空")
    private String contactPhone;

    @ApiModelProperty(value = "退款商品", required = true)
    private List<OrderRefundInfoRequest> returnInfo;

}
