package com.prolog.rdc.tms.model.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.prolog.framework.core.annotation.Column;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;


@Data
public class BmsProportionBillStrategyDTO implements Serializable {

    @ApiModelProperty(value = "ID")
    private Long id;

    @ApiModelProperty(value = "策略名称")
    private String strategyName;

    @ApiModelProperty(value = "比例系数-列表展示用")
    private String ratioStr;

    @ApiModelProperty(value = "比例系数")
    private String ratio;

    @ApiModelProperty(value = "比例系数-分子")
    private String ratioNumerator;

    @ApiModelProperty(value = "比例系数-分母")
    private String ratioDenominator;

    @ApiModelProperty(value = "备注")
    private String memo;

    @ApiModelProperty(value = "计费规则")
    private String feeRule;

    @ApiModelProperty(value = "策略状态")
    private int status;
    private String statusName;

    @ApiModelProperty(value = "相同订单号")
    private Integer isSameBillNo;

    @ApiModelProperty(value = "相同运单号")
    private Integer isSameShipbillNo;

    @ApiModelProperty(value = "相同WMS单号")
    private Integer isSameWmsNo;

    @ApiModelProperty(value = "相同发货方")
    @Column(value = "is_same_sender")
    private Integer isSameSender;

    @ApiModelProperty(value = "相同实际启运日期")
    private Integer isStartDate;

    @ApiModelProperty(value = "相同运输车辆")
    @Column(value = "is_same_car")
    private Integer isSameCar;

    @ApiModelProperty(value = "相同运输司机")
    @Column(value = "is_same_driver")
    private Integer isSameDriver;

    @ApiModelProperty(value = "相同收货方")
    private Integer isSameReceive;

    @ApiModelProperty(value = "相同实际送达日期")
    private Integer isSameEndDate;

    @ApiModelProperty(value = "相同电子回单日期")
    private Integer isSameElectronicBackDate;

    @ApiModelProperty(value = "相同正本回单日期")
    private Integer isSameOriginalBackDate;

    @ApiModelProperty(value = "相同承运商")
    private Integer isSameCarrier;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createtime;

    @ApiModelProperty(value = "创建人")
    private String createperson;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updatetime;

    @ApiModelProperty(value = "修改人")
    private String updateperson;

    @ApiModelProperty(value = "企业ID")
    private Long enterpriseId;

    @ApiModelProperty(value = "公司名称")
    private String enterpriseName;

    private List<BmsProportionStrategyDetailDTO> flowConditions;

}