package com.gtiit.shr.entity.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;


/**
 * 人员信息表
 */
@TableName("CT_SHR_PERSONINFO")
public class PersonInfoVo implements Serializable {
//    @TableId(
//            type = IdType.ASSIGN_ID
//    )

    @TableField("PERSON_NUMBER")
    private String personNumber;
    @TableField("LAST_NAME")
    private String lastName;
    @TableField("MIDDLE_NAMES")
    private String middleNames;
    @TableField("FIRST_NAME")
    private String firstName;
    @TableField("LOCAL_NAME")
    private String localName;
    @TableField("DISPLAY_NAME")
    private String displayName;
    @TableField("USER_PERSON_TYPE")
    private String userPersonType;
    @TableField("FULL_PART_TIME")
    private String fullPartTime;
    @TableField("HIRE_DATE")
    private String hireDate;
    @TableField("PROBATION_PERIOD")
    private String probationPeriod;
    @TableField("PROBATION_UNIT")
    private String probationUnit;
    @TableField("DATE_PROBATION_END")
    private String dateProbationEnd;
    @TableField("WORK_PHONE")
    private String workPhone;
    @TableField("CELL_PHONE")
    private String cellPhone;
    @TableField("EMAIL_ADDRESS")
    private String emailAddress;
    @TableField("S_EMAIL_ADDRESS")
    private String sEmailAddress;
    @TableField("CITIZENSHIP")
    private String citizenShip;
    @TableField("GENDER")
    private String gender;
    @TableField("DATE_OF_BIRTH")
    private String dateOfBirth;
    @TableField("ETHNICITY")
    private String ethnicity;
    @TableField("HUKOU_TYPE")
    private String hukouType;
    @TableField("POLITICAL_STATUS")
    private String politicalStatus;
    @TableField("TER_DATE")
    private String terDate;
    @TableField("REASON")
    private String reason;
    @TableField("PROFESSIONAL_TITLE")
    private String professionalTitle;
    @TableField("JOB_LEVEL")
    private String jobLevel;
    @TableField("USER_NAME")
    private String userName;
    @TableField("CONTRACT_START_DATE")
    private String contractStartDate;
    @TableField("CONTRACT_END_DATE")
    private String contractEndDate;
    @TableField("ERP_CREATION_DATE")
    private String erpCreationDate;
    @TableField("ERP_LAST_UPDATE_DATE")
    private String erpLastUpdateDate;

    private String id;



    public String getPersonNumber() {
        return this.personNumber;
    }

    public String getLastName() {
        return this.lastName;
    }

    public String getMiddleNames() {
        return this.middleNames;
    }

    public String getFirstName() {
        return this.firstName;
    }

    public String getLocalName() {
        return this.localName;
    }

    public String getDisplayName() {
        return this.displayName;
    }

    public String getUserPersonType() {
        return this.userPersonType;
    }

    public String getFullPartTime() {
        return this.fullPartTime;
    }

    public String getHireDate() {
        return this.hireDate;
    }

    public String getProbationPeriod() {
        return this.probationPeriod;
    }

    public String getProbationUnit() {
        return this.probationUnit;
    }

    public String getDateProbationEnd() {
        return this.dateProbationEnd;
    }

    public String getWorkPhone() {
        return this.workPhone;
    }

    public String getCellPhone() {
        return this.cellPhone;
    }

    public String getEmailAddress() {
        return this.emailAddress;
    }

    public String getSEmailAddress() {
        return this.sEmailAddress;
    }

    public String getCitizenShip() {
        return this.citizenShip;
    }

    public String getGender() {
        return this.gender;
    }

    public String getDateOfBirth() {
        return this.dateOfBirth;
    }

    public String getEthnicity() {
        return this.ethnicity;
    }

    public String getHukouType() {
        return this.hukouType;
    }

    public String getPoliticalStatus() {
        return this.politicalStatus;
    }

    public String getTerDate() {
        return this.terDate;
    }

    public String getReason() {
        return this.reason;
    }

    public String getProfessionalTitle() {
        return this.professionalTitle;
    }

    public String getJobLevel() {
        return this.jobLevel;
    }

    public String getUserName() {
        return this.userName;
    }

