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

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

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.prolog.framework.core.annotation.Column;
import com.prolog.framework.core.annotation.Id;
import com.prolog.framework.core.annotation.Table;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@Table("bms_proportion_Bill_strategy")
public class BmsProportionBillStrategyModel implements Serializable {

	private static final long serialVersionUID = -1708537659083890816L;

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

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

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

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

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

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

	@ApiModelProperty(value = "策略状态")
	@Column(value = "status")
	private Integer status;

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

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

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

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

	@ApiModelProperty(value = "相同实际启运日期")
	@Column(value = "is_start_date")
	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 = "相同收货方")
	@Column(value = "is_same_receive")
	private Integer isSameReceive;

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

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

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

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

	@ApiModelProperty(value = "字符属性扩展1")
	@Column(value = "ext_str1")
	private String extStr1;

	@ApiModelProperty(value = "字符属性扩展2")
	@Column(value = "ext_str2")
	private String extStr2;

	@ApiModelProperty(value = "字符属性扩展3")
	@Column(value = "ext_str3")
	private String extStr3;

	@ApiModelProperty(value = "字符属性扩展4")
	@Column(value = "ext_str4")
	private String extStr4;

	@ApiModelProperty(value = "字符属性扩展5")
	@Column(value = "ext_str5")
	private String extStr5;

	@ApiModelProperty(value = "数值属性扩展1")
	@Column(value = "ext_num1")
	private BigDecimal extNum1;

	@ApiModelProperty(value = "数值属性扩展2")
	@Column(value = "ext_num2")
	private BigDecimal extNum2;

	@ApiModelProperty(value = "数值属性扩展3")
	@Column(value = "ext_num3")
	private BigDecimal extNum3;

	@ApiModelProperty(value = "数值属性扩展4")
	@Column(value = "ext_num4")
	private BigDecimal extNum4;

	@ApiModelProperty(value = "数值属性扩展5")
	@Column(value = "ext_num5")
	private BigDecimal extNum5;

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "日期属性扩展1")
	@Column(value = "ext_date1")
	private Date extDate1;

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "日期属性扩展2")
	@Column(value = "ext_date2")
	private Date extDate2;

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "日期属性扩展3")
	@Column(value = "ext_date3")
	private Date extDate3;

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "日期属性扩展4")
	@Column(value = "ext_date4")
	private Date extDate4;

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "日期属性扩展5")
	@Column(value = "ext_date5")
	private Date extDate5;

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

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

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

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

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

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