SubjectChangeMapper.xml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  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.SubjectChangeDao">
  4. <resultMap id="SubjectChange" type="com.ym.mec.biz.dal.entity.SubjectChange">
  5. <!--@mbg.generated-->
  6. <!--@Table subject_change-->
  7. <id column="id_" property="id"/>
  8. <result column="edu_teacher_id_" property="eduTeacherId"/>
  9. <result column="eduTeacher" property="eduTeacher"/>
  10. <result column="student_id_" property="studentId"/>
  11. <result column="studentName" property="studentName"/>
  12. <result column="organ_id_" property="organId"/>
  13. <result column="organName" property="organName"/>
  14. <result column="cooperation_organ_id_" property="cooperationOrganId"/>
  15. <result column="cooperationOrganName" property="cooperationOrganName"/>
  16. <result column="music_group_id_" property="musicGroupId"/>
  17. <result column="musicGroupName" property="musicGroupName"/>
  18. <result column="original_subject_id_" property="originalSubjectId"/>
  19. <result column="original_course_fee_" property="originalCourseFee"/>
  20. <result column="original_musical_" property="originalMusical"/>
  21. <result column="original_musical_price_" property="originalMusicalPrice"/>
  22. <result column="original_accessories_" property="originalAccessories"/>
  23. <result column="original_accessories_price_" property="originalAccessoriesPrice"/>
  24. <result column="original_cost_" property="originalCost"/>
  25. <result column="kit_group_purchase_type_" property="kitGroupPurchaseType"
  26. typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
  27. <result column="change_subject_id_" property="changeSubjectId"/>
  28. <result column="change_course_fee_" property="changeCourseFee"/>
  29. <result column="change_musical_" property="changeMusical"/>
  30. <result column="change_musical_price_" property="changeMusicalPrice"/>
  31. <result column="change_accessories_" property="changeAccessories"/>
  32. <result column="change_accessories_price_" property="changeAccessoriesPrice"/>
  33. <result column="change_cost_" property="changeCost"/>
  34. <result column="goods_margin_" property="goodsMargin"/>
  35. <result column="course_margin_" property="courseMargin"/>
  36. <result column="cost_margin_" property="costMargin"/>
  37. <result column="sell_amount_" property="sellAmount"/>
  38. <result column="order_id_" property="orderId"/>
  39. <result column="order_no_" property="orderNo"/>
  40. <result column="trans_no_" property="transNo"/>
  41. <result column="payment_channel_" property="paymentChannel"/>
  42. <result column="mer_no_" property="merNo"/>
  43. <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
  44. <result column="create_time_" property="createTime"/>
  45. <result column="update_time" property="updateTime"/>
  46. <result column="version_" property="version"/>
  47. </resultMap>
  48. <sql id="Base_Column_List">
  49. <!--@mbg.generated-->
  50. id_,edu_teacher_id_,student_id_,organ_id_,cooperation_organ_id_,
  51. music_group_id_,original_subject_id_,original_course_fee_, original_musical_,
  52. original_musical_price_,
  53. original_accessories_,original_accessories_price_,kit_group_purchase_type_,change_subject_id_,
  54. change_course_fee_, change_musical_,
  55. original_cost_,change_musical_price_,change_accessories_, change_accessories_price_,change_cost_, goods_margin_,
  56. course_margin_,cost_margin_,sell_amount_,order_id_,order_no_,trans_no_,
  57. status_,payment_channel_,mer_no_,sell_time_,create_time_,
  58. update_time,version_
  59. </sql>
  60. <select id="get" parameterType="java.lang.Integer" resultMap="SubjectChange">
  61. <!--@mbg.generated-->
  62. select
  63. <include refid="Base_Column_List"/>
  64. from subject_change
  65. where id_ = #{id}
  66. </select>
  67. <delete id="delete" parameterType="java.lang.Integer">
  68. <!--@mbg.generated-->
  69. delete from subject_change
  70. where id_ = #{id}
  71. </delete>
  72. <insert id="insert" keyColumn="id_" keyProperty="id" parameterType="com.ym.mec.biz.dal.entity.SubjectChange"
  73. useGeneratedKeys="true">
  74. <!--@mbg.generated-->
  75. insert into subject_change
  76. (student_id_,edu_teacher_id_,organ_id_,cooperation_organ_id_,music_group_id_,original_subject_id_,original_course_fee_,
  77. original_musical_,
  78. original_musical_price_,original_accessories_,original_accessories_price_,original_cost_,kit_group_purchase_type_,
  79. change_subject_id_,change_course_fee_, change_musical_, change_musical_price_,
  80. change_accessories_, change_accessories_price_, change_cost_,goods_margin_,
  81. course_margin_,cost_margin_,sell_amount_,order_id_,
  82. order_no_,trans_no_,status_,sell_time_, create_time_, update_time,version_)
  83. values
  84. (#{studentId},#{eduTeacherId},#{organId},#{cooperationOrganId},#{musicGroupId},#{originalSubjectId},#{originalCourseFee},
  85. #{originalMusical},
  86. #{originalMusicalPrice},
  87. #{originalAccessories},
  88. #{originalAccessoriesPrice},#{originalCost},#{kitGroupPurchaseType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
  89. #{changeSubjectId},#{changeCourseFee}, #{changeMusical},
  90. #{changeMusicalPrice}, #{changeAccessories}, #{changeAccessoriesPrice},#{changeCost}, #{goodsMargin},
  91. #{courseMargin},#{costMargin},
  92. #{sellAmount},#{orderId},#{orderNo},#{transNo},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{sellTime},
  93. #{createTime}, #{updateTime},#{version})
  94. </insert>
  95. <update id="update" parameterType="com.ym.mec.biz.dal.entity.SubjectChange">
  96. <!--@mbg.generated-->
  97. update subject_change
  98. <set>
  99. <if test="eduTeacherId !=null ">
  100. edu_teacher_id_ = #{eduTeacherId},
  101. </if>
  102. <if test="studentId != null">
  103. student_id_ = #{studentId},
  104. </if>
  105. <if test="organId != null">
  106. organ_id_ = #{organId},
  107. </if>
  108. <if test="musicGroupId != null">
  109. music_group_id_ = #{musicGroupId},
  110. </if>
  111. <if test="originalCourseFee != null">
  112. original_course_fee_ = #{originalCourseFee},
  113. </if>
  114. <if test="originalMusical != null">
  115. original_musical_ = #{originalMusical},
  116. </if>
  117. <if test="originalMusicalPrice != null">
  118. original_musical_price_ = #{originalMusicalPrice},
  119. </if>
  120. <if test="originalAccessories != null">
  121. original_accessories_ = #{originalAccessories},
  122. </if>
  123. <if test="originalAccessoriesPrice != null">
  124. original_accessories_price_ = #{originalAccessoriesPrice},
  125. </if>
  126. <if test="originalCost != null">
  127. original_cost_ = #{originalCost},
  128. </if>
  129. <if test="changeCourseFee != null">
  130. change_course_fee_ = #{changeCourseFee},
  131. </if>
  132. <if test="changeMusical != null">
  133. change_musical_ = #{changeMusical},
  134. </if>
  135. <if test="changeMusicalPrice != null">
  136. change_musical_price_ = #{changeMusicalPrice},
  137. </if>
  138. <if test="changeAccessories != null">
  139. change_accessories_ = #{changeAccessories},
  140. </if>
  141. <if test="changeAccessoriesPrice != null">
  142. change_accessories_price_ = #{changeAccessoriesPrice},
  143. </if>
  144. <if test="changeCost != null">
  145. change_cost_ = #{changeCost},
  146. </if>
  147. <if test="goodsMargin != null">
  148. goods_margin_ = #{goodsMargin},
  149. </if>
  150. <if test="courseMargin != null">
  151. course_margin_ = #{courseMargin},
  152. </if>
  153. <if test="costMargin != null">
  154. cost_margin_ = #{costMargin},
  155. </if>
  156. <if test="orderId != null">
  157. order_id_ = #{orderId},
  158. </if>
  159. <if test="orderNo != null">
  160. order_no_ = #{orderNo},
  161. </if>
  162. <if test="transNo != null">
  163. trans_no_ = #{transNo},
  164. </if>
  165. <if test="status != null">
  166. status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
  167. </if>
  168. <if test="paymentChannel != null">
  169. payment_channel_=#{paymentChannel},
  170. </if>
  171. <if test="merNo != null">
  172. mer_no_ = #{merNo},
  173. </if>
  174. <if test="sellTime != null">
  175. sell_time_ = #{sellTime},
  176. </if>
  177. <if test="createTime != null">
  178. create_time_ = #{createTime},
  179. </if>
  180. <if test="updateTime != null">
  181. update_time = #{updateTime},
  182. </if>
  183. version_ = version_+1
  184. </set>
  185. where id_ = #{id} AND version_ = #{version}
  186. </update>
  187. <select id="getStudentLastChange" resultMap="SubjectChange">
  188. SELECT *
  189. FROM subject_change
  190. WHERE student_id_ = #{studentId}
  191. AND music_group_id_ = #{musicGroupId}
  192. AND status_ = 'SUCCESSED'
  193. ORDER BY create_time_ DESC
  194. LIMIT 1
  195. </select>
  196. <select id="getChangeInfo" resultMap="SubjectChange">
  197. SELECT sc.*, su.username_ studentName
  198. FROM subject_change sc
  199. LEFT jOIN sys_user su ON su.id_ = sc.student_id_
  200. WHERE sc.id_ = #{id}
  201. </select>
  202. <select id="getMusicGroupWaitPay" resultMap="SubjectChange">
  203. SELECT *
  204. FROM subject_change
  205. WHERE music_group_id_ = #{musicGroupId}
  206. AND status_ = 0
  207. </select>
  208. <select id="queryPage" resultMap="SubjectChange">
  209. SELECT * FROM subject_change sc
  210. <include refid="queryPageSql"/>
  211. ORDER BY sc.id_ DESC
  212. <include refid="global.limit"/>
  213. </select>
  214. <select id="getPageList" resultMap="SubjectChange">
  215. SELECT sc.*,s.username_ studentName,o.name_ organName,co.name_ cooperationOrganName,edu.real_name_ eduTeacher,
  216. mg.name_ musicGroupName FROM subject_change sc
  217. LEFT JOIN music_group mg ON mg.id_ = sc.music_group_id_
  218. LEFT JOIN sys_user s ON sc.student_id_ = s.id_
  219. LEFT JOIN sys_user edu ON edu.id_ = sc.edu_teacher_id_
  220. LEFT JOIN organization o ON sc.organ_id_ = o.id_
  221. LEFT JOIN cooperation_organ co ON sc.cooperation_organ_id_ = co.id_
  222. <include refid="queryPageSql"/>
  223. ORDER BY sc.sell_time_ DESC
  224. <include refid="global.limit"/>
  225. </select>
  226. <sql id="queryPageSql">
  227. <where>
  228. <if test="search != null and search != ''">
  229. AND (sc.order_no_ = #{search} OR sc.trans_no_ = #{search} OR s.username_ LIKE CONCAT('%',#{search},'%'))
  230. </if>
  231. <if test="organIdList != null and organIdList != ''">
  232. AND FIND_IN_SET(sc.organ_id_,#{organIdList})
  233. </if>
  234. <if test="cooperationOrganId != null">
  235. AND sc.cooperation_organ_id_ = #{cooperationOrganId}
  236. </if>
  237. <if test="startTime != null">
  238. AND sc.sell_time_ >= #{startTime}
  239. </if>
  240. <if test="endTime != null">
  241. AND sc.sell_time_ &lt;= #{endTime}
  242. </if>
  243. </where>
  244. </sql>
  245. <select id="queryCount" resultType="int">
  246. SELECT COUNT(*) FROM subject_change sc
  247. LEFT JOIN sys_user s ON sc.student_id_ = s.id_
  248. <include refid="queryPageSql"/>
  249. </select>
  250. </mapper>