ClassTimeStatisticsMapper.xml 5.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  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.classtime.mapper.ClassTimeStatisticsMapper">
  6. <select id="getTeacherList" resultType="com.xjrsoft.module.classtime.vo.TeacherListVo">
  7. SELECT t1.id,t1.name,t2.employ_type FROM xjr_user t1
  8. INNER JOIN base_teacher t2 ON t1.id = t2.user_id
  9. WHERE t1.delete_mark = 0 AND t2.employ_type IN ('FB1601','FB1605','FB1609')
  10. </select>
  11. <select id="getWfTeacherCourseTimeList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.oa.entity.WfTeacherCourseTime">
  12. SELECT t2.id,t2.apply_user_id,t2.dept_id,t1.course_time_type,t1.course_time,t1.schedule_date,t1.remark,t1.explains, t1.teacher_id as teacher_ids FROM wf_teacher_course_time_detail t1
  13. INNER JOIN wf_teacher_course_time t2 ON t1.wf_teacher_course_time_id = t2.id
  14. INNER JOIN xjr_workflow_form_relation t3 ON t2.id = t3.form_key_value
  15. WHERE t3.current_state = 'COMPLETED' and t2.enabled_mark = 1
  16. AND t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
  17. </select>
  18. <select id="getCourseList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">
  19. SELECT t1.class_id, t1.teacher_id, t2.short_name,t1.adjust_type,t4.reason,t1.schedule_date,t1.class_name,t1.course_name,t1.time_number FROM course_table t1
  20. LEFT JOIN class_time t2 ON t1.time_period = t2.time_period AND t1.time_number = t2.number
  21. LEFT JOIN course_table_bak t3 ON t1.id = t3.id
  22. LEFT JOIN wf_course_adjust t4 ON t4.id = t3.wf_course_adjust_id
  23. WHERE t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
  24. AND t1.schedule_date NOT IN (
  25. SELECT DATE FROM holiday_date WHERE STATUS = 3
  26. AND DATE BETWEEN #{dto.startDate} and #{dto.endDate}
  27. )
  28. </select>
  29. <select id="getHolidayReplaceCourseList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">
  30. SELECT t1.class_id, t1.teacher_id, t2.short_name,t1.adjust_type,t4.reason,t1.schedule_date,t1.class_name,t1.course_name,t1.time_number FROM course_table t1
  31. LEFT JOIN class_time t2 ON t1.time_period = t2.time_period AND t1.time_number = t2.number
  32. LEFT JOIN course_table_bak t3 ON t1.id = t3.id
  33. LEFT JOIN wf_course_adjust t4 ON t4.id = t3.wf_course_adjust_id
  34. WHERE t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
  35. AND t1.adjust_type = 'course_replace'
  36. AND t1.schedule_date IN (
  37. SELECT DATE FROM holiday_date WHERE STATUS = 3
  38. AND DATE BETWEEN #{dto.startDate} and #{dto.endDate}
  39. )
  40. </select>
  41. <select id="getReplaceCourseList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">
  42. SELECT t1.class_id, t1.teacher_id, t2.short_name,t1.adjust_type,t4.reason,t1.schedule_date,t1.time_number FROM course_table t1
  43. LEFT JOIN class_time t2 ON t1.time_period = t2.time_period AND t1.time_number = t2.number
  44. LEFT JOIN course_table_bak t3 ON t1.id = t3.id
  45. LEFT JOIN wf_course_adjust t4 ON t4.id = t3.wf_course_adjust_id
  46. WHERE t1.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
  47. AND t1.schedule_date IN (
  48. SELECT replace_date FROM class_time_calendar WHERE delete_mark = 0 AND replace_date BETWEEN #{dto.startDate} and #{dto.endDate}
  49. )
  50. </select>
  51. <select id="getSubstituteList" parameterType="com.xjrsoft.module.classtime.entity.ClassTimeStatistics" resultType="com.xjrsoft.module.classtime.vo.CourseListVo">
  52. SELECT t4.short_name,t3.schedule_date,t3.class_id,t1.user_id as teacher_id,t1.exchange_teacher_id,t1.reason,t3.time_number FROM wf_course_adjust t1
  53. INNER JOIN xjr_workflow_form_relation t2 ON t1.id = t2.form_key_value
  54. INNER JOIN course_table_bak t3 ON t1.id = t3.wf_course_adjust_id
  55. LEFT JOIN class_time t4 ON t3.time_period = t4.time_period AND t3.time_number = t4.number
  56. <!-- INNER JOIN course_table t5 ON t5.id = t3.id-->
  57. WHERE t1.delete_mark = 0 AND t2.current_state = 'COMPLETED'
  58. <!-- AND t1.reason IN ('sick_leave','leave_absence') -->
  59. and t1.adjust_type = 'course_substitute' and t1.enabled_mark = 1
  60. AND t3.schedule_date BETWEEN #{dto.startDate} and #{dto.endDate}
  61. AND t3.schedule_date NOT IN (
  62. SELECT DATE FROM holiday_date WHERE STATUS = 3
  63. AND DATE BETWEEN #{dto.startDate} and #{dto.endDate}
  64. )
  65. </select>
  66. <select id="getRecordList" resultType="com.xjrsoft.module.classtime.vo.ClassTimeStatisticsRecordVo">
  67. SELECT t1.id,t2.user_name,t2.name,t3.name AS employ_type_cn,t1.week_data,
  68. t1.class_time1,t1.class_time2,t1.class_time3,t1.class_time4,t1.class_time5,
  69. t1.class_time6,t1.class_time7,t1.class_time8,t1.class_time9,t1.class_time10,t1.class_time11,course_time_type_data,
  70. t1.all_class_time,t1.total_amount,t1.class_time_amount,t1.beyond_class_time_amount FROM class_time_statistics_record t1
  71. INNER JOIN xjr_user t2 ON t1.user_id = t2.id
  72. LEFT JOIN xjr_dictionary_detail t3 ON t1.employ_type = t3.code
  73. WHERE t1.delete_mark = 0 AND t1.class_time_statistics_id = #{id}
  74. </select>
  75. </mapper>