    public String getContractStartDate() {
        return this.contractStartDate;
    }

    public String getContractEndDate() {
        return this.contractEndDate;
    }

    public String getErpCreationDate() {
        return this.erpCreationDate;
    }

    public String getErpLastUpdateDate() {
        return this.erpLastUpdateDate;
    }

    public String getId() {
        return this.id;
    }



    public void setPersonNumber(final String personNumber) {
        this.personNumber = personNumber;
    }

    public void setLastName(final String lastName) {
        this.lastName = lastName;
    }

    public void setMiddleNames(final String middleNames) {
        this.middleNames = middleNames;
    }

    public void setFirstName(final String firstName) {
        this.firstName = firstName;
    }

    public void setLocalName(final String localName) {
        this.localName = localName;
    }

    public void setDisplayName(final String displayName) {
        this.displayName = displayName;
    }

    public void setUserPersonType(final String userPersonType) {
        this.userPersonType = userPersonType;
    }

    public void setFullPartTime(final String fullPartTime) {
        this.fullPartTime = fullPartTime;
    }

    public void setHireDate(final String hireDate) {
        this.hireDate = hireDate;
    }

    public void setProbationPeriod(final String probationPeriod) {
        this.probationPeriod = probationPeriod;
    }

    public void setProbationUnit(final String probationUnit) {
        this.probationUnit = probationUnit;
    }

    public void setDateProbationEnd(final String dateProbationEnd) {
        this.dateProbationEnd = dateProbationEnd;
    }

    public void setWorkPhone(final String workPhone) {
        this.workPhone = workPhone;
    }

    public void setCellPhone(final String cellPhone) {
        this.cellPhone = cellPhone;
    }

    public void setEmailAddress(final String emailAddress) {
        this.emailAddress = emailAddress;
    }

    public void setSEmailAddress(final String sEmailAddress) {
        this.sEmailAddress = sEmailAddress;
    }

    public void setCitizenShip(final String citizenShip) {
        this.citizenShip = citizenShip;
    }

    public void setGender(final String gender) {
        this.gender = gender;
    }

    public void setDateOfBirth(final String dateOfBirth) {
        this.dateOfBirth = dateOfBirth;
    }

    public void setEthnicity(final String ethnicity) {
        this.ethnicity = ethnicity;
    }

    public void setHukouType(final String hukouType) {
        this.hukouType = hukouType;
    }

    public void setPoliticalStatus(final String politicalStatus) {
        this.politicalStatus = politicalStatus;
    }

    public void setTerDate(final String terDate) {
        this.terDate = terDate;
    }

    public void setReason(final String reason) {
        this.reason = reason;
    }

    public void setProfessionalTitle(final String professionalTitle) {
        this.professionalTitle = professionalTitle;
    }

    public void setJobLevel(final String jobLevel) {
        this.jobLevel = jobLevel;
    }

    public void setUserName(final String userName) {
        this.userName = userName;
    }

    public void setContractStartDate(final String contractStartDate) {
        this.contractStartDate = contractStartDate;
    }

    public void setContractEndDate(final String contractEndDate) {
        this.contractEndDate = contractEndDate;
    }

    public void setErpCreationDate(final String erpCreationDate) {
        this.erpCreationDate = erpCreationDate;
    }

    public void setErpLastUpdateDate(final String erpLastUpdateDate) {
        this.erpLastUpdateDate = erpLastUpdateDate;
    }

