package cn.ibizlab.r7.runtime.core.r7rt_base.domain;

import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.math.BigInteger;
import java.util.HashMap;
import java.math.BigDecimal;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;

/**
 * 实体[用户角色]
 */
public class UserRole implements Serializable {

	private static final long serialVersionUID = 1L;

    /**
     * 备注
     */
    private String memo;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean memoDirtyFlag;

    /**
     * 用户角色标识
     */
    private String userRoleId;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean userRoleIdDirtyFlag;

    /**
     * 更新人
     */
    private String updateMan;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean updateManDirtyFlag;

    /**
     * 数据来源
     */
    private String dataSourceType;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean dataSourceTypeDirtyFlag;

    /**
     * 建立人
     */
    private String createMan;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean createManDirtyFlag;

    /**
     * 用户角色名称
     */
    private String userRoleName;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean userRoleNameDirtyFlag;

    /**
     * 建立时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", locale = "zh" , timezone="GMT+8")
    private Timestamp createDate;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean createDateDirtyFlag;

    /**
     * 更新时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", locale = "zh" , timezone="GMT+8")
    private Timestamp updateDate;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean updateDateDirtyFlag;

    /**
     * 是否启用
     */
    private Integer enable;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean enableDirtyFlag;

    /**
     * 用户角色类型
     */
    private String userRoleType;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean userRoleTypeDirtyFlag;

    /**
     * 系统名称
     */
    private String systemName;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean systemNameDirtyFlag;

    /**
     * 业务系统标识
     */
    private String systemId;

    @JsonIgnore
    @JSONField(serialize=false)
    private boolean systemIdDirtyFlag;


    /**
     * 获取 [备注]
     */
    @JsonProperty("memo")
    @JSONField(name="memo")
    public String getMemo(){
        return this.memo ;
    }

    /**
     * 设置 [备注]
     */
    @JsonProperty("memo")
    @JSONField(name="memo")
    public void setMemo(String memo){
        this.memo = memo ;
        this.memoDirtyFlag = true ;
    }

    /**
     * 获取 [备注]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getMemoDirtyFlag(){
        return this.memoDirtyFlag ;
    }
    /**
     * 获取 [用户角色标识]
     */
    @JsonProperty("userroleid")
    @JSONField(name="userroleid")
    public String getUserRoleId(){
        return this.userRoleId ;
    }

    /**
     * 设置 [用户角色标识]
     */
    @JsonProperty("userroleid")
    @JSONField(name="userroleid")
    public void setUserRoleId(String userRoleId){
        this.userRoleId = userRoleId ;
        this.userRoleIdDirtyFlag = true ;
    }

    /**
     * 获取 [用户角色标识]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getUserRoleIdDirtyFlag(){
        return this.userRoleIdDirtyFlag ;
    }
    /**
     * 获取 [更新人]
     */
    @JsonProperty("updateman")
    @JSONField(name="updateman")
    public String getUpdateMan(){
        return this.updateMan ;
    }

    /**
     * 设置 [更新人]
     */
    @JsonProperty("updateman")
    @JSONField(name="updateman")
    public void setUpdateMan(String updateMan){
        this.updateMan = updateMan ;
        this.updateManDirtyFlag = true ;
    }

    /**
     * 获取 [更新人]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getUpdateManDirtyFlag(){
        return this.updateManDirtyFlag ;
    }
    /**
     * 获取 [数据来源]
     */
    @JsonProperty("datasourcetype")
    @JSONField(name="datasourcetype")
    public String getDataSourceType(){
        return this.dataSourceType ;
    }

    /**
     * 设置 [数据来源]
     */
    @JsonProperty("datasourcetype")
    @JSONField(name="datasourcetype")
    public void setDataSourceType(String dataSourceType){
        this.dataSourceType = dataSourceType ;
        this.dataSourceTypeDirtyFlag = true ;
    }

    /**
     * 获取 [数据来源]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getDataSourceTypeDirtyFlag(){
        return this.dataSourceTypeDirtyFlag ;
    }
    /**
     * 获取 [建立人]
     */
    @JsonProperty("createman")
    @JSONField(name="createman")
    public String getCreateMan(){
        return this.createMan ;
    }

    /**
     * 设置 [建立人]
     */
    @JsonProperty("createman")
    @JSONField(name="createman")
    public void setCreateMan(String createMan){
        this.createMan = createMan ;
        this.createManDirtyFlag = true ;
    }

