UserPeriodStatusMapper.xml 4.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  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.zhongzheng.modules.grade.mapper.UserPeriodStatusMapper">
  6. <resultMap type="com.zhongzheng.modules.grade.domain.UserPeriodStatus" id="UserPeriodStatusResult">
  7. <result property="status" column="status"/>
  8. <result property="recordStartTime" column="record_start_time"/>
  9. <result property="recordEndTime" column="record_end_time"/>
  10. <result property="id" column="id"/>
  11. <result property="periodId" column="period_id"/>
  12. <result property="periodStatus" column="period_status"/>
  13. <result property="createTime" column="create_time"/>
  14. <result property="updateTime" column="update_time"/>
  15. <result property="auditUserName" column="audit_user_name"/>
  16. <result property="auditTime" column="audit_time"/>
  17. <result property="auditReason" column="audit_reason"/>
  18. <result property="ip" column="ip"/>
  19. </resultMap>
  20. <resultMap type="com.zhongzheng.modules.grade.vo.UserPeriodStatusVo" id="UserPeriodStatusVo">
  21. <result property="status" column="status"/>
  22. <result property="recordStartTime" column="record_start_time"/>
  23. <result property="recordEndTime" column="record_end_time"/>
  24. <result property="id" column="id"/>
  25. <result property="periodId" column="period_id"/>
  26. <result property="periodStatus" column="period_status"/>
  27. <result property="auditTime" column="audit_time"/>
  28. <result property="type" column="type"/>
  29. <result property="typeName" column="type_name"/>
  30. <result property="realName" column="realname"/>
  31. <result property="performance" column="performance"/>
  32. <result property="auditUserName" column="audit_user_name"/>
  33. <result property="durationTime" column="duration_time"/>
  34. <result property="ip" column="ip"/>
  35. </resultMap>
  36. <select id="selectPeriodStatus" parameterType="com.zhongzheng.modules.grade.bo.UserPeriodQueryBo" resultMap="UserPeriodStatusVo">
  37. SELECT
  38. ups.*,
  39. (select realname from `user` u where up.user_id = u.user_id) as realname
  40. <if test="examId != null ">
  41. ,(SELECT exam_name FROM exam e where e.exam_id= up.exam_id) as type_name
  42. </if>
  43. <if test="sectionId != null ">
  44. ,(SELECT name FROM course_section cs where up.section_id= cs.section_id) as type_name,
  45. (SELECT duration_time FROM course_section cs where up.section_id= cs.section_id) as duration_time
  46. </if>
  47. FROM
  48. user_period_status ups
  49. LEFT JOIN user_period up ON up.id = ups.period_id
  50. WHERE 1=1
  51. <if test="goodsId != null and goodsId != ''">
  52. and up.goods_id = #{goodsId}
  53. </if>
  54. <if test="gradeId != null and gradeId != ''">
  55. and up.grade_id = #{gradeId}
  56. </if>
  57. <if test="userId != null and userId != ''">
  58. and up.user_id = #{userId}
  59. </if>
  60. <if test="sectionId != null ">
  61. and up.section_id = #{sectionId}
  62. </if>
  63. <if test="moduleId != null ">
  64. and up.module_id = #{moduleId}
  65. </if>
  66. <if test="orderGoodsId != null ">
  67. and (up.order_goods_id = #{orderGoodsId} or up.order_goods_id is NULL )
  68. </if>
  69. <if test="chapterId != null">
  70. and up.chapter_id = #{chapterId}
  71. </if>
  72. <if test="courseId != null ">
  73. and up.course_id = #{courseId}
  74. </if>
  75. <if test="examId != null ">
  76. and up.exam_id = #{examId}
  77. </if>
  78. <if test="type != null ">
  79. and up.`type` = #{type}
  80. </if>
  81. <if test="searchWeekStartTime != null and searchWeekStartTime != '' ">
  82. and ups.period_status = 1
  83. AND ups.update_time >= #{searchWeekStartTime}
  84. </if>
  85. <if test="searchWeekEndTime != null and searchWeekEndTime != '' ">
  86. AND #{searchWeekEndTime} >= ups.update_time
  87. </if>
  88. ORDER BY
  89. ups.create_time asc
  90. </select>
  91. </mapper>