From 831fd179216de990cbcbf0fdcecf89076c0d9e66 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 19 一月 2026 14:49:29 +0800
Subject: [PATCH] 员工台账与部门关联

---
 src/main/java/com/ruoyi/staff/dto/StaffOnJobDto.java        |    5 ++
 src/main/java/com/ruoyi/staff/pojo/StaffOnJob.java          |   33 +++++++++-------
 src/main/resources/mapper/staff/StaffOnJobMapper.xml        |   10 ++++-
 doc/20260115_add_sys_post_id_to_staff_join_leave_record.sql |    8 +--
 src/main/resources/mapper/staff/StaffLeaveMapper.xml        |   10 ++++-
 src/main/java/com/ruoyi/staff/dto/StaffLeaveDto.java        |   22 +++++++----
 6 files changed, 56 insertions(+), 32 deletions(-)

diff --git a/doc/20260115_add_sys_post_id_to_staff_join_leave_record.sql b/doc/20260115_add_sys_post_id_to_staff_join_leave_record.sql
index 11b7d98..7fea0ad 100644
--- a/doc/20260115_add_sys_post_id_to_staff_join_leave_record.sql
+++ b/doc/20260115_add_sys_post_id_to_staff_join_leave_record.sql
@@ -1,8 +1,6 @@
-alter table staff_join_leave_record
+alter table staff_on_job
     add sys_post_id bigint not null default 0 comment '宀椾綅id';
-alter table staff_join_leave_record
+alter table staff_on_job
 drop column post_job;
 alter table staff_on_job
-    add sys_post_id bigint not null default 0 comment '宀椾綅id';
-alter table staff_on_job
-drop column post_job;
\ No newline at end of file
+    add sys_dept_id bigint default 0 not null;
\ No newline at end of file
diff --git a/src/main/java/com/ruoyi/staff/dto/StaffLeaveDto.java b/src/main/java/com/ruoyi/staff/dto/StaffLeaveDto.java
index d615c7f..7cdf48a 100644
--- a/src/main/java/com/ruoyi/staff/dto/StaffLeaveDto.java
+++ b/src/main/java/com/ruoyi/staff/dto/StaffLeaveDto.java
@@ -45,48 +45,54 @@
     /**
      * 宀椾綅
      */
-    @Excel(name = "宀椾綅",sort = 7)
+    @Excel(name = "閮ㄩ棬",sort = 7)
+    private String deptName;
+
+    /**
+     * 宀椾綅
+     */
+    @Excel(name = "宀椾綅",sort = 8)
     private String postName;
 
     /**
      * 绗竴瀛﹀巻
      */
-    @Excel(name = "绗竴瀛﹀巻", sort = 8)
+    @Excel(name = "绗竴瀛﹀巻", sort = 9)
     private String firstStudy;
 
     /**
      * 涓撲笟
      */
-    @Excel(name = "涓撲笟", sort = 9)
+    @Excel(name = "涓撲笟", sort = 10)
     private String profession;
 
     /**
      * 韬唤璇佸彿鐮�
      */
-    @Excel(name = "韬唤璇佸彿鐮�", sort = 10)
+    @Excel(name = "韬唤璇佸彿鐮�", sort = 11)
     private String identityCard;
 
     /**
      * 骞撮緞
      */
-    @Excel(name = "骞撮緞", sort = 11)
+    @Excel(name = "骞撮緞", sort = 12)
     private String age;
 
     /**
      * 鑱旂郴鐢佃瘽
      */
-    @Excel(name = "鑱旂郴鐢佃瘽", sort = 12)
+    @Excel(name = "鑱旂郴鐢佃瘽", sort = 13)
     private String phone;
 
     /**
      * 绱ф�ヨ仈绯讳汉
      */
-    @Excel(name = "绱ф�ヨ仈绯讳汉", sort = 13)
+    @Excel(name = "绱ф�ヨ仈绯讳汉", sort = 14)
     private String emergencyContact;
 
     /**
      * 绱ф�ヨ仈绯讳汉鐢佃瘽
      */
-    @Excel(name = "绱ф�ヨ仈绯讳汉鐢佃瘽", sort = 14)
+    @Excel(name = "绱ф�ヨ仈绯讳汉鐢佃瘽", sort = 15)
     private String emergencyContactPhone;
 }
