package cn.iocoder.yudao.module.order.vo.orderSpecialNeed;

import lombok.*;
import java.util.*;
import io.swagger.annotations.*;
import com.alibaba.excel.annotation.ExcelProperty;
import cn.iocoder.yudao.framework.excel.annotations.DictFormat;
import cn.iocoder.yudao.framework.excel.convert.DictConvert;
import org.springframework.format.annotation.DateTimeFormat;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

/**
* 特需 Response VO
* @author 系统管理员
*/
@Data
@ApiModel("管理后台 - 特需 Response VO")
public class OrderSpecialNeedBackVO {

    @ExcelProperty("主键ID")
    @ApiModelProperty(value = "主键ID", required = true)
    private Long id;

    @ExcelProperty("创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @ApiModelProperty(value = "创建时间", required = true)
    private Date createTime;

    @ExcelProperty("订单id")
    @ApiModelProperty(value = "订单id")
    private Long orderId;

    @ExcelProperty("特需要求")
    @ApiModelProperty(value = "特需要求")
    private String advanceType;

    @ExcelProperty("垫付的内陆运输费用")
    @ApiModelProperty(value = "垫付的内陆运输费用")
    private java.math.BigDecimal transFee;

    @ExcelProperty(value = "运输费币种", converter = DictConvert.class)
    @ApiModelProperty(value = "运输费币种")
    private Integer transCurrency;

    @ExcelProperty(value = "付款类型", converter = DictConvert.class)
    @DictFormat("pay_type") // TODO 代码优化：建议设置到对应的 XXXDictTypeConstants 枚举类中
    @ApiModelProperty(value = "付款类型")
    private Integer payType;

    @ExcelProperty("特需备注")
    @ApiModelProperty(value = "特需备注")
    private String todoDetail;

    @ExcelProperty("特需申请人")
    @ApiModelProperty(value = "特需申请人")
    private Integer advanceWho;

}
