PracticeMapper.xml 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  3. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  4. <mapper namespace="com.yonge.cooleshow.biz.dal.dao.PracticeDao">
  5. <select id="selectTeacherPactice" resultType="com.yonge.cooleshow.biz.dal.vo.PracticeVo">
  6. SELECT
  7. u.id_ AS userId,
  8. u.username_ AS userName,
  9. u.real_name_ AS realName,
  10. u.phone_ AS phone,
  11. s.name_ AS subjectName,
  12. p.course_id_ AS courseId,
  13. p.order_no_ AS orderNo,
  14. p.original_price_ AS originalPrice,
  15. p.expect_price_ AS expectPrice,
  16. p.actual_price_ AS actualPrice,
  17. p.created_time_ AS paymentTime,
  18. cs.class_date_ AS classDate,
  19. cs.start_time_ AS startTime,
  20. cs.end_time_ AS endTime,
  21. cs.status_ AS `status`
  22. FROM course_schedule_student_payment p
  23. LEFT JOIN sys_user u ON p.user_id_ = u.id_
  24. LEFT JOIN `subject` s ON p.course_group_id_ = s.id_
  25. LEFT JOIN course_schedule cs ON p.course_id_ = cs.id_
  26. WHERE p.course_id_ IN (SELECT id_ FROM course_schedule WHERE teacher_id_ = #{param.teacherId} AND type_ = 'PRACTICE')
  27. <if test="null != param.search and '' != param.search">
  28. AND (
  29. cs.id_ LIKE CONCAT('%', #{param.search}, '%') OR
  30. u.id_ LIKE CONCAT('%', #{param.search}, '%') OR
  31. u.username_ LIKE CONCAT('%', #{param.search}, '%') OR
  32. u.phone_ LIKE CONCAT('%', #{param.search}, '%')
  33. )
  34. </if>
  35. <if test="null != param.orderNo and '' != param.orderNo">
  36. AND p.order_no_ = #{param.orderNo}
  37. </if>
  38. <if test="null != param.subjectId">
  39. AND s.id_ = #{param.subjectId}
  40. </if>
  41. <if test="null != param.status and '' != param.status">
  42. AND cs.status_ = #{param.status}
  43. </if>
  44. <if test="param.startTime !=null">
  45. <![CDATA[AND p.created_time_ >= #{param.startTime} ]]>
  46. </if>
  47. <if test="param.endTime !=null">
  48. <![CDATA[AND p.created_time_ <= #{param.endTime} ]]>
  49. </if>
  50. </select>
  51. <select id="selectStudentPactice" resultType="com.yonge.cooleshow.biz.dal.vo.PracticeVo">
  52. SELECT
  53. u.id_ AS userId,
  54. u.username_ AS userName,
  55. u.real_name_ AS realName,
  56. u.phone_ AS phone,
  57. s.name_ AS subjectName,
  58. p.course_id_ AS courseId,
  59. p.order_no_ AS orderNo,
  60. p.original_price_ AS originalPrice,
  61. p.expect_price_ AS expectPrice,
  62. p.actual_price_ AS actualPrice,
  63. p.created_time_ AS paymentTime,
  64. cs.class_date_ AS classDate,
  65. cs.start_time_ AS startTime,
  66. cs.end_time_ AS endTime,
  67. cs.status_ AS `status`
  68. FROM course_schedule cs
  69. LEFT JOIN course_schedule_student_payment p ON cs.id_ = p.course_id_
  70. LEFT JOIN sys_user u ON cs.teacher_id_ = u.id_
  71. LEFT JOIN `subject` s ON p.course_group_id_ = s.id_
  72. WHERE cs.id_ IN (SELECT course_id_ FROM course_schedule_student_payment WHERE user_id_ = #{param.studentId} AND course_type_ = 'PRACTICE')
  73. <if test="null != param.search and '' != param.search">
  74. AND (
  75. cs.id_ LIKE CONCAT('%', #{param.search}, '%') OR
  76. u.id_ LIKE CONCAT('%', #{param.search}, '%') OR
  77. u.username_ LIKE CONCAT('%', #{param.search}, '%') OR
  78. u.phone_ LIKE CONCAT('%', #{param.search}, '%')
  79. )
  80. </if>
  81. <if test="null != param.orderNo and '' != param.orderNo">
  82. AND p.order_no_ = #{param.orderNo}
  83. </if>
  84. <if test="null != param.status and '' != param.status">
  85. AND cs.status_ = #{param.status}
  86. </if>
  87. <if test="null != param.subjectId">
  88. AND s.id_ = #{param.subjectId}
  89. </if>
  90. <if test="param.startTime !=null">
  91. <![CDATA[AND p.created_time_ >= #{param.startTime} ]]>
  92. </if>
  93. <if test="param.endTime !=null">
  94. <![CDATA[AND p.created_time_ <= #{param.endTime} ]]>
  95. </if>
  96. </select>
  97. </mapper>