/**
* 文件：AssetFlowEventFieldEntity.java
* 版本：1.0.0
* 日期：
* Copyright &reg; 
* All right reserved.
*/

package com.mortals.xhx.module.asset.model;

import com.mortals.framework.model.BaseEntityLong;

import java.util.Date;

/**
 * <p>Title: 资产事件扩展字段配置</p>
 * <p>Description: AssetFlowEventFieldEntity  </p>
 * <p>Copyright: Copyright &reg;  </p>
 * <p>Company: </p>
 * @author 
 * @version 1.0.0
 */
public class AssetFlowEventFieldEntity extends BaseEntityLong{
	private static final long serialVersionUID = 1614244037356L;
	
	/** 事件编码 */
	private String eventCode;

	/** 字段编码，事件下唯一 */
	private String fieldCode;

	/** 字段名称 */
	private String fieldName;

	/** 数据类型，与java类型相同，目前支持String,Integer,Long,Float,Double */
	private String fieldType;

	/** 数据长度，默认50 */
	private Long fieldLen;

	/** 允许为空，0否，1是，默认1 */
	private Integer fieldNull;

	/** 输入方式，1输入框输入 2扫码输入 3下拉选择；支持多种方式，已逗号分隔；默认1 */
	private Integer inputType;

	/** 数据来源，下拉时选项数据来源，配置对应接口地址 */
	private String dataSource;

	/** 排序号，默认0 */
	private Long fieldOrderNo;

	/** 备注 */
	private String remark;

	/** 是否启用，0否，1是 */
	private Integer enabled;

	/** 变更时间 */
	private Date updateTime;

	/** 变更用户loginName */
	private String updateUser;

	/** 创建时间 */
	private Date createTime;

	/** 创建用户loginName */
	private String createUser;


	public AssetFlowEventFieldEntity(){
		
	}
	/**
	 * 获取 事件编码
	 * @return eventCode
	 */
	public String getEventCode(){
		return this.eventCode;
	}

	/**
	 * 设置 事件编码
	 * @param eventCode
	 */
	public void setEventCode(String eventCode){
		this.eventCode = eventCode;
	}

	/**
	 * 获取 字段编码，事件下唯一
	 * @return fieldCode
	 */
	public String getFieldCode(){
		return this.fieldCode;
	}

	/**
	 * 设置 字段编码，事件下唯一
	 * @param fieldCode
	 */
	public void setFieldCode(String fieldCode){
		this.fieldCode = fieldCode;
	}

	/**
	 * 获取 字段名称
	 * @return fieldName
	 */
	public String getFieldName(){
		return this.fieldName;
	}

	/**
	 * 设置 字段名称
	 * @param fieldName
	 */
	public void setFieldName(String fieldName){
		this.fieldName = fieldName;
	}

	/**
	 * 获取 数据类型，与java类型相同，目前支持String,Integer,Long,Float,Double
	 * @return fieldType
	 */
	public String getFieldType(){
		return this.fieldType;
	}

	/**
	 * 设置 数据类型，与java类型相同，目前支持String,Integer,Long,Float,Double
	 * @param fieldType
	 */
	public void setFieldType(String fieldType){
		this.fieldType = fieldType;
	}

	/**
	 * 获取 数据长度，默认50
	 * @return fieldLen
	 */
	public Long getFieldLen(){
		return this.fieldLen;
	}

	/**
	 * 设置 数据长度，默认50
	 * @param fieldLen
	 */
	public void setFieldLen(Long fieldLen){
		this.fieldLen = fieldLen;
	}

	/**
	 * 获取 允许为空，0否，1是，默认1
	 * @return fieldNull
	 */
	public Integer getFieldNull(){
		return this.fieldNull;
	}

	/**
	 * 设置 允许为空，0否，1是，默认1
	 * @param fieldNull
	 */
	public void setFieldNull(Integer fieldNull){
		this.fieldNull = fieldNull;
	}

	/**
	 * 获取 输入方式，1输入框输入 2扫码输入 3下拉选择；支持多种方式，已逗号分隔；默认1
	 * @return inputType
	 */
	public Integer getInputType(){
		return this.inputType;
	}

	/**
	 * 设置 输入方式，1输入框输入 2扫码输入 3下拉选择；支持多种方式，已逗号分隔；默认1
	 * @param inputType
	 */
	public void setInputType(Integer inputType){
		this.inputType = inputType;
	}