diff --git a/src/main/java/com/ruoyi/staff/dto/StaffOnJobDto.java b/src/main/java/com/ruoyi/staff/dto/StaffOnJobDto.java
index 04f5169..724d9c1 100644
--- a/src/main/java/com/ruoyi/staff/dto/StaffOnJobDto.java
+++ b/src/main/java/com/ruoyi/staff/dto/StaffOnJobDto.java
@@ -10,7 +10,10 @@
 
 @Data
 public class StaffOnJobDto extends StaffOnJob {
-    @Excel(name = "宀椾綅",sort = 7)
+    @Excel(name = "閮ㄩ棬",sort = 7)
+    private String deptName;
+
+    @Excel(name = "宀椾綅",sort = 8)
     private String postName;
 
     @Excel(name = "鍚堝悓骞撮檺")
diff --git a/src/main/java/com/ruoyi/staff/pojo/StaffOnJob.java b/src/main/java/com/ruoyi/staff/pojo/StaffOnJob.java
index 2db3869..31d74b9 100644
--- a/src/main/java/com/ruoyi/staff/pojo/StaffOnJob.java
+++ b/src/main/java/com/ruoyi/staff/pojo/StaffOnJob.java
@@ -63,6 +63,11 @@
      */
     private Integer sysPostId;
 
+     /**
+     * 閮ㄩ棬
+     */
+    private Integer sysDeptId;
+
     /**
      * 瀹跺涵浣忓潃
      */
@@ -72,56 +77,56 @@
     /**
      * 绗竴瀛﹀巻
      */
-    @Excel(name = "绗竴瀛﹀巻", sort = 8)
+    @Excel(name = "绗竴瀛﹀巻", sort = 9)
     private String firstStudy;
 
     /**
      * 涓撲笟
      */
-    @Excel(name = "涓撲笟", sort = 9)
+    @Excel(name = "涓撲笟", sort = 10)
     private String profession;
 
     /**
      * 韬唤璇佸彿鐮�
      */
-    @Excel(name = "韬唤璇佸彿鐮�", sort = 10)
+    @Excel(name = "韬唤璇佸彿鐮�", sort = 11)
     private String identityCard;
 
     /**
      * 骞撮緞
      */
-    @Excel(name = "骞撮緞", sort = 11)
+    @Excel(name = "骞撮緞", sort = 12)
     private String age;
 
     /**
      * 鑱旂郴鐢佃瘽
      */
-    @Excel(name = "鑱旂郴鐢佃瘽", sort = 12)
+    @Excel(name = "鑱旂郴鐢佃瘽", sort = 13)
     private String phone;
 
     /**
      * 绱ф�ヨ仈绯讳汉
      */
-    @Excel(name = "绱ф�ヨ仈绯讳汉", sort = 13)
+    @Excel(name = "绱ф�ヨ仈绯讳汉", sort = 14)
     private String emergencyContact;
 
     /**
      * 绱ф�ヨ仈绯讳汉鐢佃瘽
      */
-    @Excel(name = "绱ф�ヨ仈绯讳汉鐢佃瘽", sort = 14)
+    @Excel(name = "绱ф�ヨ仈绯讳汉鐢佃瘽", sort = 15)
     private String emergencyContactPhone;
 
     /**
      * 鍚堝悓骞撮檺
      */
-    @Excel(name = "鍚堝悓骞撮檺", sort = 15)
+    @Excel(name = "鍚堝悓骞撮檺", sort = 16)
     private String contractTerm;
 
     /**
      * 鍚堝悓鍒版湡鏃ユ湡
      */
     @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "鍚堝悓鍒版湡鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd", sort = 16)
+    @Excel(name = "鍚堝悓鍒版湡鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd", sort = 17)
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date contractExpireTime;
 
@@ -129,7 +134,7 @@
      * 缁撴潫璇曠敤鏃堕棿
      */
     @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "缁撴潫璇曠敤鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd", sort = 17)
+    @Excel(name = "缁撴潫璇曠敤鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd", sort = 18)
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date trialEndDate;
 
@@ -137,7 +142,7 @@
      * 寮�濮嬭瘯鐢ㄦ棩鏈�
      */
     @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "寮�濮嬭瘯鐢ㄦ棩鏈�", width = 30, dateFormat = "yyyy-MM-dd", sort = 18)
+    @Excel(name = "寮�濮嬭瘯鐢ㄦ棩鏈�", width = 30, dateFormat = "yyyy-MM-dd", sort = 19)
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date trialStartDate;
 
