package com.yihu.wlyy.entity.demographic;

import java.sql.Timestamp;
import javax.persistence.*;

import org.hibernate.annotations.GenericGenerator;

/**
 * 人口学信息。所有数据均从基卫数据库导出，数据库的表名与基卫一致。
 */
@Entity
@Table(name = "tbl_basic")
public class DemographicInfo implements java.io.Serializable {
	private Integer personid;//人员编码
	private String persontype;//人员类型c2n(Persontype)
	private String name;//姓名
	private String oldname;//曾用名
	private String aliasname;//别名
	private String sex;//性别c2n(sex)
	private Timestamp birth;//出生年月
	private Timestamp doorbirth;//公安户籍出生年月
	private String cardid;//身份证号码  18
	private String nation;//民族c2n(Nation)
	private String edudegree;//文化程度c2n(Edudegree)
	private String work;//职业c2n(Work)
	private String party;//政治面貌c2n(Party)
	private String doorprop;//户口性质c2n(Whouse)
	private String farmer;//是否农户c2n(Whether)
	private String aviso;//是否重点通报对象
	private String publicize;//是否宣传访视重点
	private String hortation;//是否应奖励对象
	private String checktype;//是否三查对象
	private String single;//是否独生子女
	private Integer workid;//工作单位编码
	private String dooraddress;//户籍地编码
	private String dooraddressinfo;//户籍地详细地址
	private String nowaddress;//现居住地编码
	private String nowaddressinfo;//现居住地详细地址
	private String doortel;//户籍地电话
	private String marrytype;//当前婚姻状况c2n(Marriage)
	private Timestamp marrychangedate;//婚姻变动日期
	private Integer mateid;//'配偶ID
	private String matename;//配偶姓名
	private String matecardid;//配偶身份证号码
	private Timestamp matebrith;//配偶出生年月
	private Integer fatherid;//父亲ID
	private String fathername;//父亲姓名
	private Integer materid;//母亲ID
	private String matername;//母亲姓名
	private Integer girlcount;//现有女孩数
	private Integer boycount;//现有男孩数
	private Integer operatorid;//登记操作员
	private String checkunit;//登记单位
	private Timestamp checkdate;//登记日期
	private Integer uoperatorid;//'修改操作员
	private String updateunit;//修改单位
	private Timestamp updatedate;//修改日期
	private Timestamp indate;//入库日期
	private Integer cancel;//注销表ID(迁出的时候写随机写一个数进去'
	private String memo;//备注
	private String persontel;//人员联系电话
	private Timestamp arrivedate;//来厦日期
	private Timestamp leavedate;//离籍日期
	private String conclass;//避孕方法c2n(ConClass)
	private String munitid;//主管单位id (当人员迁出或死亡的时候置为空)
	private String state;//是否有效1为有效，2为迁出,3为死亡，4为重复人口
	private String health;//健康状态
	private String relaparents;//与父母关系 Relaparents',
	private String matebwork;//配偶职业 Work
	private String workaddress;//配偶工作单位
	private String mateaddtel;//配偶户籍联系电话
	private Integer nowchilden;//现有孩数
	private Timestamp schildbirth;//最小孩子出生日期
	private Timestamp singlenodate;//领独子证时间
	private String isviolate;//是否违纪 Whether (0否,1是)
	private String ismatefarmer;// '配偶是否农户c2n(Whether)'
	private String workaddressid;//'配偶工作单位编码
	private String workname;//工作单位名称
	private Timestamp condate;//避孕日期
	private String contramemo;//避孕备注c2n(Contramemo)
	private String matedooradd;//配偶户籍地编码
	private String matedooraddinfo;//配偶户籍地详细地址
	private Timestamp fmarrydate;//初婚日期
	private String unitname;//配偶工作单位名称
	private String addtype;//人口增加类型（2出生，1迁入）
	private String zjlxdm;//
	private String qtzjhm;//
	private String fathercode;//
	private String gjdm;//
	private Timestamp dbdate;//
	private String mothercode;//
	private String familyhtype;//

