| | |
| | | <mapper namespace="com.ruoyi.staff.mapper.StaffOnJobMapper"> |
| | | <select id="staffOnJobListPage" resultType="com.ruoyi.staff.dto.StaffOnJobDto"> |
| | | SELECT |
| | | staff_on_job.*, |
| | | sp.post_name as postName, |
| | | sd.dept_name as deptName |
| | | staff_on_job.id, |
| | | staff_on_job.staff_state, |
| | | staff_on_job.staff_no, |
| | | staff_on_job.staff_name, |
| | | staff_on_job.sex, |
| | | staff_on_job.native_place, |
| | | staff_on_job.sys_post_id, |
| | | staff_on_job.sys_dept_id, |
| | | staff_on_job.role_id, |
| | | staff_on_job.adress, |
| | | staff_on_job.first_study, |
| | | staff_on_job.profession, |
| | | staff_on_job.identity_card, |
| | | staff_on_job.age, |
| | | staff_on_job.phone, |
| | | staff_on_job.contract_term, |
| | | staff_on_job.contract_expire_time, |
| | | staff_on_job.trial_end_date, |
| | | staff_on_job.trial_start_date, |
| | | staff_on_job.sign_date, |
| | | staff_on_job.salary_select, |
| | | staff_on_job.pro_salary, |
| | | staff_on_job.date_select, |
| | | staff_on_job.remark, |
| | | staff_on_job.create_time, |
| | | staff_on_job.create_user, |
| | | staff_on_job.update_time, |
| | | staff_on_job.update_user, |
| | | staff_on_job.tenant_id, |
| | | staff_on_job.alias, |
| | | staff_on_job.birth_date, |
| | | staff_on_job.nation, |
| | | staff_on_job.marital_status, |
| | | staff_on_job.pro_term, |
| | | staff_on_job.positive_date, |
| | | staff_on_job.basic_salary, |
| | | staff_on_job.dept_id, |
| | | sp.post_name AS post_name, |
| | | sd.dept_name AS dept_name, |
| | | MIN(t1.contract_start_time) AS contract_start_time, |
| | | MAX(t1.contract_end_time) AS contract_end_time, |
| | | ( |
| | | SELECT GROUP_CONCAT(sec.contact_name SEPARATOR ',') |
| | | FROM staff_emergency_contact sec |
| | | WHERE sec.staff_on_job_id = staff_on_job.id |
| | | ) AS emergency_contact, |
| | | ( |
| | | SELECT GROUP_CONCAT(sec.contact_phone SEPARATOR ',') |
| | | FROM staff_emergency_contact sec |
| | | WHERE sec.staff_on_job_id = staff_on_job.id |
| | | ) AS emergency_contact_phone |
| | | 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} |
| | | </if> |
| | | <if test="staffOnJob.staffName != null and staffOnJob.staffName != '' "> |
| | | AND staff_name LIKE CONCAT('%',#{staffOnJob.staffName},'%') |
| | | </if> |
| | | <if test="staffOnJob.entryDateStart != null and staffOnJob.entryDateStart != '' "> |
| | | 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') |
| | | 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> |
| | | <if test="staffOnJob.staffState != null"> |
| | | AND staff_on_job.staff_state = #{staffOnJob.staffState} |
| | | </if> |
| | | <if test="staffOnJob.staffName != null and staffOnJob.staffName != '' "> |
| | | AND staff_on_job.staff_name LIKE CONCAT('%',#{staffOnJob.staffName},'%') |
| | | </if> |
| | | <if test="staffOnJob.entryDateStart != null and staffOnJob.entryDateStart != '' "> |
| | | AND staff_on_job.contract_expire_time >= DATE_FORMAT(#{staffOnJob.entryDateStart},'%Y-%m-%d') |
| | | </if> |
| | | <if test="staffOnJob.entryDateEnd != null and staffOnJob.entryDateEnd != '' "> |
| | | AND staff_on_job.contract_expire_time <= DATE_FORMAT(#{staffOnJob.entryDateEnd},'%Y-%m-%d') |
| | | </if> |
| | | <if test="staffOnJob.sysDeptId != null"> |
| | | AND staff_on_job.sys_dept_id = #{staffOnJob.sysDeptId} |
| | | </if> |
| | | </where> |
| | | GROUP BY staff_on_job.id |
| | | <if test="staffOnJob.contractStartTime != null"> |
| | | HAVING MIN(t1.contract_start_time) = #{staffOnJob.contractStartTime} |
| | | </if> |
| | | </select> |
| | | <select id="staffOnJobList" resultType="com.ruoyi.staff.dto.StaffOnJobDto"> |