ClassGradeUserMapper.xml 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  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.ClassGradeUserMapper">
  6. <resultMap type="com.zhongzheng.modules.grade.domain.ClassGradeUser" id="ClassGradeUserResult">
  7. <result property="id" column="id"/>
  8. <result property="userId" column="user_id"/>
  9. <result property="gradeId" column="grade_id"/>
  10. <result property="status" column="status"/>
  11. <result property="createTime" column="create_time"/>
  12. <result property="updateTime" column="update_time"/>
  13. <result property="fromType" column="from_type"/>
  14. <result property="orderGoodsId" column="order_goods_id"/>
  15. </resultMap>
  16. <resultMap type="com.zhongzheng.modules.grade.vo.ClassGradeUserVo" id="ClassGradeUserVoResult">
  17. <result property="id" column="id"/>
  18. <result property="userId" column="user_id"/>
  19. <result property="gradeId" column="grade_id"/>
  20. <result property="status" column="status"/>
  21. <result property="code" column="student_code"/>
  22. <result property="realName" column="realname"/>
  23. <result property="idCard" column="id_card"/>
  24. <result property="createBy" column="create_by"/>
  25. <result property="telPhone" column="telphone"/>
  26. </resultMap>
  27. <resultMap type="com.zhongzheng.modules.grade.vo.ClassGradeUserGoodsVo" id="ClassGradeUserGoodsVoResult">
  28. <result property="id" column="id"/>
  29. <result property="userId" column="user_id"/>
  30. <result property="gradeId" column="grade_id"/>
  31. <result property="status" column="status"/>
  32. <result property="goodsCode" column="goods_code"/>
  33. <result property="goodsName" column="goods_name"/>
  34. <result property="gradeStatus" column="grade_status"/>
  35. <result property="gradeCode" column="grade_code"/>
  36. <result property="gradeName" column="grade_name"/>
  37. <result property="year" column="year"/>
  38. <result property="educationName" column="education_name"/>
  39. <result property="projectName" column="project_name"/>
  40. <result property="businessName" column="business_name"/>
  41. <result property="schoolName" column="school_name"/>
  42. <result property="createTime" column="create_time"/>
  43. <result property="createBy" column="create_by"/>
  44. </resultMap>
  45. <select id="select" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
  46. resultMap="ClassGradeUserVoResult">
  47. SELECT
  48. g.*,
  49. u.student_code,
  50. u.realname,
  51. u.id_card,
  52. u.telphone
  53. FROM
  54. class_grade_user g
  55. LEFT JOIN `user` u ON g.user_id = u.user_id
  56. WHERE
  57. 1 = 1
  58. <if test="status != null and status.size()!=0 ">
  59. AND g.status in
  60. <foreach collection="status" item="item" index="index" open="(" close=")" separator=",">
  61. #{item}
  62. </foreach>
  63. </if>
  64. <if test="gradeId != null and gradeId != ''">
  65. AND g.grade_id = #{gradeId}
  66. </if>
  67. order by g.update_time desc
  68. </select>
  69. <select id="listUser" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
  70. resultMap="ClassGradeUserGoodsVoResult">
  71. SELECT
  72. * ,
  73. (select `code` FROM goods g LEFT JOIN class_grade_goods c on g.goods_id = c.goods_id where c.grade_id =
  74. u.grade_id) as goods_code,
  75. (select `year` FROM goods g LEFT JOIN class_grade_goods c on g.goods_id = c.goods_id where c.grade_id =
  76. u.grade_id) as year,
  77. (select goods_name FROM goods g LEFT JOIN class_grade_goods c on g.goods_id = c.goods_id where c.grade_id =
  78. u.grade_id) as goods_name,
  79. (select b.business_name FROM course_business b LEFT JOIN goods g on b.id = g.business_id LEFT JOIN
  80. class_grade_goods c on g.goods_id = c.goods_id where c.grade_id = u.grade_id) as business_name,
  81. (select b.project_name FROM course_project_type b LEFT JOIN goods g on b.id = g.project_id LEFT JOIN
  82. class_grade_goods c on g.goods_id = c.goods_id where c.grade_id = u.grade_id) as project_name,
  83. (select b.school_name FROM school b LEFT JOIN goods g on b.id = g.school_id LEFT JOIN class_grade_goods c on
  84. g.goods_id = c.goods_id where c.grade_id = u.grade_id) as school_name,
  85. (select b.education_name FROM course_education_type b LEFT JOIN goods g on b.id = g.education_type_id LEFT JOIN
  86. class_grade_goods c on g.goods_id = c.goods_id where c.grade_id = u.grade_id) as education_name,
  87. (SELECT g.grade_code FROM class_grade g where u.grade_id = g.class_id) as grade_code,
  88. (SELECT g.class_name FROM class_grade g where u.grade_id = g.class_id) as grade_name,
  89. (SELECT g.status FROM class_grade g where u.grade_id = g.class_id) as grade_status
  90. FROM
  91. class_grade_user u
  92. where 1=1
  93. <if test="status != null and status.size()!=0 ">
  94. AND u.status in
  95. <foreach collection="status" item="item" index="index" open="(" close=")" separator=",">
  96. #{item}
  97. </foreach>
  98. </if>
  99. <if test="userId != null and userId != ''">
  100. and u.user_id= #{userId}
  101. </if>
  102. order by u.update_time desc
  103. </select>
  104. </mapper>