/**
* 文件：AssetFlowEventEntity.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: AssetFlowEventEntity  </p>
 * <p>Copyright: Copyright &reg;  </p>
 * <p>Company: </p>
 * @author 
 * @version 1.0.0
 */
public class AssetFlowEventEntity extends BaseEntityLong{
	private static final long serialVersionUID = 1614232821213L;
	
	/** 事件名称，全局唯一 */
	private String name;

	/** 事件编码，全局唯一 */
	private String code;

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

	/** 事件前资产流转状态，参数配置-AssetFlowStatus，多个状态用逗号分隔 */
	private String beforeFlowStatus;

	/** 事件后资产流转状态，参数配置-AssetFlowStatus */
	private Integer afterFlowStatus;

	/** 排序号，查询时列表按照此字段排序； 默认0 */
	private Integer orderNo;

	/** 事件执行事务脚本，java类，实现EventHandle接口 */
	private String script;

	/** 事件描述 */
	private String remark;

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

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

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

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


	public AssetFlowEventEntity(){
		
	}
	/**
	 * 获取 事件名称，全局唯一
	 * @return name
	 */
	public String getName(){
		return this.name;
	}

	/**
	 * 设置 事件名称，全局唯一
	 * @param name
	 */
	public void setName(String name){
		this.name = name;
	}

	/**
	 * 获取 事件编码，全局唯一
	 * @return code
	 */
	public String getCode(){
		return this.code;
	}

	/**
	 * 设置 事件编码，全局唯一
	 * @param code
	 */
	public void setCode(String code){
		this.code = code;
	}

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

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

	/**
	 * 获取 事件前资产流转状态，参数配置-AssetFlowStatus，多个状态用逗号分隔
	 * @return beforeFlowStatus
	 */
	public String getBeforeFlowStatus(){
		return this.beforeFlowStatus;
	}

	/**
	 * 设置 事件前资产流转状态，参数配置-AssetFlowStatus，多个状态用逗号分隔
	 * @param beforeFlowStatus
	 */
	public void setBeforeFlowStatus(String beforeFlowStatus){
		this.beforeFlowStatus = beforeFlowStatus;
	}

	/**
	 * 获取 事件后资产流转状态，参数配置-AssetFlowStatus
	 * @return afterFlowStatus
	 */
	public Integer getAfterFlowStatus(){
		return this.afterFlowStatus;
	}

	/**
	 * 设置 事件后资产流转状态，参数配置-AssetFlowStatus
	 * @param afterFlowStatus
	 */
	public void setAfterFlowStatus(Integer afterFlowStatus){
		this.afterFlowStatus = afterFlowStatus;
	}

	/**
	 * 获取 排序号，查询时列表按照此字段排序； 默认0
	 * @return orderNo
	 */
	public Integer getOrderNo(){
		return this.orderNo;
	}

	/**
	 * 设置 排序号，查询时列表按照此字段排序； 默认0
	 * @param orderNo
	 */
	public void setOrderNo(Integer orderNo){
		this.orderNo = orderNo;
	}

	/**
	 * 获取 事件执行事务脚本，java类，实现EventHandle接口
	 * @return script
	 */
	public String getScript(){
		return this.script;
	}

	/**
	 * 设置 事件执行事务脚本，java类，实现EventHandle接口
	 * @param script
	 */
	public void setScript(String script){
		this.script = script;
	}

	/**
	 * 获取 事件描述
	 * @return remark
	 */
	public String getRemark(){
		return this.remark;
	}

	/**
	 * 设置 事件描述
	 * @param remark
	 */
	public void setRemark(String remark){
		this.remark = remark;
	}

	/**
	 * 获取 变更时间
	 * @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 AssetFlowEventEntity) {
			AssetFlowEventEntity tmp = (AssetFlowEventEntity) 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(",name:").append(getName())
		  .append(",code:").append(getCode())
		  .append(",enabled:").append(getEnabled())
		  .append(",beforeFlowStatus:").append(getBeforeFlowStatus())
		  .append(",afterFlowStatus:").append(getAfterFlowStatus())
		  .append(",orderNo:").append(getOrderNo())
		  .append(",script:").append(getScript())
		  .append(",remark:").append(getRemark())
		  .append(",updateTime:").append(getUpdateTime())
		  .append(",updateUser:").append(getUpdateUser())
		  .append(",createTime:").append(getCreateTime())
		  .append(",createUser:").append(getCreateUser());
		return sb.toString();
	}
	public void initAttrValue(){
		this.name = null;
		this.code = null;
		this.enabled = null;
		this.beforeFlowStatus = null;
		this.afterFlowStatus = null;
		this.orderNo = 0;
		this.script = null;
		this.remark = null;
		this.updateTime = null;
		this.updateUser = null;
		this.createTime = null;
		this.createUser = null;
	}
}