UserPlanMapper.xml 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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.user.mapper.UserPlanMapper">
  6. <resultMap type="com.zhongzheng.modules.user.domain.UserPlan" id="UserPlanResult">
  7. <result property="userId" column="user_id"/>
  8. <result property="schedule" column="schedule"/>
  9. <result property="examDate" column="exam_date"/>
  10. <result property="reminderTime" column="reminder_time"/>
  11. <result property="studyCount" column="study_count"/>
  12. <result property="studyDay" column="study_day"/>
  13. <result property="endTime" column="end_time"/>
  14. <result property="startTime" column="start_time"/>
  15. <result property="createTime" column="create_time"/>
  16. <result property="updateTime" column="update_time"/>
  17. <result property="status" column="status"/>
  18. <result property="pitchNum" column="pitch_num"/>
  19. <result property="studyNum" column="study_num"/>
  20. <result property="planId" column="plan_id"/>
  21. </resultMap>
  22. <resultMap type="com.zhongzheng.modules.user.vo.CoursePlanVo" id="CourseResult">
  23. <result property="courseId" column="course_id"/>
  24. <result property="categoryId" column="category_id"/>
  25. <result property="courseName" column="course_name"/>
  26. <result property="chapterNum" column="chapter_num"/>
  27. <result property="sectionNum" column="section_num"/>
  28. <result property="categoryName" column="category_name"/>
  29. </resultMap>
  30. <resultMap type="com.zhongzheng.modules.exam.vo.ExamArrangementTimeVo" id="ExamArrangementTimeResult">
  31. <result property="arrangementId" column="arrangement_id"/>
  32. <result property="startTime" column="start_time"/>
  33. <result property="endTime" column="end_time"/>
  34. </resultMap>
  35. <select id="selectByCourse" parameterType="com.zhongzheng.modules.user.bo.UserPlanQueryBo" resultMap="CourseResult">
  36. SELECT rs.course_name,
  37. rs.course_id,rs.status,sum(section_num) as section_num,count(chapter_id)
  38. as chapter_num,mc.category_name,mc.category_id,sum(total_time) as duration from
  39. (SELECT c.*,count(cs.section_id) as section_num,cs.chapter_id,IFNULL(sum(cs.video_time),0) as total_time
  40. FROM course c LEFT JOIN course_chapter cc on c.course_id = cc.course_id
  41. LEFT JOIN course_section cs
  42. on cc.chapter_id = cs.chapter_id
  43. WHERE 1=1
  44. <if test="courseId != null and courseId !=''">
  45. and c.course_id in
  46. <foreach collection="courseId" open="(" separator="," close=")" item="courseId">
  47. #{courseId}
  48. </foreach>
  49. </if>
  50. GROUP BY cs.chapter_id,c.course_id)rs LEFT JOIN major_category mc on rs.category_id = mc.category_id
  51. GROUP BY course_id
  52. limit 1
  53. </select>
  54. <select id="selectByExam" parameterType="Long" resultMap="ExamArrangementTimeResult">
  55. SELECT
  56. e.*
  57. FROM
  58. exam_arrangement s
  59. LEFT JOIN exam_arrangement_time e ON e.arrangement_id = s.id
  60. WHERE 1=1
  61. AND s.status != 0 AND
  62. <if test="categoryId != null and categoryId !='' ">
  63. s.exam_type_id = #{categoryId}
  64. </if>
  65. ORDER BY e.start_time LIMIT 1
  66. </select>
  67. </mapper>