package org.springblade.openapi.track.pojo.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.springblade.core.tool.utils.DateUtil;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author bfhuange
 * @since 2024/12/16
 */
@Data
public class Api4TrackWaybillVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     *  运单id
     */
    private String id;
    /**
     *  收货日期
     */
    @DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
    @JsonFormat(pattern = DateUtil.PATTERN_DATE)
    @JsonProperty("shouHuoRiQi")
    private Date enterDate;
    /**
     *  车牌号
     */
    @JsonProperty("chePaiHao")
    private String plateNo;
    /**
     *  钢厂简称
     */
    @JsonProperty("gangChangJianCheng")
    private String customerAbbreviation;
    /**
     *  钢厂合同编号
     */
    @JsonIgnore
    private String contractGcCode;

    //===========================设置默认值的参数==========================
    /**
     *  托运人
     */
    @JsonProperty("tuoYunRen")
    private String shipper = "托运人";
    /**
     *  收货人
     */
    @JsonProperty("shouHuoRen")
    private String consignee = "收货人";
    /**
     *  收货地址
     */
    @JsonProperty("shouHuoDiZhi")
    private String address = "收货地址";
    /**
     *  投送人
     */
    @JsonProperty("touSongRen")
    private String delivery = "投送人";
    /**
     *  货物名称
     */
    @JsonProperty("huoWuMingCheng")
    private String goodsName = "货物名称";
    /**
     *  重量
     */
    @JsonProperty("zhongLiang")
    private BigDecimal weight = BigDecimal.ZERO;
    /**
     *  事业部
     */
    @JsonProperty("shiYeBu")
    private String division = "事业部";
}