    public void setId(final String id) {
        this.id = id;
    }

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof PersonInfoVo)) {
            return false;
        } else {
            PersonInfoVo other = (PersonInfoVo)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label407: {
                    Object this$id = this.getId();
                    Object other$id = other.getId();
                    if (this$id == null) {
                        if (other$id == null) {
                            break label407;
                        }
                    } else if (this$id.equals(other$id)) {
                        break label407;
                    }

                    return false;
                }

                Object this$personNumber = this.getPersonNumber();
                Object other$personNumber = other.getPersonNumber();
                if (this$personNumber == null) {
                    if (other$personNumber != null) {
                        return false;
                    }
                } else if (!this$personNumber.equals(other$personNumber)) {
                    return false;
                }

                label393: {
                    Object this$lastName = this.getLastName();
                    Object other$lastName = other.getLastName();
                    if (this$lastName == null) {
                        if (other$lastName == null) {
                            break label393;
                        }
                    } else if (this$lastName.equals(other$lastName)) {
                        break label393;
                    }

                    return false;
                }

                Object this$middleNames = this.getMiddleNames();
                Object other$middleNames = other.getMiddleNames();
                if (this$middleNames == null) {
                    if (other$middleNames != null) {
                        return false;
                    }
                } else if (!this$middleNames.equals(other$middleNames)) {
                    return false;
                }

                label379: {
                    Object this$firstName = this.getFirstName();
                    Object other$firstName = other.getFirstName();
                    if (this$firstName == null) {
                        if (other$firstName == null) {
                            break label379;
                        }
                    } else if (this$firstName.equals(other$firstName)) {
                        break label379;
                    }

                    return false;
                }

                Object this$localName = this.getLocalName();
                Object other$localName = other.getLocalName();
                if (this$localName == null) {
                    if (other$localName != null) {
                        return false;
                    }
                } else if (!this$localName.equals(other$localName)) {
                    return false;
                }

                label365: {
                    Object this$displayName = this.getDisplayName();
                    Object other$displayName = other.getDisplayName();
                    if (this$displayName == null) {
                        if (other$displayName == null) {
                            break label365;
                        }
                    } else if (this$displayName.equals(other$displayName)) {
                        break label365;
                    }

                    return false;
                }

                label358: {
                    Object this$userPersonType = this.getUserPersonType();
                    Object other$userPersonType = other.getUserPersonType();
                    if (this$userPersonType == null) {
                        if (other$userPersonType == null) {
                            break label358;
                        }
                    } else if (this$userPersonType.equals(other$userPersonType)) {
                        break label358;
                    }

                    return false;
                }

                Object this$fullPartTime = this.getFullPartTime();
                Object other$fullPartTime = other.getFullPartTime();
                if (this$fullPartTime == null) {
                    if (other$fullPartTime != null) {
                        return false;
                    }
                } else if (!this$fullPartTime.equals(other$fullPartTime)) {
                    return false;
                }

                label344: {
                    Object this$hireDate = this.getHireDate();
                    Object other$hireDate = other.getHireDate();
                    if (this$hireDate == null) {
                        if (other$hireDate == null) {
                            break label344;
                        }
                    } else if (this$hireDate.equals(other$hireDate)) {
                        break label344;
                    }

                    return false;
                }

                label337: {
                    Object this$probationPeriod = this.getProbationPeriod();
                    Object other$probationPeriod = other.getProbationPeriod();
                    if (this$probationPeriod == null) {
                        if (other$probationPeriod == null) {
                            break label337;
                        }
                    } else if (this$probationPeriod.equals(other$probationPeriod)) {
                        break label337;
                    }

                    return false;
                }

                Object this$probationUnit = this.getProbationUnit();
                Object other$probationUnit = other.getProbationUnit();
                if (this$probationUnit == null) {
                    if (other$probationUnit != null) {
                        return false;
                    }
                } else if (!this$probationUnit.equals(other$probationUnit)) {
                    return false;
                }

                Object this$dateProbationEnd = this.getDateProbationEnd();
                Object other$dateProbationEnd = other.getDateProbationEnd();
                if (this$dateProbationEnd == null) {
                    if (other$dateProbationEnd != null) {
                        return false;
                    }
                } else if (!this$dateProbationEnd.equals(other$dateProbationEnd)) {
                    return false;
                }

                label316: {
                    Object this$workPhone = this.getWorkPhone();
                    Object other$workPhone = other.getWorkPhone();
                    if (this$workPhone == null) {
                        if (other$workPhone == null) {
                            break label316;
                        }
                    } else if (this$workPhone.equals(other$workPhone)) {
                        break label316;
                    }

                    return false;
                }

                Object this$cellPhone = this.getCellPhone();
                Object other$cellPhone = other.getCellPhone();
                if (this$cellPhone == null) {
                    if (other$cellPhone != null) {
                        return false;
                    }
                } else if (!this$cellPhone.equals(other$cellPhone)) {
                    return false;
                }

                Object this$emailAddress = this.getEmailAddress();
                Object other$emailAddress = other.getEmailAddress();
                if (this$emailAddress == null) {
                    if (other$emailAddress != null) {
                        return false;
                    }
                } else if (!this$emailAddress.equals(other$emailAddress)) {
                    return false;
                }

                label295: {
                    Object this$sEmailAddress = this.getSEmailAddress();
                    Object other$sEmailAddress = other.getSEmailAddress();
                    if (this$sEmailAddress == null) {
                        if (other$sEmailAddress == null) {
                            break label295;
                        }
                    } else if (this$sEmailAddress.equals(other$sEmailAddress)) {
                        break label295;
                    }

                    return false;
                }

                Object this$citizenShip = this.getCitizenShip();
                Object other$citizenShip = other.getCitizenShip();
                if (this$citizenShip == null) {
                    if (other$citizenShip != null) {
                        return false;
                    }
                } else if (!this$citizenShip.equals(other$citizenShip)) {
                    return false;
                }

                label281: {
                    Object this$gender = this.getGender();
                    Object other$gender = other.getGender();
                    if (this$gender == null) {
                        if (other$gender == null) {
                            break label281;
                        }
                    } else if (this$gender.equals(other$gender)) {
                        break label281;
                    }

                    return false;
                }

                Object this$dateOfBirth = this.getDateOfBirth();
                Object other$dateOfBirth = other.getDateOfBirth();
                if (this$dateOfBirth == null) {
                    if (other$dateOfBirth != null) {
                        return false;
                    }
                } else if (!this$dateOfBirth.equals(other$dateOfBirth)) {
                    return false;
                }

                label267: {
                    Object this$ethnicity = this.getEthnicity();
                    Object other$ethnicity = other.getEthnicity();
                    if (this$ethnicity == null) {
                        if (other$ethnicity == null) {
                            break label267;
                        }
                    } else if (this$ethnicity.equals(other$ethnicity)) {
                        break label267;
                    }

                    return false;
                }

                Object this$hukouType = this.getHukouType();
                Object other$hukouType = other.getHukouType();
                if (this$hukouType == null) {
                    if (other$hukouType != null) {
                        return false;
                    }
                } else if (!this$hukouType.equals(other$hukouType)) {
                    return false;
                }

                label253: {
                    Object this$politicalStatus = this.getPoliticalStatus();
                    Object other$politicalStatus = other.getPoliticalStatus();
                    if (this$politicalStatus == null) {
                        if (other$politicalStatus == null) {
                            break label253;
                        }
                    } else if (this$politicalStatus.equals(other$politicalStatus)) {
                        break label253;
                    }

                    return false;
                }

                label246: {
                    Object this$terDate = this.getTerDate();
                    Object other$terDate = other.getTerDate();
                    if (this$terDate == null) {
                        if (other$terDate == null) {
                            break label246;
                        }
                    } else if (this$terDate.equals(other$terDate)) {
                        break label246;
                    }

                    return false;
                }

                Object this$reason = this.getReason();
                Object other$reason = other.getReason();
                if (this$reason == null) {
                    if (other$reason != null) {
                        return false;
                    }
                } else if (!this$reason.equals(other$reason)) {
                    return false;
                }

                label232: {
                    Object this$professionalTitle = this.getProfessionalTitle();
                    Object other$professionalTitle = other.getProfessionalTitle();
                    if (this$professionalTitle == null) {
                        if (other$professionalTitle == null) {
                            break label232;
                        }
                    } else if (this$professionalTitle.equals(other$professionalTitle)) {
                        break label232;
                    }

                    return false;
                }

                label225: {
                    Object this$jobLevel = this.getJobLevel();
                    Object other$jobLevel = other.getJobLevel();
                    if (this$jobLevel == null) {
                        if (other$jobLevel == null) {
                            break label225;
                        }
                    } else if (this$jobLevel.equals(other$jobLevel)) {
                        break label225;
                    }

                    return false;
                }

                Object this$userName = this.getUserName();
                Object other$userName = other.getUserName();
                if (this$userName == null) {
                    if (other$userName != null) {
                        return false;
                    }
                } else if (!this$userName.equals(other$userName)) {
                    return false;
                }

                Object this$contractStartDate = this.getContractStartDate();
                Object other$contractStartDate = other.getContractStartDate();
                if (this$contractStartDate == null) {
                    if (other$contractStartDate != null) {
                        return false;
                    }
                } else if (!this$contractStartDate.equals(other$contractStartDate)) {
                    return false;
                }

                label204: {
                    Object this$contractEndDate = this.getContractEndDate();
                    Object other$contractEndDate = other.getContractEndDate();
                    if (this$contractEndDate == null) {
                        if (other$contractEndDate == null) {
                            break label204;
                        }
                    } else if (this$contractEndDate.equals(other$contractEndDate)) {
                        break label204;
                    }

                    return false;
                }

                Object this$erpCreationDate = this.getErpCreationDate();
                Object other$erpCreationDate = other.getErpCreationDate();
                if (this$erpCreationDate == null) {
                    if (other$erpCreationDate != null) {
                        return false;
                    }
                } else if (!this$erpCreationDate.equals(other$erpCreationDate)) {
                    return false;
                }

                Object this$erpLastUpdateDate = this.getErpLastUpdateDate();
                Object other$erpLastUpdateDate = other.getErpLastUpdateDate();
                if (this$erpLastUpdateDate == null) {
                    if (other$erpLastUpdateDate != null) {
                        return false;
                    }
                } else if (!this$erpLastUpdateDate.equals(other$erpLastUpdateDate)) {
                    return false;
                }

                Object this$shrId = this.getId();
                Object other$shrId = other.getId();
                if (this$shrId == null) {
                    if (other$shrId != null) {
                        return false;
                    }
                } else if (!this$shrId.equals(other$shrId)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof PersonInfoVo;
    }

    public int hashCode() {
        boolean PRIME = true;
        int result = 1;
        Object $id = this.getId();
        result = result * 59 + ($id == null ? 43 : $id.hashCode());
        Object $personNumber = this.getPersonNumber();
        result = result * 59 + ($personNumber == null ? 43 : $personNumber.hashCode());
        Object $lastName = this.getLastName();
        result = result * 59 + ($lastName == null ? 43 : $lastName.hashCode());
        Object $middleNames = this.getMiddleNames();
        result = result * 59 + ($middleNames == null ? 43 : $middleNames.hashCode());
        Object $firstName = this.getFirstName();
        result = result * 59 + ($firstName == null ? 43 : $firstName.hashCode());
        Object $localName = this.getLocalName();
        result = result * 59 + ($localName == null ? 43 : $localName.hashCode());
        Object $displayName = this.getDisplayName();
        result = result * 59 + ($displayName == null ? 43 : $displayName.hashCode());
        Object $userPersonType = this.getUserPersonType();
        result = result * 59 + ($userPersonType == null ? 43 : $userPersonType.hashCode());
        Object $fullPartTime = this.getFullPartTime();
        result = result * 59 + ($fullPartTime == null ? 43 : $fullPartTime.hashCode());
        Object $hireDate = this.getHireDate();
        result = result * 59 + ($hireDate == null ? 43 : $hireDate.hashCode());
        Object $probationPeriod = this.getProbationPeriod();
        result = result * 59 + ($probationPeriod == null ? 43 : $probationPeriod.hashCode());
        Object $probationUnit = this.getProbationUnit();
        result = result * 59 + ($probationUnit == null ? 43 : $probationUnit.hashCode());
        Object $dateProbationEnd = this.getDateProbationEnd();
        result = result * 59 + ($dateProbationEnd == null ? 43 : $dateProbationEnd.hashCode());
        Object $workPhone = this.getWorkPhone();
        result = result * 59 + ($workPhone == null ? 43 : $workPhone.hashCode());
        Object $cellPhone = this.getCellPhone();
        result = result * 59 + ($cellPhone == null ? 43 : $cellPhone.hashCode());
        Object $emailAddress = this.getEmailAddress();
        result = result * 59 + ($emailAddress == null ? 43 : $emailAddress.hashCode());
        Object $sEmailAddress = this.getSEmailAddress();
        result = result * 59 + ($sEmailAddress == null ? 43 : $sEmailAddress.hashCode());
        Object $citizenShip = this.getCitizenShip();
        result = result * 59 + ($citizenShip == null ? 43 : $citizenShip.hashCode());
        Object $gender = this.getGender();
        result = result * 59 + ($gender == null ? 43 : $gender.hashCode());
        Object $dateOfBirth = this.getDateOfBirth();
        result = result * 59 + ($dateOfBirth == null ? 43 : $dateOfBirth.hashCode());
        Object $ethnicity = this.getEthnicity();
        result = result * 59 + ($ethnicity == null ? 43 : $ethnicity.hashCode());
        Object $hukouType = this.getHukouType();
        result = result * 59 + ($hukouType == null ? 43 : $hukouType.hashCode());
        Object $politicalStatus = this.getPoliticalStatus();
        result = result * 59 + ($politicalStatus == null ? 43 : $politicalStatus.hashCode());
        Object $terDate = this.getTerDate();
        result = result * 59 + ($terDate == null ? 43 : $terDate.hashCode());
        Object $reason = this.getReason();
        result = result * 59 + ($reason == null ? 43 : $reason.hashCode());
        Object $professionalTitle = this.getProfessionalTitle();
        result = result * 59 + ($professionalTitle == null ? 43 : $professionalTitle.hashCode());
        Object $jobLevel = this.getJobLevel();
        result = result * 59 + ($jobLevel == null ? 43 : $jobLevel.hashCode());
        Object $userName = this.getUserName();
        result = result * 59 + ($userName == null ? 43 : $userName.hashCode());
        Object $contractStartDate = this.getContractStartDate();
        result = result * 59 + ($contractStartDate == null ? 43 : $contractStartDate.hashCode());
        Object $contractEndDate = this.getContractEndDate();
        result = result * 59 + ($contractEndDate == null ? 43 : $contractEndDate.hashCode());
        Object $erpCreationDate = this.getErpCreationDate();
        result = result * 59 + ($erpCreationDate == null ? 43 : $erpCreationDate.hashCode());
        Object $erpLastUpdateDate = this.getErpLastUpdateDate();
        result = result * 59 + ($erpLastUpdateDate == null ? 43 : $erpLastUpdateDate.hashCode());
        Object $shrId = this.getId();
        result = result * 59 + ($shrId == null ? 43 : $shrId.hashCode());
        return result;
    }

    public String toString() {
        return "PersonInfoVo(id=" + this.getId() + ", personNumber=" + this.getPersonNumber() + ", lastName=" + this.getLastName() + ", middleNames=" + this.getMiddleNames() + ", firstName=" + this.getFirstName() + ", localName=" + this.getLocalName() + ", displayName=" + this.getDisplayName() + ", userPersonType=" + this.getUserPersonType() + ", fullPartTime=" + this.getFullPartTime() + ", hireDate=" + this.getHireDate() + ", probationPeriod=" + this.getProbationPeriod() + ", probationUnit=" + this.getProbationUnit() + ", dateProbationEnd=" + this.getDateProbationEnd() + ", workPhone=" + this.getWorkPhone() + ", cellPhone=" + this.getCellPhone() + ", emailAddress=" + this.getEmailAddress() + ", sEmailAddress=" + this.getSEmailAddress() + ", citizenShip=" + this.getCitizenShip() + ", gender=" + this.getGender() + ", dateOfBirth=" + this.getDateOfBirth() + ", ethnicity=" + this.getEthnicity() + ", hukouType=" + this.getHukouType() + ", politicalStatus=" + this.getPoliticalStatus() + ", terDate=" + this.getTerDate() + ", reason=" + this.getReason() + ", professionalTitle=" + this.getProfessionalTitle() + ", jobLevel=" + this.getJobLevel() + ", userName=" + this.getUserName() + ", contractStartDate=" + this.getContractStartDate() + ", contractEndDate=" + this.getContractEndDate() + ", erpCreationDate=" + this.getErpCreationDate() + ", erpLastUpdateDate=" + this.getErpLastUpdateDate() + " )";
    }
}
