/**
 * Copyright 2008-2009. Chongqing Communications Industry Services Co.,Ltd Information Technology Branch. All rights reserved. <a>http://www.crunii.com</a>
 */
package com.crunii.micro.common.excel;

import com.alibaba.excel.annotation.ExcelProperty;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * Excel导入OD接口字段对应配置表: 配置了接口数据包中的属性和PF系统业务过程表数据记录表中的对应关系，是业务受理的模板表，业务受 DTO
 *
 * @author 张波 create 2020年10月9日下午14:22:25
 */
@Getter
@Setter
@ToString
@ApiModel(description = "OD接口字段对应配置表  Excel导入导出: 配置了接口数据包中的属性和PF系统业务过程表数据记录表中的对应关系")
public class ExcelOperFieldConfig {

	/**
	 * 接口包的路径 varchar(128)
	 */
	@ApiModelProperty(value = "接口包的路径")
	@ExcelProperty(value = "接口包的路径", index = 0)
	private String packet;

	/**
	 * 接口包的字段名称 varchar(64)
	 */
	@ApiModelProperty(value = "接口包节点名")
	@ExcelProperty(value = "接口包节点名", index = 1)
	private String field;

	/**
	 * 产品类型 1主产品，2附属产品
	 */
	@ApiModelProperty(value = "产品类型  1主产品，2附属产品")
	@ExcelProperty(value = { "产品信息", "产品类型" }, index = 2)
	private String prodType;

	/**
	 * 产品ID，公用的为0，(如果prodType为1写入主产品ID，如果prodType为2写入附属产品ID),实际long类型
	 */
	@ApiModelProperty(value = "产品ID，公用的为0")
	@ExcelProperty(value = { "产品信息", "产品ID" }, index = 3)
	private String prodId;

	/**
	 * 产品编码
	 */
	@ApiModelProperty(value = "产品编码")
	@ExcelProperty(value = { "产品信息", "产品编码" }, index = 4)
	private String prodCode;

	/**
	 * 产品名称
	 */
	@ApiModelProperty(value = "产品名称")
	@ExcelProperty(value = { "产品信息", "产品名称" }, index = 5)
	private String prodName;

	// /**
	// * 附属产品ID int(11)
	// */
	// @ApiModelProperty(value = "附属产品ID")
	// private long appProdId;

	/**
	 * 数据域类型[2:纵表,1:横表]【字典ID：7000020】 tinyInt(4)
	 */
	@ApiModelProperty(value = "数据域类型[2:纵表,1:横表]【字典ID：7000020】")
	@ExcelProperty(value = "数据域类型", index = 6)
	private String domainType;

	/**
	 * 数据域表名 varchar(32)
	 */
	@ApiModelProperty(value = "数据域表名")
	@ExcelProperty(value = { "横表填写", "数据域表名" }, index = 7)
	private String domain;

	/**
	 * 横表的字段名 varchar(64)
	 */
	@ApiModelProperty(value = "横表的字段名")
	@ExcelProperty(value = { "横表填写", "表字段名" }, index = 8)
	private String property;

	/**
	 * 数据域表名 varchar(32)
	 */
	@ApiModelProperty(value = "数据域表名")
	@ExcelProperty(value = { "纵表填写", "数据域表名" }, index = 9)
	private String domain2;

	/**
	 * 对应纵表的K表字段 varchar(64)
	 */
	@ApiModelProperty(value = "对应纵表的K表字段")
	@ExcelProperty(value = { "纵表填写", "KEY字段名" }, index = 10)
	private String keyProperty;

	/**
	 * 对应纵表的KEY表字段值 varchar(64)
	 */
	@ApiModelProperty(value = "对应纵表的KEY表字段值")
	@ExcelProperty(value = { "纵表填写", "KEY字段值" }, index = 11)
	private String keyValue;

	/**
	 * 纵表的字段名 varchar(64)
	 */
	@ApiModelProperty(value = "VALUE字段名")
	@ExcelProperty(value = { "纵表填写", "VALUE字段名" }, index = 12)
	private String property2;

	/**
	 * 纵表的老值对应表字段 varchar(64)
	 */
	@ApiModelProperty(value = "OLD VALUE字段名")
	@ExcelProperty(value = { "纵表填写", "OLD VALUE字段名" }, index = 13)
	private String oldProperty;

	@ApiModelProperty(value = "0 失效 1、2、3.。。。  都为有效")
	@ExcelProperty(value = "状态", index = 14)
	private String stateName;

	/**
	 * 状态优先级，实际int类型
	 */
	@ApiModelProperty(value = "0 失效1 优先级从1开始计，如1、2、3.。。。数字越大，优先级越高")
	@ExcelProperty(value = "优先级", index = 15)
	private String state;

	@ApiModelProperty(value = "导入结果")
	@ExcelProperty(value = "导入结果 (导入前请清空)", index = 16)
	private String importResult;

}
