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

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

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;

/**
 * 运单拆分策略(TmsStrategySplit)Model
 *
 * @author zhangsj
 * @since 2022-07-16 09:32:10
 */
@Data
@Table("tms_strategy_split")
public class TmsStrategySplitModel implements Serializable {
    private static final long serialVersionUID = 567587795280633941L;

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

    @ApiModelProperty(value = "拆分策略名称")
    @Column(value = "name")
    private String name;

    @ApiModelProperty(value = "执行操作(拆分规则)编码 数据字典RULE_CODE:1按商品品类拆分 2按包装类型拆分 3按货物温层拆分 4按数量、库存数量拆分 " +
            "5按默认存放仓库、数量、库存数量拆分 6按默认存放仓库 7按运单明细匹配关键字拆分")
    @Column(value = "rule_code")
    private Integer ruleCode;

    @ApiModelProperty(value = "执行操作(拆分规则)名称 数据字典RULE_CODE:1按商品品类拆分 2按包装类型拆分 3按货物温层拆分 4按数量、库存数量拆分 5按默认存放仓库、数量、库存数量拆分")
    @Column(value = "rule_name")
    private String ruleName;

    @ApiModelProperty(value = "按运单明细拆分关键字")
    @Column(value = "shipbill_detail_split_key")
    private String shipbillDetailSplitKey;

    @ApiModelProperty(value = "拆分后是否重新匹配线路 数据字典 REMATCH_LINE :0否 1是")
    @Column(value = "rematch_line")
    private Integer rematchLine;

    @ApiModelProperty(value = "状态 数据字典GENERAL_STATUS:0停用 10启用")
    @Column(value = "status")
    private Integer status;

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

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

    @ApiModelProperty(value = "企业名称")
    @Column(value = "enterprise_name")
    private String enterpriseName;

    @ApiModelProperty(value = "创建时间")
    @Column(value = "createtime")
    private Date createtime;

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

    @ApiModelProperty(value = "修改时间")
    @Column(value = "updatetime")
    private Date updatetime;

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

}
