CloudTeacherOrderMapper.xml 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.ym.mec.biz.dal.dao.CloudTeacherOrderDao">
  4. <resultMap id="CloudTeacherOrder" type="com.ym.mec.biz.dal.entity.CloudTeacherOrder">
  5. <!--@mbg.generated-->
  6. <!--@Table cloud_teacher_order-->
  7. <id column="id_" property="id"/>
  8. <result column="organ_id_" property="organId"/>
  9. <result column="student_id_" property="studentId"/>
  10. <result column="type_" property="type"/>
  11. <result column="level_" property="level"/>
  12. <result column="time_" property="time"/>
  13. <result column="amount_" property="amount"/>
  14. <result column="refund_amount_" property="refundAmount"/>
  15. <result column="status_" property="status"/>
  16. <result column="start_time_" property="startTime"/>
  17. <result column="end_time_" property="endTime"/>
  18. <result column="order_id_" property="orderId"/>
  19. <result column="remark_" property="remark"/>
  20. <result column="version_" property="version"/>
  21. <result column="create_time_" property="createTime"/>
  22. <result column="update_time_" property="updateTime"/>
  23. <result column="music_group_id_" property="musicGroupId"/>
  24. </resultMap>
  25. <resultMap type="com.ym.mec.biz.dal.dto.CloudTeacherOrderDto" id="CloudTeacherOrderDto">
  26. <id column="id_" property="cloudTeacherOrder.id"/>
  27. <result column="organ_id_" property="cloudTeacherOrder.organId"/>
  28. <result column="student_id_" property="cloudTeacherOrder.studentId"/>
  29. <result column="type_" property="cloudTeacherOrder.type"/>
  30. <result column="level_" property="cloudTeacherOrder.level"/>
  31. <result column="time_" property="cloudTeacherOrder.time"/>
  32. <result column="amount_" property="cloudTeacherOrder.amount"/>
  33. <result column="refund_amount_" property="cloudTeacherOrder.refundAmount"/>
  34. <result column="status_" property="cloudTeacherOrder.status"/>
  35. <result column="start_time_" property="cloudTeacherOrder.startTime"/>
  36. <result column="end_time_" property="cloudTeacherOrder.endTime"/>
  37. <result column="order_id_" property="cloudTeacherOrder.orderId"/>
  38. <result column="trans_status_" property="studentPaymentOrder.status"/>
  39. <result column="expect_amount_" property="studentPaymentOrder.expectAmount"/>
  40. <result column="pay_time_" property="studentPaymentOrder.payTime"/>
  41. <result column="order_create_time_" property="studentPaymentOrder.createTime"/>
  42. <result column="name_" property="memberRankSetting.name"/>
  43. <result column="icon_" property="memberRankSetting.icon"/>
  44. <result column="music_group_id_" property="studentPaymentOrder.musicGroupId"/>
  45. </resultMap>
  46. <select id="get" resultMap="CloudTeacherOrder">
  47. <!--@mbg.generated-->
  48. select * from cloud_teacher_order where id_ = #{id}
  49. </select>
  50. <delete id="delete">
  51. <!--@mbg.generated-->
  52. delete from cloud_teacher_order
  53. where id_ = #{id}
  54. </delete>
  55. <insert id="insert" keyColumn="id_" keyProperty="id" parameterType="com.ym.mec.biz.dal.entity.CloudTeacherOrder"
  56. useGeneratedKeys="true">
  57. <!--@mbg.generated-->
  58. insert into cloud_teacher_order (organ_id_,student_id_, type_, level_, time_, amount_, refund_amount_, status_,
  59. order_id_,start_time_,end_time_,remark_, create_time_, update_time_,music_group_id_)
  60. values (#{organId},#{studentId}, #{type},#{level}, #{time}, #{amount}, #{refundAmount},
  61. #{status},#{orderId},#{startTime},#{endTime}, #{remark}, NOW(), NOW(),#{musicGroupId})
  62. </insert>
  63. <update id="update" parameterType="com.ym.mec.biz.dal.entity.CloudTeacherOrder">
  64. <!--@mbg.generated-->
  65. update cloud_teacher_order
  66. <set>
  67. <if test="musicGroupId != null">
  68. music_group_id_ = #{musicGroupId},
  69. </if>
  70. <if test="organId != null">
  71. organ_id_ = #{organId},
  72. </if>
  73. <if test="studentId != null">
  74. student_id_ = #{studentId},
  75. </if>
  76. <if test="type != null">
  77. type_ = #{type},
  78. </if>
  79. <if test="level != null">
  80. level_ = #{level},
  81. </if>
  82. <if test="time != null">
  83. time_ = #{time},
  84. </if>
  85. <if test="amount != null">
  86. amount_ = #{amount},
  87. </if>
  88. <if test="refundAmount != null">
  89. refund_amount_ = #{refundAmount},
  90. </if>
  91. <if test="status != null">
  92. status_ = #{status},
  93. </if>
  94. <if test="startTime != null">
  95. start_time_ = #{startTime},
  96. </if>
  97. <if test="endTime != null">
  98. end_time_ = #{endTime},
  99. </if>
  100. <if test="orderId != null">
  101. order_id_ = #{orderId},
  102. </if>
  103. <if test="remark != null">
  104. remark_ = #{remark},
  105. </if>
  106. <if test="createTime != null">
  107. create_time_ = #{createTime},
  108. </if>
  109. version_ = version_+1,
  110. update_time_ = NOW(),
  111. </set>
  112. where id_ = #{id} AND version_ = #{version}
  113. </update>
  114. <!-- 全查询 -->
  115. <select id="findAll" resultMap="CloudTeacherOrder">
  116. SELECT *
  117. FROM cloud_teacher_order
  118. </select>
  119. <!-- 分页查询 -->
  120. <select id="queryPage" resultMap="CloudTeacherOrderDto" parameterType="map">
  121. SELECT cto.*,spo.status_ trans_status_,spo.expect_amount_,spo.pay_time_,spo.create_time_ order_create_time_,mrs.name_,mrs.icon_ FROM cloud_teacher_order cto
  122. left join student_payment_order spo on cto.order_id_ = spo.id_
  123. left join member_rank_setting mrs on mrs.id_ = cto.level_
  124. where spo.type_ = 'MEMBER'
  125. <if test="status != null">
  126. and cto.status_ = #{status}
  127. </if>
  128. <if test="studentId != null">
  129. and cto.student_id_ = #{studentId}
  130. </if>
  131. order by spo.pay_time_ desc,spo.id_ desc
  132. <include refid="global.limit"/>
  133. </select>
  134. <!-- 查询当前表的总记录数 -->
  135. <select id="queryCount" resultType="int">
  136. SELECT COUNT(cto.id_)
  137. FROM cloud_teacher_order cto LEFT JOIN student_payment_order spo on cto.order_id_ = spo.id_
  138. where spo.type_ = 'MEMBER'
  139. <if test="status != null">
  140. and cto.status_ = #{status}
  141. </if>
  142. <if test="studentId != null">
  143. and cto.student_id_ = #{studentId}
  144. </if>
  145. order by cto.create_time_ desc
  146. </select>
  147. <select id="getNoStartCloudTeacherOrder" resultMap="CloudTeacherOrder">
  148. SELECT cto.*
  149. FROM cloud_teacher_order cto
  150. WHERE cto.status_ = 1
  151. </select>
  152. <select id="getStudentCloudTeacherOrders" resultMap="CloudTeacherOrder">
  153. SELECT *
  154. FROM cloud_teacher_order
  155. WHERE order_id_ IN (
  156. SELECT id_
  157. FROM student_payment_order
  158. WHERE status_ = 'SUCCESS'
  159. AND user_id_ IN
  160. <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
  161. #{studentId}
  162. </foreach>
  163. GROUP BY user_id_
  164. )
  165. AND student_id_ IN
  166. <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
  167. #{studentId}
  168. </foreach>
  169. AND status_ IN (1,2)
  170. </select>
  171. <select id="getStudentCloudTeacherOrder" resultMap="CloudTeacherOrder">
  172. SELECT *
  173. FROM cloud_teacher_order
  174. WHERE student_id_ = #{studentId}
  175. AND status_ IN (1, 2)
  176. </select>
  177. <select id="queryByOrderId" resultMap="CloudTeacherOrder">
  178. SELECT cto.* FROM cloud_teacher_order cto
  179. WHERE order_id_ = #{orderId}
  180. </select>
  181. <select id="queryOrderInfoByOrderId" resultMap="CloudTeacherOrderDto">
  182. SELECT cto.*,spo.status_ trans_status_,spo.expect_amount_,mrs.name_,mrs.icon_ FROM cloud_teacher_order cto
  183. left join student_payment_order spo on cto.order_id_ = spo.id_
  184. left join member_rank_setting mrs on mrs.id_ = cto.level_
  185. where spo.type_ = 'MEMBER' and order_id_ = #{orderId}
  186. </select>
  187. <select id="queryNoStartByUserIds" resultType="java.util.Map">
  188. SELECT student_id_ 'key',create_time_ 'value' FROM cloud_teacher_order
  189. WHERE status_ = 1
  190. <if test="userIds != null and userIds.size > 0">
  191. AND student_id_ IN
  192. <foreach collection="userIds" separator="," item="userId" open="(" close=")">
  193. #{userId}
  194. </foreach>
  195. </if>
  196. GROUP BY student_id_
  197. </select>
  198. </mapper>