Explorar o código

员工信息更新

yuanzhi_kuang hai 3 meses
pai
achega
b3a3a8158e

+ 247 - 515
src/main/java/com/gtiit/shr/entity/vo/PersonInfoVo.java

@@ -1,21 +1,19 @@
 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;
-
+import java.sql.Date;
+import java.sql.Timestamp;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Objects;
 
 /**
  * 人员信息表
  */
 @TableName("CT_SHR_PERSONINFO")
 public class PersonInfoVo implements Serializable {
-//    @TableId(
-//            type = IdType.ASSIGN_ID
-//    )
-
     @TableField("PERSON_NUMBER")
     private String personNumber;
     @TableField("LAST_NAME")
@@ -33,13 +31,13 @@ public class PersonInfoVo implements Serializable {
     @TableField("FULL_PART_TIME")
     private String fullPartTime;
     @TableField("HIRE_DATE")
-    private String hireDate;
+    private Date hireDate;
     @TableField("PROBATION_PERIOD")
     private String probationPeriod;
     @TableField("PROBATION_UNIT")
     private String probationUnit;
     @TableField("DATE_PROBATION_END")
-    private String dateProbationEnd;
+    private Date dateProbationEnd;
     @TableField("WORK_PHONE")
     private String workPhone;
     @TableField("CELL_PHONE")
@@ -53,7 +51,7 @@ public class PersonInfoVo implements Serializable {
     @TableField("GENDER")
     private String gender;
     @TableField("DATE_OF_BIRTH")
-    private String dateOfBirth;
+    private Date dateOfBirth;
     @TableField("ETHNICITY")
     private String ethnicity;
     @TableField("HUKOU_TYPE")
@@ -61,7 +59,7 @@ public class PersonInfoVo implements Serializable {
     @TableField("POLITICAL_STATUS")
     private String politicalStatus;
     @TableField("TER_DATE")
-    private String terDate;
+    private Date terDate;
     @TableField("REASON")
     private String reason;
     @TableField("PROFESSIONAL_TITLE")
@@ -71,17 +69,19 @@ public class PersonInfoVo implements Serializable {
     @TableField("USER_NAME")
     private String userName;
     @TableField("CONTRACT_START_DATE")
-    private String contractStartDate;
+    private Date contractStartDate;
     @TableField("CONTRACT_END_DATE")
-    private String contractEndDate;
+    private Date contractEndDate;
     @TableField("ERP_CREATION_DATE")
-    private String erpCreationDate;
+    private Timestamp erpCreationDate;
     @TableField("ERP_LAST_UPDATE_DATE")
-    private String erpLastUpdateDate;
+    private Timestamp erpLastUpdateDate;
 
     private String id;
 
-
+    // 日期格式转换器
+    private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
+    private static final SimpleDateFormat DATE_ONLY_FORMAT = new SimpleDateFormat("yyyy-MM-dd");
 
     public String getPersonNumber() {
         return this.personNumber;
@@ -115,7 +115,7 @@ public class PersonInfoVo implements Serializable {
         return this.fullPartTime;
     }
 
-    public String getHireDate() {
+    public Date getHireDate() {
         return this.hireDate;
     }
 
@@ -127,7 +127,7 @@ public class PersonInfoVo implements Serializable {
         return this.probationUnit;
     }
 
-    public String getDateProbationEnd() {
+    public Date getDateProbationEnd() {
         return this.dateProbationEnd;
     }
 
@@ -155,7 +155,7 @@ public class PersonInfoVo implements Serializable {
         return this.gender;
     }
 
-    public String getDateOfBirth() {
+    public Date getDateOfBirth() {
         return this.dateOfBirth;
     }
 
@@ -171,7 +171,7 @@ public class PersonInfoVo implements Serializable {
         return this.politicalStatus;
     }
 
-    public String getTerDate() {
+    public Date getTerDate() {
         return this.terDate;
     }
 
@@ -191,19 +191,19 @@ public class PersonInfoVo implements Serializable {
         return this.userName;
     }
 
-    public String getContractStartDate() {
+    public Date getContractStartDate() {
         return this.contractStartDate;
     }
 
-    public String getContractEndDate() {
+    public Date getContractEndDate() {
         return this.contractEndDate;
     }
 
-    public String getErpCreationDate() {
+    public Timestamp getErpCreationDate() {
         return this.erpCreationDate;
     }
 
-    public String getErpLastUpdateDate() {
+    public Timestamp getErpLastUpdateDate() {
         return this.erpLastUpdateDate;
     }
 
@@ -211,8 +211,6 @@ public class PersonInfoVo implements Serializable {
         return this.id;
     }
 
-
-
     public void setPersonNumber(final String personNumber) {
         this.personNumber = personNumber;
     }
@@ -245,10 +243,28 @@ public class PersonInfoVo implements Serializable {
         this.fullPartTime = fullPartTime;
     }
 
-    public void setHireDate(final String hireDate) {
+    public void setHireDate(final Date hireDate) {
         this.hireDate = hireDate;
     }
 
+    public void setHireDate(final String hireDate) {
+        if (hireDate != null && !hireDate.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(hireDate);
+                this.hireDate = new Date(utilDate.getTime());
+            } catch (ParseException e) {
+                try {
+                    java.util.Date utilDate = DATE_ONLY_FORMAT.parse(hireDate);
+                    this.hireDate = new Date(utilDate.getTime());
+                } catch (ParseException ex) {
+                    throw new RuntimeException("Failed to parse hire date: " + hireDate, ex);
+                }
+            }
+        } else {
+            this.hireDate = null;
+        }
+    }
+
     public void setProbationPeriod(final String probationPeriod) {
         this.probationPeriod = probationPeriod;
     }
@@ -257,10 +273,28 @@ public class PersonInfoVo implements Serializable {
         this.probationUnit = probationUnit;
     }
 
-    public void setDateProbationEnd(final String dateProbationEnd) {
+    public void setDateProbationEnd(final Date dateProbationEnd) {
         this.dateProbationEnd = dateProbationEnd;
     }
 
+    public void setDateProbationEnd(final String dateProbationEnd) {
+        if (dateProbationEnd != null && !dateProbationEnd.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(dateProbationEnd);
+                this.dateProbationEnd = new Date(utilDate.getTime());
+            } catch (ParseException e) {
+                try {
+                    java.util.Date utilDate = DATE_ONLY_FORMAT.parse(dateProbationEnd);
+                    this.dateProbationEnd = new Date(utilDate.getTime());
+                } catch (ParseException ex) {
+                    throw new RuntimeException("Failed to parse probation end date: " + dateProbationEnd, ex);
+                }
+            }
+        } else {
+            this.dateProbationEnd = null;
+        }
+    }
+
     public void setWorkPhone(final String workPhone) {
         this.workPhone = workPhone;
     }
@@ -285,10 +319,28 @@ public class PersonInfoVo implements Serializable {
         this.gender = gender;
     }
 
-    public void setDateOfBirth(final String dateOfBirth) {
+    public void setDateOfBirth(final Date dateOfBirth) {
         this.dateOfBirth = dateOfBirth;
     }
 
+    public void setDateOfBirth(final String dateOfBirth) {
+        if (dateOfBirth != null && !dateOfBirth.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(dateOfBirth);
+                this.dateOfBirth = new Date(utilDate.getTime());
+            } catch (ParseException e) {
+                try {
+                    java.util.Date utilDate = DATE_ONLY_FORMAT.parse(dateOfBirth);
+                    this.dateOfBirth = new Date(utilDate.getTime());
+                } catch (ParseException ex) {
+                    throw new RuntimeException("Failed to parse date of birth: " + dateOfBirth, ex);
+                }
+            }
+        } else {
+            this.dateOfBirth = null;
+        }
+    }
+
     public void setEthnicity(final String ethnicity) {
         this.ethnicity = ethnicity;
     }
@@ -301,10 +353,28 @@ public class PersonInfoVo implements Serializable {
         this.politicalStatus = politicalStatus;
     }
 
-    public void setTerDate(final String terDate) {
+    public void setTerDate(final Date terDate) {
         this.terDate = terDate;
     }
 
+    public void setTerDate(final String terDate) {
+        if (terDate != null && !terDate.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(terDate);
+                this.terDate = new Date(utilDate.getTime());
+            } catch (ParseException e) {
+                try {
+                    java.util.Date utilDate = DATE_ONLY_FORMAT.parse(terDate);
+                    this.terDate = new Date(utilDate.getTime());
+                } catch (ParseException ex) {
+                    throw new RuntimeException("Failed to parse termination date: " + terDate, ex);
+                }
+            }
+        } else {
+            this.terDate = null;
+        }
+    }
+
     public void setReason(final String reason) {
         this.reason = reason;
     }
@@ -321,512 +391,174 @@ public class PersonInfoVo implements Serializable {
         this.userName = userName;
     }
 
-    public void setContractStartDate(final String contractStartDate) {
+    public void setContractStartDate(final Date contractStartDate) {
         this.contractStartDate = contractStartDate;
     }
 
-    public void setContractEndDate(final String contractEndDate) {
-        this.contractEndDate = contractEndDate;
+    public void setContractStartDate(final String contractStartDate) {
+        if (contractStartDate != null && !contractStartDate.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(contractStartDate);
+                this.contractStartDate = new Date(utilDate.getTime());
+            } catch (ParseException e) {
+                try {
+                    java.util.Date utilDate = DATE_ONLY_FORMAT.parse(contractStartDate);
+                    this.contractStartDate = new Date(utilDate.getTime());
+                } catch (ParseException ex) {
+                    throw new RuntimeException("Failed to parse contract start date: " + contractStartDate, ex);
+                }
+            }
+        } else {
+            this.contractStartDate = null;
+        }
     }
 
-    public void setErpCreationDate(final String erpCreationDate) {
-        this.erpCreationDate = erpCreationDate;
+    public void setContractEndDate(final Date contractEndDate) {
+        this.contractEndDate = contractEndDate;
     }
 
-    public void setErpLastUpdateDate(final String erpLastUpdateDate) {
-        this.erpLastUpdateDate = erpLastUpdateDate;
+    public void setContractEndDate(final String contractEndDate) {
+        if (contractEndDate != null && !contractEndDate.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(contractEndDate);
+                this.contractEndDate = new Date(utilDate.getTime());
+            } catch (ParseException e) {
+                try {
+                    java.util.Date utilDate = DATE_ONLY_FORMAT.parse(contractEndDate);
+                    this.contractEndDate = new Date(utilDate.getTime());
+                } catch (ParseException ex) {
+                    throw new RuntimeException("Failed to parse contract end date: " + contractEndDate, ex);
+                }
+            }
+        } else {
+            this.contractEndDate = null;
+        }
     }
 
-    public void setId(final String id) {
-        this.id = id;
+    public void setErpCreationDate(final Timestamp erpCreationDate) {
+        this.erpCreationDate = erpCreationDate;
     }
 
-    public boolean equals(final Object o) {
-        if (o == this) {
-            return true;
-        } else if (!(o instanceof PersonInfoVo)) {
-            return false;
+    public void setErpCreationDate(final String erpCreationDate) {
+        if (erpCreationDate != null && !erpCreationDate.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(erpCreationDate);
+                this.erpCreationDate = new Timestamp(utilDate.getTime());
+            } catch (ParseException e) {
+                throw new RuntimeException("Failed to parse ERP creation date: " + erpCreationDate, e);
+            }
         } 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;
-                }
+            this.erpCreationDate = null;
+        }
+    }
 
-                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;
-                }
+    public void setErpLastUpdateDate(final Timestamp erpLastUpdateDate) {
+        this.erpLastUpdateDate = erpLastUpdateDate;
+    }
 
-                return true;
+    public void setErpLastUpdateDate(final String erpLastUpdateDate) {
+        if (erpLastUpdateDate != null && !erpLastUpdateDate.trim().isEmpty()) {
+            try {
+                java.util.Date utilDate = DATE_FORMAT.parse(erpLastUpdateDate);
+                this.erpLastUpdateDate = new Timestamp(utilDate.getTime());
+            } catch (ParseException e) {
+                throw new RuntimeException("Failed to parse ERP last update date: " + erpLastUpdateDate, e);
             }
+        } else {
+            this.erpLastUpdateDate = null;
         }
     }
 
-    protected boolean canEqual(final Object other) {
-        return other instanceof PersonInfoVo;
+    public void setId(final String id) {
+        this.id = id;
     }
 
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        PersonInfoVo that = (PersonInfoVo) o;
+        return Objects.equals(personNumber, that.personNumber) &&
+                Objects.equals(lastName, that.lastName) &&
+                Objects.equals(middleNames, that.middleNames) &&
+                Objects.equals(firstName, that.firstName) &&
+                Objects.equals(localName, that.localName) &&
+                Objects.equals(displayName, that.displayName) &&
+                Objects.equals(userPersonType, that.userPersonType) &&
+                Objects.equals(fullPartTime, that.fullPartTime) &&
+                Objects.equals(hireDate, that.hireDate) &&
+                Objects.equals(probationPeriod, that.probationPeriod) &&
+                Objects.equals(probationUnit, that.probationUnit) &&
+                Objects.equals(dateProbationEnd, that.dateProbationEnd) &&
+                Objects.equals(workPhone, that.workPhone) &&
+                Objects.equals(cellPhone, that.cellPhone) &&
+                Objects.equals(emailAddress, that.emailAddress) &&
+                Objects.equals(sEmailAddress, that.sEmailAddress) &&
+                Objects.equals(citizenShip, that.citizenShip) &&
+                Objects.equals(gender, that.gender) &&
+                Objects.equals(dateOfBirth, that.dateOfBirth) &&
+                Objects.equals(ethnicity, that.ethnicity) &&
+                Objects.equals(hukouType, that.hukouType) &&
+                Objects.equals(politicalStatus, that.politicalStatus) &&
+                Objects.equals(terDate, that.terDate) &&
+                Objects.equals(reason, that.reason) &&
+                Objects.equals(professionalTitle, that.professionalTitle) &&
+                Objects.equals(jobLevel, that.jobLevel) &&
+                Objects.equals(userName, that.userName) &&
+                Objects.equals(contractStartDate, that.contractStartDate) &&
+                Objects.equals(contractEndDate, that.contractEndDate) &&
+                Objects.equals(erpCreationDate, that.erpCreationDate) &&
+                Objects.equals(erpLastUpdateDate, that.erpLastUpdateDate) &&
+                Objects.equals(id, that.id);
+    }
+
+    @Override
     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;
+        return Objects.hash(
+                personNumber, lastName, middleNames, firstName, localName, displayName,
+                userPersonType, fullPartTime, hireDate, probationPeriod, probationUnit,
+                dateProbationEnd, workPhone, cellPhone, emailAddress, sEmailAddress,
+                citizenShip, gender, dateOfBirth, ethnicity, hukouType, politicalStatus,
+                terDate, reason, professionalTitle, jobLevel, userName, contractStartDate,
+                contractEndDate, erpCreationDate, erpLastUpdateDate, id
+        );
     }
 
+    @Override
     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() + " )";
-    }
-}
+        return "PersonInfoVo{" +
+                "personNumber='" + personNumber + '\'' +
+                ", lastName='" + lastName + '\'' +
+                ", middleNames='" + middleNames + '\'' +
+                ", firstName='" + firstName + '\'' +
+                ", localName='" + localName + '\'' +
+                ", displayName='" + displayName + '\'' +
+                ", userPersonType='" + userPersonType + '\'' +
+                ", fullPartTime='" + fullPartTime + '\'' +
+                ", hireDate=" + hireDate +
+                ", probationPeriod='" + probationPeriod + '\'' +
+                ", probationUnit='" + probationUnit + '\'' +
+                ", dateProbationEnd=" + dateProbationEnd +
+                ", workPhone='" + workPhone + '\'' +
+                ", cellPhone='" + cellPhone + '\'' +
+                ", emailAddress='" + emailAddress + '\'' +
+                ", sEmailAddress='" + sEmailAddress + '\'' +
+                ", citizenShip='" + citizenShip + '\'' +
+                ", gender='" + gender + '\'' +
+                ", dateOfBirth=" + dateOfBirth +
+                ", ethnicity='" + ethnicity + '\'' +
+                ", hukouType='" + hukouType + '\'' +
+                ", politicalStatus='" + politicalStatus + '\'' +
+                ", terDate=" + terDate +
+                ", reason='" + reason + '\'' +
+                ", professionalTitle='" + professionalTitle + '\'' +
+                ", jobLevel='" + jobLevel + '\'' +
+                ", userName='" + userName + '\'' +
+                ", contractStartDate=" + contractStartDate +
+                ", contractEndDate=" + contractEndDate +
+                ", erpCreationDate=" + erpCreationDate +
+                ", erpLastUpdateDate=" + erpLastUpdateDate +
+                ", id='" + id + '\'' +
+                '}';
+    }
+}

+ 10 - 0
src/main/java/com/gtiit/shr/mapper/PersonMapper.java

@@ -3,6 +3,16 @@ package com.gtiit.shr.mapper;
 import com.gtiit.shr.entity.vo.PersonInfoVo;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 @Mapper
 public interface PersonMapper extends RootMapper<PersonInfoVo> {
+
+    // 插入单条数据
+    int insert(PersonInfoVo personInfo);
+
+    // 批量插入数据
+    int insertBatch(List<PersonInfoVo> personInfoList);
+
+
 }

+ 7 - 0
src/main/resources/application-prod.yml

@@ -63,6 +63,13 @@ api:
     top: OU=Users,OU=GTIIT,DC=gtiit,DC=edu,DC=cn
     userPassword: Qwert1234%
 
+
+mybatis:
+  mapper-locations: classpath*:mapper/*.xml
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+
+
 #定时任务配置
 scheduled:
   #考勤打卡 每天凌晨00:00:10和05:00:10 able为1是可用  2是禁用

+ 4 - 0
src/main/resources/application-sit.yml

@@ -67,6 +67,10 @@ api:
     top: OU=Users,OU=GTIIT,DC=uat-gt,DC=local  # 与root一致
     userPassword: Gtiit@2025
 
+mybatis:
+  mapper-locations: classpath*:mapper/*.xml
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
 
 #定时任务配置
 scheduled:

+ 7 - 0
src/main/resources/application-uat.yml

@@ -72,6 +72,13 @@ api:
     #新增用户默认密码
     userPassword: ENC(OhTdzIgbWTPyVadhjDYRKo5anB/kVypJ)
 
+
+mybatis:
+  mapper-locations: classpath*:mapper/*.xml
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+
+
 #定时任务配置
 scheduled:
   #考勤打卡 每天凌晨00:00:10和05:00:10 able为1是可用  2是禁用

+ 54 - 0
src/main/resources/mapper/PersonMapper.xml

@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gtiit.shr.mapper.PersonMapper">
+
+    <!-- 插入单条数据的SQL语句 -->
+    <insert id="insert">
+        INSERT INTO CT_SHR_PERSONINFO (
+            id, PERSON_NUMBER, LAST_NAME, MIDDLE_NAMES, FIRST_NAME,
+            LOCAL_NAME, DISPLAY_NAME, USER_PERSON_TYPE, FULL_PART_TIME,
+            HIRE_DATE, PROBATION_PERIOD, PROBATION_UNIT, DATE_PROBATION_END,
+            WORK_PHONE, CELL_PHONE, EMAIL_ADDRESS, S_EMAIL_ADDRESS,
+            CITIZENSHIP, GENDER, DATE_OF_BIRTH, ETHNICITY, HUKOU_TYPE,
+            POLITICAL_STATUS, TER_DATE, REASON, PROFESSIONAL_TITLE,
+            JOB_LEVEL, USER_NAME, CONTRACT_START_DATE, CONTRACT_END_DATE,
+            ERP_CREATION_DATE, ERP_LAST_UPDATE_DATE
+        ) VALUES (
+                     #{id}, #{personNumber}, #{lastName}, #{middleNames}, #{firstName},
+                     #{localName}, #{displayName}, #{userPersonType}, #{fullPartTime},
+                     #{hireDate, jdbcType=DATE}, #{probationPeriod}, #{probationUnit}, #{dateProbationEnd, jdbcType=DATE},
+                     #{workPhone}, #{cellPhone}, #{emailAddress}, #{sEmailAddress},
+                     #{citizenShip}, #{gender}, #{dateOfBirth, jdbcType=DATE}, #{ethnicity}, #{hukouType},
+                     #{politicalStatus}, #{terDate, jdbcType=DATE}, #{reason}, #{professionalTitle},
+                     #{jobLevel}, #{userName}, #{contractStartDate, jdbcType=DATE}, #{contractEndDate, jdbcType=DATE},
+                     #{erpCreationDate, jdbcType=TIMESTAMP}, #{erpLastUpdateDate, jdbcType=TIMESTAMP}
+                 )
+    </insert>
+
+    <!-- 批量插入的SQL语句 -->
+    <insert id="insertBatch">
+        INSERT INTO CT_SHR_PERSONINFO (
+        id, PERSON_NUMBER, LAST_NAME, MIDDLE_NAMES, FIRST_NAME,
+        LOCAL_NAME, DISPLAY_NAME, USER_PERSON_TYPE, FULL_PART_TIME,
+        HIRE_DATE, PROBATION_PERIOD, PROBATION_UNIT, DATE_PROBATION_END,
+        WORK_PHONE, CELL_PHONE, EMAIL_ADDRESS, S_EMAIL_ADDRESS,
+        CITIZENSHIP, GENDER, DATE_OF_BIRTH, ETHNICITY, HUKOU_TYPE,
+        POLITICAL_STATUS, TER_DATE, REASON, PROFESSIONAL_TITLE,
+        JOB_LEVEL, USER_NAME, CONTRACT_START_DATE, CONTRACT_END_DATE,
+        ERP_CREATION_DATE, ERP_LAST_UPDATE_DATE
+        ) VALUES
+        <foreach collection="list" item="item" separator=",">
+            (
+            #{item.id}, #{item.personNumber}, #{item.lastName}, #{item.middleNames}, #{item.firstName},
+            #{item.localName}, #{item.displayName}, #{item.userPersonType}, #{item.fullPartTime},
+            #{item.hireDate, jdbcType=DATE}, #{item.probationPeriod}, #{item.probationUnit}, #{item.dateProbationEnd, jdbcType=DATE},
+            #{item.workPhone}, #{item.cellPhone}, #{item.emailAddress}, #{item.sEmailAddress},
+            #{item.citizenShip}, #{item.gender}, #{item.dateOfBirth, jdbcType=DATE}, #{item.ethnicity}, #{item.hukouType},
+            #{item.politicalStatus}, #{item.terDate, jdbcType=DATE}, #{item.reason}, #{item.professionalTitle},
+            #{item.jobLevel}, #{item.userName}, #{item.contractStartDate, jdbcType=DATE}, #{item.contractEndDate, jdbcType=DATE},
+            #{item.erpCreationDate, jdbcType=TIMESTAMP}, #{item.erpLastUpdateDate, jdbcType=TIMESTAMP}
+            )
+        </foreach>
+    </insert>
+
+</mapper>