	/**
	 * 获取 数据来源，下拉时选项数据来源，配置对应接口地址
	 * @return dataSource
	 */
	public String getDataSource(){
		return this.dataSource;
	}

	/**
	 * 设置 数据来源，下拉时选项数据来源，配置对应接口地址
	 * @param dataSource
	 */
	public void setDataSource(String dataSource){
		this.dataSource = dataSource;
	}

	/**
	 * 获取 排序号，默认0
	 * @return fieldOrderNo
	 */
	public Long getFieldOrderNo(){
		return this.fieldOrderNo;
	}

	/**
	 * 设置 排序号，默认0
	 * @param fieldOrderNo
	 */
	public void setFieldOrderNo(Long fieldOrderNo){
		this.fieldOrderNo = fieldOrderNo;
	}

	/**
	 * 获取 备注
	 * @return remark
	 */
	public String getRemark(){
		return this.remark;
	}

	/**
	 * 设置 备注
	 * @param remark
	 */
	public void setRemark(String remark){
		this.remark = remark;
	}

	/**
	 * 获取 是否启用，0否，1是
	 * @return enabled
	 */
	public Integer getEnabled(){
		return this.enabled;
	}

	/**
	 * 设置 是否启用，0否，1是
	 * @param enabled
	 */
	public void setEnabled(Integer enabled){
		this.enabled = enabled;
	}

	/**
	 * 获取 变更时间
	 * @return updateTime
	 */
	public Date getUpdateTime(){
		return this.updateTime;
	}

	/**
	 * 设置 变更时间
	 * @param updateTime
	 */
	public void setUpdateTime(Date updateTime){
		this.updateTime = updateTime;
	}

	/**
	 * 获取 变更用户loginName
	 * @return updateUser
	 */
	public String getUpdateUser(){
		return this.updateUser;
	}

	/**
	 * 设置 变更用户loginName
	 * @param updateUser
	 */
	public void setUpdateUser(String updateUser){
		this.updateUser = updateUser;
	}

	/**
	 * 获取 创建时间
	 * @return createTime
	 */
	public Date getCreateTime(){
		return this.createTime;
	}

	/**
	 * 设置 创建时间
	 * @param createTime
	 */
	public void setCreateTime(Date createTime){
		this.createTime = createTime;
	}

	/**
	 * 获取 创建用户loginName
	 * @return createUser
	 */
	public String getCreateUser(){
		return this.createUser;
	}

	/**
	 * 设置 创建用户loginName
	 * @param createUser
	 */
	public void setCreateUser(String createUser){
		this.createUser = createUser;
	}


	@Override
	public int hashCode() {
		return this.getId().hashCode();
	}
	@Override
	public boolean equals(Object obj) {
		if (obj == null)
			return false;
		if (obj instanceof AssetFlowEventFieldEntity) {
			AssetFlowEventFieldEntity tmp = (AssetFlowEventFieldEntity) obj;
			if (this.getId().longValue() == tmp.getId().longValue()) {
				return true;
			}
		}
		return false;
	}
	public String toString(){
		StringBuilder sb = new StringBuilder("");
		sb.append("id:").append(getId())
		  .append(",eventCode:").append(getEventCode())
		  .append(",fieldCode:").append(getFieldCode())
		  .append(",fieldName:").append(getFieldName())
		  .append(",fieldType:").append(getFieldType())
		  .append(",fieldLen:").append(getFieldLen())
		  .append(",fieldNull:").append(getFieldNull())
		  .append(",inputType:").append(getInputType())
		  .append(",dataSource:").append(getDataSource())
		  .append(",fieldOrderNo:").append(getFieldOrderNo())
		  .append(",remark:").append(getRemark())
		  .append(",enabled:").append(getEnabled())
		  .append(",updateTime:").append(getUpdateTime())
		  .append(",updateUser:").append(getUpdateUser())
		  .append(",createTime:").append(getCreateTime())
		  .append(",createUser:").append(getCreateUser());
		return sb.toString();
	}
	public void initAttrValue(){
		this.eventCode = null;
		this.fieldCode = null;
		this.fieldName = null;
		this.fieldType = null;
		this.fieldLen = 50L;
		this.fieldNull = 1;
		this.inputType = 1;
		this.dataSource = null;
		this.fieldOrderNo = 0L;
		this.remark = null;
		this.enabled = null;
		this.updateTime = null;
		this.updateUser = null;
		this.createTime = null;
		this.createUser = null;
	}
}