From 8b0de3f14c3671bfabdb7d3627adcbde5dcb532e Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 26 三月 2026 11:22:12 +0800
Subject: [PATCH] feat: 产品维护新增厚度
---
src/main/resources/mapper/staff/StaffOnJobMapper.xml | 40 +++++++++++++++++++++++++++++++++++++---
1 files changed, 37 insertions(+), 3 deletions(-)
diff --git a/src/main/resources/mapper/staff/StaffOnJobMapper.xml b/src/main/resources/mapper/staff/StaffOnJobMapper.xml
index a43bb37..b0c85bc 100644
--- a/src/main/resources/mapper/staff/StaffOnJobMapper.xml
+++ b/src/main/resources/mapper/staff/StaffOnJobMapper.xml
@@ -5,15 +5,17 @@
SELECT
staff_on_job.*,
sp.post_name as postName,
- sd.dept_name as deptName
+ sd.dept_name as deptName,
+ t1.contract_start_time
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
+ LEFT JOIN staff_contract as t1 ON t1.staff_on_job_id = staff_on_job.id
where 1=1
<if test="staffOnJob.staffState != null">
- AND staff_state = #{staffOnJob.staffState}
+ AND staff_state = #{staffOnJob.staffState}
</if>
<if test="staffOnJob.staffName != null and staffOnJob.staffName != '' ">
AND staff_name LIKE CONCAT('%',#{staffOnJob.staffName},'%')
@@ -22,7 +24,7 @@
AND contract_expire_time >= DATE_FORMAT(#{staffOnJob.entryDateStart},'%Y-%m-%d')
</if>
<if test="staffOnJob.entryDateEnd != null and staffOnJob.entryDateEnd != '' ">
- AND contract_expire_time <= DATE_FORMAT(#{staffOnJob.entryDateEnd},'%Y-%m-%d')
+ AND contract_expire_time <= DATE_FORMAT(#{staffOnJob.entryDateEnd},'%Y-%m-%d')
</if>
</select>
<select id="staffOnJobList" resultType="com.ruoyi.staff.dto.StaffOnJobDto">
@@ -43,4 +45,36 @@
AND staff_name LIKE CONCAT('%',#{staffOnJob.staffName},'%')
</if>
</select>
+ <!-- 缁熻鎸囧畾鏃ユ湡鐨勫湪鑱屽憳宸ユ暟 -->
+ <select id="countOnJobStaffByDate" resultType="java.lang.Integer">
+ SELECT COUNT(*)
+ FROM staff_on_job
+ WHERE staff_state = 1
+ AND DATE_FORMAT(create_time, '%Y-%m-%d') <= #{date}
+ </select>
+
+ <!-- 缁熻鎸囧畾鏈堜唤鐨勬柊鍏ヨ亴鍛樺伐鏁� -->
+ <select id="countNewHireByMonth" resultType="java.lang.Integer">
+ SELECT COUNT(*)
+ FROM staff_on_job
+ WHERE staff_state = 1
+ AND DATE_FORMAT(create_time, '%Y-%m-%d') BETWEEN #{monthStart} AND #{monthEnd}
+ </select>
+
+ <select id="selectStaffByNickName" resultType="com.ruoyi.staff.pojo.StaffOnJob" parameterType="java.lang.String">
+ SELECT
+ id
+ nick_name AS staffName
+ FROM staff_on_job
+ WHERE del_flag = '0'
+ <choose>
+ <when test="staffName != null and staffName != ''">
+ AND nick_name = #{staffName}
+ </when>
+ <otherwise>
+ AND 1 = 0
+ </otherwise>
+ </choose>
+ LIMIT 1
+ </select>
</mapper>
--
Gitblit v1.9.3