	public DemographicInfo() {
	}

	public DemographicInfo(String persontype, String name, String oldname,
						   String aliasname, String sex, Timestamp birth, Timestamp doorbirth,
						   String cardid, String nation, String edudegree, String work,
						   String party, String doorprop, String farmer, String aviso,
						   String publicize, String hortation, String checktype,
						   String single, Integer workid, String dooraddress,
						   String dooraddressinfo, String nowaddress, String nowaddressinfo,
						   String doortel, String marrytype, Timestamp marrychangedate,
						   Integer mateid, String matename, String matecardid,
						   Timestamp matebrith, Integer fatherid, String fathername,
						   Integer materid, String matername, Integer girlcount,
						   Integer boycount, Integer operatorid, String checkunit,
						   Timestamp checkdate, Integer uoperatorid, String updateunit,
						   Timestamp updatedate, Timestamp indate, Integer cancel,
						   String memo, String persontel, Timestamp arrivedate,
						   Timestamp leavedate, String conclass, String munitid, String state,
						   String health, String relaparents, String matebwork,
						   String workaddress, String mateaddtel, Integer nowchilden,
						   Timestamp schildbirth, Timestamp singlenodate, String isviolate,
						   String ismatefarmer, String workaddressid, String workname,
						   Timestamp condate, String contramemo, String matedooradd,
						   String matedooraddinfo, Timestamp fmarrydate, String unitname,
						   String addtype, String zjlxdm, String qtzjhm, String fathercode,
						   String gjdm, Timestamp dbdate, String mothercode, String familyhtype) {
		this.persontype = persontype;
		this.name = name;
		this.oldname = oldname;
		this.aliasname = aliasname;
		this.sex = sex;
		this.birth = birth;
		this.doorbirth = doorbirth;
		this.cardid = cardid;
		this.nation = nation;
		this.edudegree = edudegree;
		this.work = work;
		this.party = party;
		this.doorprop = doorprop;
		this.farmer = farmer;
		this.aviso = aviso;
		this.publicize = publicize;
		this.hortation = hortation;
		this.checktype = checktype;
		this.single = single;
		this.workid = workid;
		this.dooraddress = dooraddress;
		this.dooraddressinfo = dooraddressinfo;
		this.nowaddress = nowaddress;
		this.nowaddressinfo = nowaddressinfo;
		this.doortel = doortel;
		this.marrytype = marrytype;
		this.marrychangedate = marrychangedate;
		this.mateid = mateid;
		this.matename = matename;
		this.matecardid = matecardid;
		this.matebrith = matebrith;
		this.fatherid = fatherid;
		this.fathername = fathername;
		this.materid = materid;
		this.matername = matername;
		this.girlcount = girlcount;
		this.boycount = boycount;
		this.operatorid = operatorid;
		this.checkunit = checkunit;
		this.checkdate = checkdate;
		this.uoperatorid = uoperatorid;
		this.updateunit = updateunit;
		this.updatedate = updatedate;
		this.indate = indate;
		this.cancel = cancel;
		this.memo = memo;
		this.persontel = persontel;
		this.arrivedate = arrivedate;
		this.leavedate = leavedate;
		this.conclass = conclass;
		this.munitid = munitid;
		this.state = state;
		this.health = health;
		this.relaparents = relaparents;
		this.matebwork = matebwork;
		this.workaddress = workaddress;
		this.mateaddtel = mateaddtel;
		this.nowchilden = nowchilden;
		this.schildbirth = schildbirth;
		this.singlenodate = singlenodate;
		this.isviolate = isviolate;
		this.ismatefarmer = ismatefarmer;
		this.workaddressid = workaddressid;
		this.workname = workname;
		this.condate = condate;
		this.contramemo = contramemo;
		this.matedooradd = matedooradd;
		this.matedooraddinfo = matedooraddinfo;
		this.fmarrydate = fmarrydate;
		this.unitname = unitname;
		this.addtype = addtype;
		this.zjlxdm = zjlxdm;
		this.qtzjhm = qtzjhm;
		this.fathercode = fathercode;
		this.gjdm = gjdm;
		this.dbdate = dbdate;
		this.mothercode = mothercode;
		this.familyhtype = familyhtype;
	}

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "PERSONID", unique = true, nullable = false)
	public Integer getPersonid() {
		return this.personid;
	}

	public void setPersonid(Integer personid) {
		this.personid = personid;
	}

	@Column(name = "PERSONTYPE", length = 1)
	public String getPersontype() {
		return this.persontype;
	}

	public void setPersontype(String persontype) {
		this.persontype = persontype;
	}

	@Column(name = "NAME", length = 20)
	public String getName() {
		return this.name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@Column(name = "OLDNAME", length = 20)
	public String getOldname() {
		return this.oldname;
	}

	public void setOldname(String oldname) {
		this.oldname = oldname;
	}

	@Column(name = "ALIASNAME", length = 20)
	public String getAliasname() {
		return this.aliasname;
	}

	public void setAliasname(String aliasname) {
		this.aliasname = aliasname;
	}

	@Column(name = "SEX", length = 1)
	public String getSex() {
		return this.sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	@Column(name = "BIRTH", length = 0)
	public Timestamp getBirth() {
		return this.birth;
	}

	public void setBirth(Timestamp birth) {
		this.birth = birth;
	}

	@Column(name = "DOORBIRTH", length = 0)
	public Timestamp getDoorbirth() {
		return this.doorbirth;
	}

	public void setDoorbirth(Timestamp doorbirth) {
		this.doorbirth = doorbirth;
	}

	@Column(name = "CARDID", length = 18)
	public String getCardid() {
		return this.cardid;
	}

	public void setCardid(String cardid) {
		this.cardid = cardid;
	}

	@Column(name = "NATION", length = 2)
	public String getNation() {
		return this.nation;
	}

	public void setNation(String nation) {
		this.nation = nation;
	}

	@Column(name = "EDUDEGREE", length = 2)
	public String getEdudegree() {
		return this.edudegree;
	}

	public void setEdudegree(String edudegree) {
		this.edudegree = edudegree;
	}

	@Column(name = "WORK", length = 3)
	public String getWork() {
		return this.work;
	}

	public void setWork(String work) {
		this.work = work;
	}

	@Column(name = "PARTY", length = 2)
	public String getParty() {
		return this.party;
	}

	public void setParty(String party) {
		this.party = party;
	}

	@Column(name = "DOORPROP", length = 2)
	public String getDoorprop() {
		return this.doorprop;
	}

	public void setDoorprop(String doorprop) {
		this.doorprop = doorprop;
	}

	@Column(name = "FARMER", length = 1)
	public String getFarmer() {
		return this.farmer;
	}

	public void setFarmer(String farmer) {
		this.farmer = farmer;
	}

	@Column(name = "AVISO", length = 1)
	public String getAviso() {
		return this.aviso;
	}

	public void setAviso(String aviso) {
		this.aviso = aviso;
	}

	@Column(name = "PUBLICIZE", length = 1)
	public String getPublicize() {
		return this.publicize;
	}

	public void setPublicize(String publicize) {
		this.publicize = publicize;
	}

	@Column(name = "HORTATION", length = 1)
	public String getHortation() {
		return this.hortation;
	}

	public void setHortation(String hortation) {
		this.hortation = hortation;
	}

	@Column(name = "CHECKTYPE", length = 1)
	public String getChecktype() {
		return this.checktype;
	}

	public void setChecktype(String checktype) {
		this.checktype = checktype;
	}

	@Column(name = "SINGLE", length = 1)
	public String getSingle() {
		return this.single;
	}

	public void setSingle(String single) {
		this.single = single;
	}

	@Column(name = "WORKID")
	public Integer getWorkid() {
		return this.workid;
	}

	public void setWorkid(Integer workid) {
		this.workid = workid;
	}

	@Column(name = "DOORADDRESS", length = 12)
	public String getDooraddress() {
		return this.dooraddress;
	}

	public void setDooraddress(String dooraddress) {
		this.dooraddress = dooraddress;
	}

	@Column(name = "DOORADDRESSINFO", length = 100)
	public String getDooraddressinfo() {
		return this.dooraddressinfo;
	}

	public void setDooraddressinfo(String dooraddressinfo) {
		this.dooraddressinfo = dooraddressinfo;
	}

	@Column(name = "NOWADDRESS", length = 12)
	public String getNowaddress() {
		return this.nowaddress;
	}

	public void setNowaddress(String nowaddress) {
		this.nowaddress = nowaddress;
	}

	@Column(name = "NOWADDRESSINFO", length = 100)
	public String getNowaddressinfo() {
		return this.nowaddressinfo;
	}

	public void setNowaddressinfo(String nowaddressinfo) {
		this.nowaddressinfo = nowaddressinfo;
	}

	@Column(name = "DOORTEL", length = 60)
	public String getDoortel() {
		return this.doortel;
	}

	public void setDoortel(String doortel) {
		this.doortel = doortel;
	}

	@Column(name = "MARRYTYPE", length = 2)
	public String getMarrytype() {
		return this.marrytype;
	}

	public void setMarrytype(String marrytype) {
		this.marrytype = marrytype;
	}

	@Column(name = "MARRYCHANGEDATE", length = 0)
	public Timestamp getMarrychangedate() {
		return this.marrychangedate;
	}

	public void setMarrychangedate(Timestamp marrychangedate) {
		this.marrychangedate = marrychangedate;
	}

	@Column(name = "MATEID")
	public Integer getMateid() {
		return this.mateid;
	}

	public void setMateid(Integer mateid) {
		this.mateid = mateid;
	}

	@Column(name = "MATENAME", length = 30)
	public String getMatename() {
		return this.matename;
	}

	public void setMatename(String matename) {
		this.matename = matename;
	}

	@Column(name = "MATECARDID", length = 18)
	public String getMatecardid() {
		return this.matecardid;
	}

	public void setMatecardid(String matecardid) {
		this.matecardid = matecardid;
	}

	@Column(name = "MATEBRITH", length = 0)
	public Timestamp getMatebrith() {
		return this.matebrith;
	}

	public void setMatebrith(Timestamp matebrith) {
		this.matebrith = matebrith;
	}

	@Column(name = "FATHERID")
	public Integer getFatherid() {
		return this.fatherid;
	}

	public void setFatherid(Integer fatherid) {
		this.fatherid = fatherid;
	}

	@Column(name = "FATHERNAME", length = 20)
	public String getFathername() {
		return this.fathername;
	}

	public void setFathername(String fathername) {
		this.fathername = fathername;
	}

	@Column(name = "MATERID")
	public Integer getMaterid() {
		return this.materid;
	}

	public void setMaterid(Integer materid) {
		this.materid = materid;
	}

	@Column(name = "MATERNAME", length = 20)
	public String getMatername() {
		return this.matername;
	}

	public void setMatername(String matername) {
		this.matername = matername;
	}

	@Column(name = "GIRLCOUNT")
	public Integer getGirlcount() {
		return this.girlcount;
	}

	public void setGirlcount(Integer girlcount) {
		this.girlcount = girlcount;
	}

	@Column(name = "BOYCOUNT")
	public Integer getBoycount() {
		return this.boycount;
	}

	public void setBoycount(Integer boycount) {
		this.boycount = boycount;
	}

	@Column(name = "OPERATORID")
	public Integer getOperatorid() {
		return this.operatorid;
	}

	public void setOperatorid(Integer operatorid) {
		this.operatorid = operatorid;
	}

	@Column(name = "CHECKUNIT", length = 12)
	public String getCheckunit() {
		return this.checkunit;
	}

	public void setCheckunit(String checkunit) {
		this.checkunit = checkunit;
	}

	@Column(name = "CHECKDATE", length = 0)
	public Timestamp getCheckdate() {
		return this.checkdate;
	}

	public void setCheckdate(Timestamp checkdate) {
		this.checkdate = checkdate;
	}

	@Column(name = "UOPERATORID")
	public Integer getUoperatorid() {
		return this.uoperatorid;
	}

	public void setUoperatorid(Integer uoperatorid) {
		this.uoperatorid = uoperatorid;
	}

	@Column(name = "UPDATEUNIT", length = 12)
	public String getUpdateunit() {
		return this.updateunit;
	}

	public void setUpdateunit(String updateunit) {
		this.updateunit = updateunit;
	}

	@Column(name = "UPDATEDATE", length = 0)
	public Timestamp getUpdatedate() {
		return this.updatedate;
	}

	public void setUpdatedate(Timestamp updatedate) {
		this.updatedate = updatedate;
	}

	@Column(name = "INDATE", length = 0)
	public Timestamp getIndate() {
		return this.indate;
	}

	public void setIndate(Timestamp indate) {
		this.indate = indate;
	}

	@Column(name = "CANCEL")
	public Integer getCancel() {
		return this.cancel;
	}

	public void setCancel(Integer cancel) {
		this.cancel = cancel;
	}

	@Column(name = "MEMO", length = 210)
	public String getMemo() {
		return this.memo;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	@Column(name = "PERSONTEL", length = 60)
	public String getPersontel() {
		return this.persontel;
	}

	public void setPersontel(String persontel) {
		this.persontel = persontel;
	}

	@Column(name = "ARRIVEDATE", length = 0)
	public Timestamp getArrivedate() {
		return this.arrivedate;
	}

	public void setArrivedate(Timestamp arrivedate) {
		this.arrivedate = arrivedate;
	}

	@Column(name = "LEAVEDATE", length = 0)
	public Timestamp getLeavedate() {
		return this.leavedate;
	}

	public void setLeavedate(Timestamp leavedate) {
		this.leavedate = leavedate;
	}

	@Column(name = "CONCLASS", length = 3)
	public String getConclass() {
		return this.conclass;
	}

	public void setConclass(String conclass) {
		this.conclass = conclass;
	}

	@Column(name = "MUNITID", length = 12)
	public String getMunitid() {
		return this.munitid;
	}

	public void setMunitid(String munitid) {
		this.munitid = munitid;
	}

	@Column(name = "STATE", length = 1)
	public String getState() {
		return this.state;
	}

	public void setState(String state) {
		this.state = state;
	}

	@Column(name = "HEALTH", length = 2)
	public String getHealth() {
		return this.health;
	}

	public void setHealth(String health) {
		this.health = health;
	}

	@Column(name = "RELAPARENTS", length = 2)
	public String getRelaparents() {
		return this.relaparents;
	}

	public void setRelaparents(String relaparents) {
		this.relaparents = relaparents;
	}

	@Column(name = "MATEBWORK", length = 3)
	public String getMatebwork() {
		return this.matebwork;
	}

	public void setMatebwork(String matebwork) {
		this.matebwork = matebwork;
	}

	@Column(name = "WORKADDRESS", length = 100)
	public String getWorkaddress() {
		return this.workaddress;
	}

	public void setWorkaddress(String workaddress) {
		this.workaddress = workaddress;
	}

	@Column(name = "MATEADDTEL", length = 60)
	public String getMateaddtel() {
		return this.mateaddtel;
	}

	public void setMateaddtel(String mateaddtel) {
		this.mateaddtel = mateaddtel;
	}

	@Column(name = "NOWCHILDEN")
	public Integer getNowchilden() {
		return this.nowchilden;
	}

	public void setNowchilden(Integer nowchilden) {
		this.nowchilden = nowchilden;
	}

	@Column(name = "SCHILDBIRTH", length = 0)
	public Timestamp getSchildbirth() {
		return this.schildbirth;
	}

	public void setSchildbirth(Timestamp schildbirth) {
		this.schildbirth = schildbirth;
	}

	@Column(name = "SINGLENODATE", length = 0)
	public Timestamp getSinglenodate() {
		return this.singlenodate;
	}

	public void setSinglenodate(Timestamp singlenodate) {
		this.singlenodate = singlenodate;
	}

	@Column(name = "ISVIOLATE", length = 1)
	public String getIsviolate() {
		return this.isviolate;
	}

	public void setIsviolate(String isviolate) {
		this.isviolate = isviolate;
	}

	@Column(name = "ISMATEFARMER", length = 2)
	public String getIsmatefarmer() {
		return this.ismatefarmer;
	}

	public void setIsmatefarmer(String ismatefarmer) {
		this.ismatefarmer = ismatefarmer;
	}

	@Column(name = "WORKADDRESSID", length = 12)
	public String getWorkaddressid() {
		return this.workaddressid;
	}

	public void setWorkaddressid(String workaddressid) {
		this.workaddressid = workaddressid;
	}

	@Column(name = "WORKNAME", length = 100)
	public String getWorkname() {
		return this.workname;
	}

	public void setWorkname(String workname) {
		this.workname = workname;
	}

	@Column(name = "CONDATE", length = 0)
	public Timestamp getCondate() {
		return this.condate;
	}

	public void setCondate(Timestamp condate) {
		this.condate = condate;
	}

	@Column(name = "CONTRAMEMO", length = 3)
	public String getContramemo() {
		return this.contramemo;
	}

	public void setContramemo(String contramemo) {
		this.contramemo = contramemo;
	}

	@Column(name = "MATEDOORADD", length = 12)
	public String getMatedooradd() {
		return this.matedooradd;
	}

	public void setMatedooradd(String matedooradd) {
		this.matedooradd = matedooradd;
	}

	@Column(name = "MATEDOORADDINFO", length = 100)
	public String getMatedooraddinfo() {
		return this.matedooraddinfo;
	}

	public void setMatedooraddinfo(String matedooraddinfo) {
		this.matedooraddinfo = matedooraddinfo;
	}

	@Column(name = "FMARRYDATE", length = 0)
	public Timestamp getFmarrydate() {
		return this.fmarrydate;
	}

	public void setFmarrydate(Timestamp fmarrydate) {
		this.fmarrydate = fmarrydate;
	}

	@Column(name = "UNITNAME", length = 100)
	public String getUnitname() {
		return this.unitname;
	}

	public void setUnitname(String unitname) {
		this.unitname = unitname;
	}

	@Column(name = "ADDTYPE", length = 1)
	public String getAddtype() {
		return this.addtype;
	}

	public void setAddtype(String addtype) {
		this.addtype = addtype;
	}

	@Column(name = "ZJLXDM", length = 3)
	public String getZjlxdm() {
		return this.zjlxdm;
	}

	public void setZjlxdm(String zjlxdm) {
		this.zjlxdm = zjlxdm;
	}

	@Column(name = "QTZJHM", length = 20)
	public String getQtzjhm() {
		return this.qtzjhm;
	}

	public void setQtzjhm(String qtzjhm) {
		this.qtzjhm = qtzjhm;
	}

	@Column(name = "FATHERCODE", length = 18)
	public String getFathercode() {
		return this.fathercode;
	}

	public void setFathercode(String fathercode) {
		this.fathercode = fathercode;
	}

	@Column(name = "GJDM", length = 3)
	public String getGjdm() {
		return this.gjdm;
	}

	public void setGjdm(String gjdm) {
		this.gjdm = gjdm;
	}

	@Column(name = "DBDATE", length = 0)
	public Timestamp getDbdate() {
		return this.dbdate;
	}

	public void setDbdate(Timestamp dbdate) {
		this.dbdate = dbdate;
	}

	@Column(name = "MOTHERCODE", length = 18)
	public String getMothercode() {
		return this.mothercode;
	}

	public void setMothercode(String mothercode) {
		this.mothercode = mothercode;
	}

	@Column(name = "FAMILYHTYPE", length = 2)
	public String getFamilyhtype() {
		return this.familyhtype;
	}

	public void setFamilyhtype(String familyhtype) {
		this.familyhtype = familyhtype;
	}

}