package com.chenyang.nse.bussiness.entity.orm.table.core.masking;

import com.chenyang.nse.bussiness.entity.orm.table.TBaseEntity;
import javax.persistence.Entity;
import javax.persistence.Table;

@Entity
@Table(
   name = "T_CORE_MASKING_FILECOLUMN"
)
public class TCoreMaskingFilecolumn extends TBaseEntity {
   private String filesystemid;
   private String mappingkey;
   private String datadirection;
   private String structurecolumnid;
   private String ruleid;
   private String rulename;
   private String regextype;
   private String remarks;
   private int columnindex;

   public TCoreMaskingFilecolumn() {
   }

   public TCoreMaskingFilecolumn(String filesystemid, String mappingkey, String datadirection, String structurecolumnid, String ruleid, String rulename, String regextype, String remarks, int columnindex) {
      this.filesystemid = filesystemid;
      this.mappingkey = mappingkey;
      this.datadirection = datadirection;
      this.structurecolumnid = structurecolumnid;
      this.ruleid = ruleid;
      this.rulename = rulename;
      this.regextype = regextype;
      this.remarks = remarks;
      this.columnindex = columnindex;
   }

   public String getFilesystemid() {
      return this.filesystemid;
   }

   public void setFilesystemid(String filesystemid) {
      this.filesystemid = filesystemid;
   }

   public String getMappingkey() {
      return this.mappingkey;
   }

   public void setMappingkey(String mappingkey) {
      this.mappingkey = mappingkey;
   }

   public String getDatadirection() {
      return this.datadirection;
   }

   public void setDatadirection(String datadirection) {
      this.datadirection = datadirection;
   }

   public String getStructurecolumnid() {
      return this.structurecolumnid;
   }

   public void setStructurecolumnid(String structurecolumnid) {
      this.structurecolumnid = structurecolumnid;
   }

   public String getRuleid() {
      return this.ruleid;
   }

   public void setRuleid(String ruleid) {
      this.ruleid = ruleid;
   }

   public String getRulename() {
      return this.rulename;
   }

   public void setRulename(String rulename) {
      this.rulename = rulename;
   }

   public String getRegextype() {
      return this.regextype;
   }

   public void setRegextype(String regextype) {
      this.regextype = regextype;
   }

   public String getRemarks() {
      return this.remarks;
   }

   public void setRemarks(String remarks) {
      this.remarks = remarks;
   }

   public int getColumnindex() {
      return this.columnindex;
   }

   public void setColumnindex(int columnindex) {
      this.columnindex = columnindex;
   }

   public String toString() {
      return "TCoreMaskingFilecolumn [filesystemid=" + this.filesystemid + ", mappingkey=" + this.mappingkey + ", datadirection=" + this.datadirection + ", structurecolumnid=" + this.structurecolumnid + ", ruleid=" + this.ruleid + ", rulename=" + this.rulename + ", regextype=" + this.regextype + ", remarks=" + this.remarks + ", columnindex=" + this.columnindex + "]";
   }

   public int hashCode() {
      int prime = 31;
      int result = 1;
      result = 31 * result + this.columnindex;
      result = 31 * result + (this.datadirection == null ? 0 : this.datadirection.hashCode());
      result = 31 * result + (this.filesystemid == null ? 0 : this.filesystemid.hashCode());
      result = 31 * result + (this.mappingkey == null ? 0 : this.mappingkey.hashCode());
      result = 31 * result + (this.regextype == null ? 0 : this.regextype.hashCode());
      result = 31 * result + (this.remarks == null ? 0 : this.remarks.hashCode());
      result = 31 * result + (this.ruleid == null ? 0 : this.ruleid.hashCode());
      result = 31 * result + (this.rulename == null ? 0 : this.rulename.hashCode());
      result = 31 * result + (this.structurecolumnid == null ? 0 : this.structurecolumnid.hashCode());
      return result;
   }

   public boolean equals(Object obj) {
      if (this == obj) {
         return true;
      } else if (obj == null) {
         return false;
      } else if (this.getClass() != obj.getClass()) {
         return false;
      } else {
         TCoreMaskingFilecolumn other = (TCoreMaskingFilecolumn)obj;
         if (this.columnindex != other.columnindex) {
            return false;
         } else {
            if (this.datadirection == null) {
               if (other.datadirection != null) {
                  return false;
               }
            } else if (!this.datadirection.equals(other.datadirection)) {
               return false;
            }

            if (this.filesystemid == null) {
               if (other.filesystemid != null) {
                  return false;
               }
            } else if (!this.filesystemid.equals(other.filesystemid)) {
               return false;
            }

            if (this.mappingkey == null) {
               if (other.mappingkey != null) {
                  return false;
               }
            } else if (!this.mappingkey.equals(other.mappingkey)) {
               return false;
            }

            if (this.regextype == null) {
               if (other.regextype != null) {
                  return false;
               }
            } else if (!this.regextype.equals(other.regextype)) {
               return false;
            }

            if (this.remarks == null) {
               if (other.remarks != null) {
                  return false;
               }
            } else if (!this.remarks.equals(other.remarks)) {
               return false;
            }

            if (this.ruleid == null) {
               if (other.ruleid != null) {
                  return false;
               }
            } else if (!this.ruleid.equals(other.ruleid)) {
               return false;
            }

            if (this.rulename == null) {
               if (other.rulename != null) {
                  return false;
               }
            } else if (!this.rulename.equals(other.rulename)) {
               return false;
            }

            if (this.structurecolumnid == null) {
               if (other.structurecolumnid != null) {
                  return false;
               }
            } else if (!this.structurecolumnid.equals(other.structurecolumnid)) {
               return false;
            }

            return true;
         }
      }
   }
}