@@ -145,7 +150,7 @@
      * 绛捐鏃堕棿
      */
     @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "绛捐鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd", sort = 19)
+    @Excel(name = "绛捐鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd", sort = 20)
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date signDate;
 
@@ -158,7 +163,7 @@
     /**
      * 璇曠敤鏈熷伐璧�
      */
-    @Excel(name = "璇曠敤鏈熷伐璧�", sort = 20)
+    @Excel(name = "璇曠敤鏈熷伐璧�", sort = 21)
     private BigDecimal proSalary;
 
     /**
@@ -170,7 +175,7 @@
     /**
      * 澶囨敞锛堢鍒╁緟閬囷級
      */
-    @Excel(name = "澶囨敞锛堢鍒╁緟閬囷級", sort = 21)
+    @Excel(name = "澶囨敞锛堢鍒╁緟閬囷級", sort = 22)
     private String remark;
 
 
diff --git a/src/main/resources/mapper/staff/StaffLeaveMapper.xml b/src/main/resources/mapper/staff/StaffLeaveMapper.xml
index 1d43ecc..c3faf41 100644
--- a/src/main/resources/mapper/staff/StaffLeaveMapper.xml
+++ b/src/main/resources/mapper/staff/StaffLeaveMapper.xml
@@ -17,12 +17,15 @@
         soj.phone as phone,
         soj.emergency_contact as emergencyContact,
         soj.emergency_contact_phone as emergencyContactPhone,
-        sp.post_name as postName
+        sp.post_name as postName,
+        sd.dept_name as deptName
         FROM staff_leave
         LEFT JOIN
         staff_on_job soj ON soj.id = staff_leave.staff_on_job_id
         LEFT JOIN
         sys_post sp ON sp.post_id = soj.sys_post_id
+        LEFT JOIN
+        sys_dept sd ON sd.dept_id = soj.sys_dept_id
         where 1=1
         <if test="c.staffName != null and c.staffName != '' ">
             AND soj.staff_name LIKE CONCAT('%',#{c.staffName},'%')
@@ -44,12 +47,15 @@
         soj.phone as phone,
         soj.emergency_contact as emergencyContact,
         soj.emergency_contact_phone as emergencyContactPhone,
-        sp.post_name as postName
+        sp.post_name as postName,
+        sd.dept_name as deptName
         FROM staff_leave
         LEFT JOIN
         staff_on_job soj ON soj.id = staff_leave.staff_on_job_id
         LEFT JOIN
         sys_post sp ON sp.post_id = soj.sys_post_id
+        LEFT JOIN
+        sys_dept sd ON sd.dept_id = soj.sys_dept_id
         where 1=1
         <if test="c.staffName != null and c.staffName != '' ">
             AND soj.staff_name LIKE CONCAT('%',#{c.staffName},'%')
diff --git a/src/main/resources/mapper/staff/StaffOnJobMapper.xml b/src/main/resources/mapper/staff/StaffOnJobMapper.xml
index 6e0a956..a43bb37 100644
--- a/src/main/resources/mapper/staff/StaffOnJobMapper.xml
+++ b/src/main/resources/mapper/staff/StaffOnJobMapper.xml
@@ -4,10 +4,13 @@
     <select id="staffOnJobListPage" resultType="com.ruoyi.staff.dto.StaffOnJobDto">
         SELECT
         staff_on_job.*,
-        sp.post_name as postName
+        sp.post_name as postName,
+        sd.dept_name as deptName
         FROM staff_on_job
         LEFT JOIN
         sys_post sp ON sp.post_id = staff_on_job.sys_post_id
+        LEFT JOIN
+        sys_dept sd ON sd.dept_id = staff_on_job.sys_dept_id
         where 1=1
         <if test="staffOnJob.staffState != null">
         AND staff_state = #{staffOnJob.staffState}
@@ -25,10 +28,13 @@
     <select id="staffOnJobList" resultType="com.ruoyi.staff.dto.StaffOnJobDto">
         SELECT
         staff_on_job.*,
-        sp.post_name as postName
+        sp.post_name as postName,
+        sd.dept_name as deptName
         FROM staff_on_job
         LEFT JOIN
         sys_post sp ON sp.post_id = staff_on_job.sys_post_id
+        LEFT JOIN
+        sys_dept sd ON sd.dept_id = staff_on_job.sys_dept_id
         where 1=1
         <if test="staffOnJob.staffState != null">
             AND staff_state = #{staffOnJob.staffState}

--
Gitblit v1.9.3