LaborManagementMapper.xml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.xjrsoft.module.personnel.mapper.LaborManagementMapper">
  6. <select id="getPage" parameterType="com.xjrsoft.module.personnel.dto.LaborManagementPageDto" resultType="com.xjrsoft.module.personnel.vo.LaborManagementPageVo">
  7. SELECT
  8. t.id, t.user_name, t.name, t1.name AS gender, t2.start_work_time, t3.name AS jobState, t4.nature_organization, t5.name, t6.name AS job
  9. FROM xjr_user t
  10. inner JOIN base_teacher t2 ON t2.user_id = t.id
  11. LEFT JOIN xjr_dictionary_detail t1 ON t1.item_id = (SELECT id FROM xjr_dictionary_item WHERE code = 'gender') AND t1.code = (CASE t.gender
  12. WHEN 1 THEN 'SB10001'
  13. WHEN 2 THEN 'SB10002'
  14. WHEN 3 THEN 'SB10003'
  15. ELSE t.gender END)
  16. LEFT JOIN xjr_dictionary_detail t3 ON t3.item_id = (SELECT id FROM xjr_dictionary_item WHERE code = 'job_state') AND t3.value = t2.job_state
  17. LEFT JOIN wf_teacher_depart t4 ON t4.applicant_user_id = t2.user_id
  18. LEFT JOIN xjr_department t5 ON t4.dept_name = t5.id
  19. LEFT JOIN xjr_dictionary_detail t6 ON t6.code = t4.job
  20. WHERE t.delete_mark = 0
  21. <if test="dto.userName != null">
  22. AND t.user_name = #{dto.userName}
  23. </if>
  24. <if test="dto.name != null">
  25. AND t.name = #{dto.name}
  26. </if>
  27. <if test="dto.gender != null">
  28. AND t1.code =
  29. <choose>
  30. <when test="dto.gender == 1">
  31. 'SB10001'
  32. </when>
  33. <when test="dto.gender == 2">
  34. 'SB10002'
  35. </when>
  36. <when test="dto.gender == 3">
  37. 'SB10003'
  38. </when>
  39. <otherwise>
  40. #{dto.gender}
  41. </otherwise>
  42. </choose>
  43. </if>
  44. <if test="dto.startWorkTime != null and dto.endWorkTime != null">
  45. AND t2.start_work_time BETWEEN #{dto.startWorkTime} AND #{dto.endWorkTime}
  46. </if>
  47. <if test="dto.jobState != null">
  48. and t2.job_state = #{dto.jobState}
  49. </if>
  50. <if test="dto.natureOrganization != null">
  51. and t4.nature_organization = #{dto.natureOrganization}
  52. </if>
  53. <if test="dto.job != null">
  54. and t4.job = #{dto.job}
  55. </if>
  56. ORDER BY t.id;
  57. </select>
  58. <!--
  59. 工号:xjruser-username;
  60. 姓名:xjruser-name;
  61. 性别:xjruser-gender->xjritem-性别id->sjrdition-itemid-code;
  62. 入职时间:baseteacher-startworktime
  63. 在职状态:baseteacher-jobstate
  64. 人员类别:wf_teacher_depart-natureorigan 1
  65. 任职部门:wf_teacher_depart-deptname-xjrdepart->name
  66. 工作岗位:wf_teacher_depart-job
  67. -->
  68. </mapper>