QuestionModuleChapterMapper.xml 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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.bank.mapper.QuestionModuleChapterMapper">
  6. <resultMap type="com.zhongzheng.modules.bank.domain.QuestionModuleChapter" id="QuestionModuleChapterResult">
  7. <result property="id" column="id"/>
  8. <result property="moduleExamId" column="module_exam_id"/>
  9. <result property="chapterExamId" column="chapter_exam_id"/>
  10. <result property="sort" column="sort"/>
  11. </resultMap>
  12. <resultMap type="com.zhongzheng.modules.bank.vo.QuestionChapterVo" id="QuestionModuleChapterResultVo">
  13. <result property="chapterExamId" column="chapter_exam_id"/>
  14. <result property="name" column="name"/>
  15. <result property="sort" column="sort"/>
  16. <result property="status" column="status"/>
  17. <result property="prefixName" column="prefix_name"/>
  18. <result property="publishStatus" column="publish_status"/>
  19. <result property="code" column="code"/>
  20. <result property="sort" column="chapter_sort"/>
  21. <result property="examNum" column="exam_num"/>
  22. <result property="questionNum" column="question_num"/>
  23. </resultMap>
  24. <!-- <select id="getList" parameterType="com.zhongzheng.modules.bank.bo.QuestionModuleChapterQueryBo" resultMap="QuestionModuleChapterResultVo">-->
  25. <!-- SELECT-->
  26. <!-- qc.*,-->
  27. <!-- mc.sort AS chapter_sort,-->
  28. <!-- (SELECT COUNT(qce.exam_id) FROM question_chapter_exam qce where qce.chapter_exam_id = qc.chapter_exam_id ) as exam_num,-->
  29. <!-- (SELECT COUNT(eq.question_id) FROM question_chapter_exam qce LEFT JOIN exam_question eq on qce.exam_id = eq.exam_id where qce.chapter_exam_id = qc.chapter_exam_id) as question_num-->
  30. <!-- FROM-->
  31. <!-- question_module_chapter mc-->
  32. <!-- LEFT JOIN question_chapter qc ON mc.chapter_exam_id = qc.chapter_exam_id-->
  33. <!-- WHERE-->
  34. <!-- mc.module_exam_id = #{moduleExamId}-->
  35. <!-- ORDER BY mc.sort-->
  36. <!-- </select>-->
  37. <select id="getList" parameterType="com.zhongzheng.modules.bank.bo.QuestionModuleChapterQueryBo" resultMap="QuestionModuleChapterResultVo">
  38. SELECT
  39. qc.*,
  40. mc.sort AS chapter_sort,
  41. ( SELECT COUNT( qce.exam_id ) FROM question_chapter_exam qce WHERE qce.chapter_exam_id = qc.chapter_exam_id ) AS exam_num,
  42. (
  43. SELECT
  44. COUNT( eq.question_id )
  45. FROM
  46. question_chapter_exam qce
  47. LEFT JOIN exam_question eq ON qce.exam_id = eq.exam_id
  48. WHERE
  49. qce.chapter_exam_id = qc.chapter_exam_id
  50. ) AS question_num
  51. FROM
  52. question_module_chapter mc
  53. LEFT JOIN question_chapter qc ON mc.chapter_exam_id = qc.chapter_exam_id
  54. WHERE 1=1
  55. <if test="paperId != null and paperId != ''">
  56. AND qc.chapter_exam_id IN ( SELECT qce.chapter_exam_id FROM question_chapter_exam qce LEFT JOIN exam e ON qce.exam_id = e.exam_id WHERE e.exam_paper_id = #{paperId} )
  57. </if>
  58. AND mc.module_exam_id = #{moduleExamId}
  59. ORDER BY
  60. mc.sort
  61. </select>
  62. <select id="getDoList" parameterType="com.zhongzheng.modules.bank.bo.QuestionModuleChapterQueryBo" resultMap="QuestionModuleChapterResultVo">
  63. SELECT
  64. qc.*,
  65. mc.sort as chapter_sort
  66. FROM
  67. question_module qm
  68. LEFT JOIN question_module_chapter mc ON mc.module_exam_id = qm.module_exam_id
  69. LEFT JOIN question_chapter qc ON mc.chapter_exam_id = qc.chapter_exam_id
  70. WHERE
  71. qm.module_exam_id =#{moduleExamId}
  72. AND mc.chapter_exam_id IN ( SELECT chapter_exam_id FROM user_exam_record WHERE user_id = #{userId} AND goods_id = #{goodsId} AND module_exam_id = #{moduleExamId} AND chapter_exam_id > 0 GROUP BY chapter_exam_id)
  73. </select>
  74. </mapper>