AssessmentPlanAnswerResultMapper.xml 4.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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.assessment.mapper.AssessmentPlanAnswerResultMapper">
  6. <select id="getResultList" parameterType="com.xjrsoft.module.assessment.dto.AssessmentQuestionResultDto" resultType="com.xjrsoft.module.assessment.vo.AssessmentQuestionResultVo">
  7. SELECT question_id,GROUP_CONCAT(answer_id) as answer FROM assessment_plan_answer_result
  8. WHERE assessment_template_plan_id = #{dto.assessmentTemplatePlanId} AND student_user_id = #{dto.userId} GROUP BY question_id
  9. </select>
  10. <select id="getClassResult" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerClassResultVo">
  11. SELECT t2.name AS class_name,
  12. (SELECT COUNT(a1.id) FROM assessment_plan_answer_student a1
  13. INNER JOIN base_student_school_roll a2 ON a1.student_user_id = a2.user_id WHERE a2.class_id = t1.class_id
  14. AND a1.assessment_template_plan_id = t1.assessment_template_plan_id and t3.stduy_status like concat('%', a2.stduy_status,'%') AND a2.archives_status = 'FB2901') AS student_count,
  15. (SELECT COUNT(a1.id) FROM assessment_plan_answer_student a1
  16. INNER JOIN base_student_school_roll a2 ON a1.student_user_id = a2.user_id WHERE a2.class_id = t1.class_id AND a1.submit_status = 1
  17. AND a1.assessment_template_plan_id = t1.assessment_template_plan_id and t3.stduy_status like concat('%', a2.stduy_status,'%') AND a2.archives_status = 'FB2901') submitted_count,
  18. (SELECT COUNT(a1.id) FROM assessment_plan_answer_student a1
  19. INNER JOIN base_student_school_roll a2 ON a1.student_user_id = a2.user_id WHERE a2.class_id = t1.class_id
  20. AND a1.assessment_template_plan_id = t1.assessment_template_plan_id AND (a1.submit_status = 0 OR a1.submit_status IS NULL)
  21. and t3.stduy_status like concat('%', a2.stduy_status,'%') AND a2.archives_status = 'FB2901') AS unsubmitted_count
  22. FROM assessment_plan_answer_class t1
  23. LEFT JOIN base_class t2 ON t1.class_id = t2.id
  24. left join assessment_template_plan t3 on t3.id = t1.assessment_template_plan_id
  25. WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{id}
  26. order by t2.name
  27. </select>
  28. <select id="getQuestionResult" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo">
  29. SELECT t1.question_id, t1.answer_id,COUNT(*) AS choose_count
  30. FROM assessment_plan_answer_result t1
  31. INNER JOIN base_student_school_roll t2 ON t1.student_user_id = t2.user_id
  32. INNER JOIN assessment_template_plan t3 ON t1.assessment_template_plan_id = t3.id
  33. WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{id}
  34. AND t3.stduy_status like concat('%', t2.stduy_status,'%')
  35. AND t2.archives_status = 'FB2901'
  36. GROUP BY t1.question_id, t1.answer_id
  37. </select>
  38. <select id="getTextQuestionResult" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo">
  39. SELECT t1.* FROM assessment_plan_answer_result t1
  40. INNER JOIN assessment_plan_question t2 ON t1.question_id = t2.id
  41. WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{id}
  42. AND t2.type = 'text_question'
  43. </select>
  44. <select id="getScaleQuestionResult" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo">
  45. SELECT t1.question_id,t1.answer_id,COUNT(t1.id) AS choose_count FROM assessment_plan_answer_result t1
  46. INNER JOIN assessment_plan_question t2 ON t1.question_id = t2.id
  47. WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{id}
  48. AND t2.type = 'scale_question'
  49. GROUP BY t1.question_id,t1.answer_id
  50. </select>
  51. <select id="getStudentQuestionResultList" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo">
  52. SELECT t1.question_id,IFNULL(t2.name, t1.answer_id) as answer_id FROM assessment_plan_answer_result t1
  53. LEFT JOIN assessment_plan_question t2 ON t1.answer_id = CAST(t2.id AS CHAR)
  54. WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{templatePlanId}
  55. and t1.student_user_id = #{studentUserId}
  56. order BY t1.id
  57. </select>
  58. <select id="getPlanQuestionResultList" resultType="com.xjrsoft.module.assessment.vo.AssessmentPlanAnswerDetailVo">
  59. SELECT t1.student_user_id,t1.question_id,IFNULL(t2.name, t1.answer_id) as answer_id FROM assessment_plan_answer_result t1
  60. LEFT JOIN assessment_plan_question t2 ON t1.answer_id = CAST(t2.id AS CHAR)
  61. WHERE t1.delete_mark = 0 AND t1.assessment_template_plan_id = #{templatePlanId}
  62. </select>
  63. </mapper>