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;

/**
 * 
 *
 * 商品品类接口历史表
 *
 * @className :ItemCategoryHtyModel
 * @author :fanzw
 * @creationTime :2023/04/12
 * @description :
 *
 * @modifier :fanzw
 * @modifyTime :2023/04/12
 * @reviseRemarks:
 *
 * @version :1.0.0
 *
 */
@Data
@Table("intf_base_item_category_hty")
public class ItemCategoryHtyModel implements Serializable {

	private static final long serialVersionUID = -8624683116006998927L;

	@Id
	@ApiModelProperty(value = "商品品类ID")
	@Column(value = "item_category_id")
	private String itemCategoryId;

	@ApiModelProperty(value = "商品品类编码")
	@Column(value = "item_category_code")
	private String itemCategoryCode;

	@ApiModelProperty(value = "商品品类名称")
	@Column(value = "item_category_name")
	private String itemCategoryName;

	@ApiModelProperty(value = "商品品类层级  数据字典ITEM_CATEGORY_LEVEL")
	@Column(value = "item_category_level")
	private Integer itemCategoryLevel;

	@ApiModelProperty(value = "上级商品品类ID")
	@Column(value = "father_item_category_id")
	private Long fatherItemCategoryId;

	@ApiModelProperty(value = "上级商品品类编码")
	@Column(value = "father_item_category_code")
	private String fatherItemCategoryCode;

	@ApiModelProperty(value = "上级商品品类名称")
	@Column(value = "father_item_category_name")
	private String fatherItemCategoryName;

	@ApiModelProperty(value = "上级商品品类层级  数据字典ITEM_CATEGORY_LEVEL")
	@Column(value = "father_item_category_level")
	private Integer fatherItemCategoryLevel;

	@ApiModelProperty(value = "0：停用 1：启用")
	@Column(value = "status")
	private Integer status;

	@ApiModelProperty(value = "来源 数据字典SOURCE 1.新增 2.excel导入 3.接口导入")
	@Column(value = "source")
	private Integer source;

	@ApiModelProperty(value = "导入批次号")
	@Column(value = "import_batch_number")
	private String importBatchNumber;

	@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 = "字符属性扩展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 = "cargo_owner_id")
	private Long cargoOwnerId;

	@ApiModelProperty(value = "所属货主编码")
	@Column(value = "cargo_owner_code")
	private String cargoOwnerCode;

	@ApiModelProperty(value = "所属货主名称")
	@Column(value = "cargo_owner_name")
	private String cargoOwnerName;

	@ApiModelProperty(value = "接口数据状态 N:未处理 Y:处理成功 E:处理失败")
	@Column(value = "intf_status")
	private String intfStatus;
}