    /**
     * 获取 [建立人]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getCreateManDirtyFlag(){
        return this.createManDirtyFlag ;
    }
    /**
     * 获取 [用户角色名称]
     */
    @JsonProperty("userrolename")
    @JSONField(name="userrolename")
    public String getUserRoleName(){
        return this.userRoleName ;
    }

    /**
     * 设置 [用户角色名称]
     */
    @JsonProperty("userrolename")
    @JSONField(name="userrolename")
    public void setUserRoleName(String userRoleName){
        this.userRoleName = userRoleName ;
        this.userRoleNameDirtyFlag = true ;
    }

    /**
     * 获取 [用户角色名称]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getUserRoleNameDirtyFlag(){
        return this.userRoleNameDirtyFlag ;
    }
    /**
     * 获取 [建立时间]
     */
    @JsonProperty("createdate")
    @JSONField(name="createdate")
    public Timestamp getCreateDate(){
        return this.createDate ;
    }

    /**
     * 设置 [建立时间]
     */
    @JsonProperty("createdate")
    @JSONField(name="createdate")
    public void setCreateDate(Timestamp createDate){
        this.createDate = createDate ;
        this.createDateDirtyFlag = true ;
    }

    /**
     * 获取 [建立时间]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getCreateDateDirtyFlag(){
        return this.createDateDirtyFlag ;
    }
    /**
     * 获取 [更新时间]
     */
    @JsonProperty("updatedate")
    @JSONField(name="updatedate")
    public Timestamp getUpdateDate(){
        return this.updateDate ;
    }

    /**
     * 设置 [更新时间]
     */
    @JsonProperty("updatedate")
    @JSONField(name="updatedate")
    public void setUpdateDate(Timestamp updateDate){
        this.updateDate = updateDate ;
        this.updateDateDirtyFlag = true ;
    }

    /**
     * 获取 [更新时间]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getUpdateDateDirtyFlag(){
        return this.updateDateDirtyFlag ;
    }
    /**
     * 获取 [是否启用]
     */
    @JsonProperty("enable")
    @JSONField(name="enable")
    public Integer getEnable(){
        return this.enable ;
    }

    /**
     * 设置 [是否启用]
     */
    @JsonProperty("enable")
    @JSONField(name="enable")
    public void setEnable(Integer enable){
        this.enable = enable ;
        this.enableDirtyFlag = true ;
    }

    /**
     * 获取 [是否启用]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getEnableDirtyFlag(){
        return this.enableDirtyFlag ;
    }
    /**
     * 获取 [用户角色类型]
     */
    @JsonProperty("userroletype")
    @JSONField(name="userroletype")
    public String getUserRoleType(){
        return this.userRoleType ;
    }

    /**
     * 设置 [用户角色类型]
     */
    @JsonProperty("userroletype")
    @JSONField(name="userroletype")
    public void setUserRoleType(String userRoleType){
        this.userRoleType = userRoleType ;
        this.userRoleTypeDirtyFlag = true ;
    }

    /**
     * 获取 [用户角色类型]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getUserRoleTypeDirtyFlag(){
        return this.userRoleTypeDirtyFlag ;
    }
    /**
     * 获取 [系统名称]
     */
    @JsonProperty("systemname")
    @JSONField(name="systemname")
    public String getSystemName(){
        return this.systemName ;
    }

    /**
     * 设置 [系统名称]
     */
    @JsonProperty("systemname")
    @JSONField(name="systemname")
    public void setSystemName(String systemName){
        this.systemName = systemName ;
        this.systemNameDirtyFlag = true ;
    }

    /**
     * 获取 [系统名称]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getSystemNameDirtyFlag(){
        return this.systemNameDirtyFlag ;
    }
    /**
     * 获取 [业务系统标识]
     */
    @JsonProperty("systemid")
    @JSONField(name="systemid")
    public String getSystemId(){
        return this.systemId ;
    }

    /**
     * 设置 [业务系统标识]
     */
    @JsonProperty("systemid")
    @JSONField(name="systemid")
    public void setSystemId(String systemId){
        this.systemId = systemId ;
        this.systemIdDirtyFlag = true ;
    }

    /**
     * 获取 [业务系统标识]脏标记
     */
    @JsonIgnore
    @JSONField(serialize=false)
    public boolean getSystemIdDirtyFlag(){
        return this.systemIdDirtyFlag ;
    }

}

