package com.sckw.order.model.vo.res;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;

/**
 * @desc: 运需详情响应
 * @author: yzc
 * @date: 2023-07-26 9:48
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class TransportDemandDetailRes implements Serializable {

    @Serial
    private static final long serialVersionUID = 5175877052604993108L;

    private Long id;

    /**
     * 商品名称
     */
    private String name;

    /**
     * 商品分类
     */
    private String goodsType;

    /**
     * 商品类型集合
     */
    private List<String> goodsTypes;

    /**
     * 商品分类Label
     */
    private String goodsTypeLabel;

    /**
     * 商品类型labs
     */
    private String goodsTypeLabels;

    /**
     * 商品规格
     */
    private String spec;

    /**
     * 交易方式(预付款、货到付款、线下付款）
     */
    private String trading;

    /**
     * 交易方式Label
     */
    private String tradingLabel;

    /**
     * 运需单价
     */
    private String price;

    /**
     * 运输总量
     */
    private String amount;

    /**
     * 截止时间(yyyy-MM-dd)
     */
    @JsonFormat(pattern="yyyy-MM-dd", timezone = "GMT+8")
    private LocalDate deadline;

    /**
     * 联系人姓名
     */
    private String contacts;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 装货区域code
     */
    private Integer loadAreaCode;

    /**
     * 装货区域名称
     */
    private String loadAreaName;

    /**
     * 装货详细地址
     */
    private String loadDetailAddress;

    /**
     * 卸货区域code
     */
    private Integer unloadAreaCode;

    /**
     * 卸货区域名称
     */
    private String unloadAreaName;

    /**
     * 卸货详细地址
     */
    private String unloadDetailAddress;

    /**
     * 备注
     */
    private String remark;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 状态label
     */
    private String statusLabel;

    /**
     * 创建人
     */
    private Long createBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 更新人
     */
    private Long updateBy;


    /**
     * 更新时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
}
