CompetitionMapper.xml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  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="beilv.competition.mapper.CompetitionMapper">
  6. <resultMap type="Competition" id="CompetitionResult">
  7. <result property="id" column="id" />
  8. <result property="competitionTitle" column="competition_title" />
  9. <result property="competitionType" column="competition_type" />
  10. <result property="personMax" column="person_max" />
  11. <result property="teamMax" column="team_max" />
  12. <result property="competitionPlace" column="competition_place" />
  13. <result property="applyStartTime" column="apply_start_time" />
  14. <result property="applyEndTime" column="apply_end_time" />
  15. <result property="applyBeforeTime" column="apply_before_time" />
  16. <result property="competitionMaximum" column="competition_maximum" />
  17. <result property="competitionExpense" column="competition_expense" />
  18. <result property="competitionDetails" column="competition_details" />
  19. <result property="registrationNotes" column="registration_notes" />
  20. <result property="competitionState" column="competition_state" />
  21. <result property="viewingTicket" column="viewing_ticket" />
  22. <result property="createTime" column="create_time" />
  23. <result property="createBy" column="create_by" />
  24. <result property="createName" column="create_name" />
  25. <result property="updateTime" column="update_time" />
  26. <result property="updateBy" column="update_by" />
  27. <result property="updateName" column="update_name" />
  28. <result property="publishTime" column="publish_time" />
  29. <result property="publishBy" column="publish_by" />
  30. <result property="publishName" column="publish_name" />
  31. <result property="competitionImg" column="competition_img" />
  32. </resultMap>
  33. <sql id="selectCompetitionVo">
  34. select a.id, a.competition_title, a.competition_type, a.person_max, a.team_max,
  35. a.competition_place, a.apply_start_time, a.apply_end_time, a.apply_before_time,
  36. a.competition_maximum, a.competition_expense, a.viewing_ticket,
  37. a.competition_details, a.registration_notes, a.competition_state,
  38. a.create_time, a.create_by, a.create_name, a.update_time, a.update_by, a.update_name, a.publish_time, a.publish_by, a.publish_name, a.competition_img
  39. from beilv_competition a
  40. </sql>
  41. <select id="selectCompetitionList" parameterType="Competition" resultMap="CompetitionResult">
  42. select a.id, a.competition_title, a.competition_type, a.person_max, a.team_max,
  43. bs.name as competition_place, a.apply_start_time, a.apply_end_time, a.apply_before_time,
  44. a.competition_maximum, a.competition_expense, a.viewing_ticket,
  45. a.competition_details, a.registration_notes, a.competition_state,
  46. a.create_time, a.create_by, a.create_name, a.update_time, a.update_by, a.update_name, a.publish_time, a.publish_by, a.publish_name, a.competition_img
  47. from beilv_competition a
  48. left join beilv_site bs on a.competition_place = bs.id
  49. <where>
  50. <if test="competitionTitle != null and competitionTitle != ''"> and competition_title like concat('%', #{competitionTitle}, '%')</if>
  51. <if test="competitionType != null and competitionType != ''"> and competition_type = #{competitionType}</if>
  52. <if test="competitionPlace != null and competitionPlace != ''"> and competition_place like concat('%', #{competitionPlace}, '%')</if>
  53. <if test="applyStartTime != null "> and apply_start_time = #{applyStartTime}</if>
  54. <if test="competitionState != null and competitionState != ''"> and competition_state = #{competitionState}</if>
  55. </where>
  56. order by create_time desc
  57. </select>
  58. <select id="selectCompetitionById" parameterType="Integer" resultMap="CompetitionResult">
  59. select a.id, a.competition_title, a.competition_type, a.person_max, a.team_max,
  60. bs.name as competition_place, a.apply_start_time, a.apply_end_time, a.apply_before_time,
  61. a.competition_maximum, a.competition_expense, a.viewing_ticket,
  62. a.competition_details, a.registration_notes, a.competition_state,
  63. a.create_time, a.create_by, a.create_name, a.update_time, a.update_by, a.update_name, a.publish_time, a.publish_by, a.publish_name, a.competition_img
  64. from beilv_competition a
  65. left join beilv_site bs on a.competition_place = bs.id
  66. where a.id = #{id}
  67. </select>
  68. <insert id="insertCompetition" parameterType="Competition" useGeneratedKeys="true" keyProperty="id">
  69. insert into beilv_competition
  70. <trim prefix="(" suffix=")" suffixOverrides=",">
  71. <if test="competitionTitle != null">competition_title,</if>
  72. <if test="competitionType != null">competition_type,</if>
  73. <if test="personMax != null">person_max,</if>
  74. <if test="teamMax != null">team_max,</if>
  75. <if test="competitionPlace != null">competition_place,</if>
  76. <if test="applyStartTime != null">apply_start_time,</if>
  77. <if test="applyEndTime != null">apply_end_time,</if>
  78. <if test="applyBeforeTime != null">apply_before_time,</if>
  79. <if test="competitionMaximum != null">competition_maximum,</if>
  80. <if test="competitionExpense != null">competition_expense,</if>
  81. <if test="viewingTicket != null">viewing_ticket,</if>
  82. <if test="competitionDetails != null">competition_details,</if>
  83. <if test="registrationNotes != null">registration_notes,</if>
  84. <if test="competitionState != null">competition_state,</if>
  85. <if test="createTime != null">create_time,</if>
  86. <if test="updateTime != null">update_time,</if>
  87. <if test="publishTime != null">publish_time,</if>
  88. <if test="createBy != null">create_by,</if>
  89. <if test="updateBy != null">update_by,</if>
  90. <if test="publishBy != null">publish_by,</if>
  91. <if test="createName != null">create_name,</if>
  92. <if test="updateName != null">update_name,</if>
  93. <if test="publishName != null">publish_name,</if>
  94. <if test="competitionImg != null">competition_img,</if>
  95. </trim>
  96. <trim prefix="values (" suffix=")" suffixOverrides=",">
  97. <if test="competitionTitle != null">#{competitionTitle},</if>
  98. <if test="competitionType != null">#{competitionType},</if>
  99. <if test="personMax != null">#{personMax},</if>
  100. <if test="teamMax != null">#{teamMax},</if>
  101. <if test="competitionPlace != null">#{competitionPlace},</if>
  102. <if test="applyStartTime != null">#{applyStartTime},</if>
  103. <if test="applyEndTime != null">#{applyEndTime},</if>
  104. <if test="applyBeforeTime != null">#{applyBeforeTime},</if>
  105. <if test="competitionMaximum != null">#{competitionMaximum},</if>
  106. <if test="competitionExpense != null">#{competitionExpense},</if>
  107. <if test="viewingTicket != null">#{viewingTicket},</if>
  108. <if test="competitionDetails != null">#{competitionDetails},</if>
  109. <if test="registrationNotes != null">#{registrationNotes},</if>
  110. <if test="competitionState != null">#{competitionState},</if>
  111. <if test="createTime != null">#{createTime},</if>
  112. <if test="updateTime != null">#{updateTime},</if>
  113. <if test="publishTime != null">#{publishTime},</if>
  114. <if test="createBy != null">#{createBy},</if>
  115. <if test="updateBy != null">#{updateBy},</if>
  116. <if test="publishBy != null">#{publishBy},</if>
  117. <if test="createName != null">#{createName},</if>
  118. <if test="updateName != null">#{updateName},</if>
  119. <if test="publishName != null">#{publishName},</if>
  120. <if test="competitionImg != null">#{competitionImg},</if>
  121. </trim>
  122. </insert>
  123. <update id="updateCompetition" parameterType="Competition">
  124. update beilv_competition
  125. <trim prefix="SET" suffixOverrides=",">
  126. <if test="competitionTitle != null">competition_title = #{competitionTitle},</if>
  127. <if test="competitionType != null">competition_type = #{competitionType},</if>
  128. <if test="personMax != null">person_max = #{personMax},</if>
  129. <if test="teamMax != null">team_max = #{teamMax},</if>
  130. <if test="competitionPlace != null">competition_place = #{competitionPlace},</if>
  131. <if test="applyStartTime != null">apply_start_time = #{applyStartTime},</if>
  132. <if test="applyEndTime != null">apply_end_time = #{applyEndTime},</if>
  133. <if test="applyBeforeTime != null">apply_before_time = #{applyBeforeTime},</if>
  134. <if test="competitionMaximum != null">competition_maximum = #{competitionMaximum},</if>
  135. <if test="competitionExpense != null">competition_expense = #{competitionExpense},</if>
  136. <if test="viewingTicket != null">viewing_ticket = #{viewingTicket},</if>
  137. <if test="competitionDetails != null">competition_details = #{competitionDetails},</if>
  138. <if test="registrationNotes != null">registration_notes = #{registrationNotes},</if>
  139. <if test="competitionState != null">competition_state = #{competitionState},</if>
  140. <if test="updateTime != null">update_time = #{updateTime},</if>
  141. <if test="updateBy != null">update_by = #{updateBy},</if>
  142. <if test="updateName != null">update_name = #{updateName},</if>
  143. <if test="competitionImg != null">competition_img = #{competitionImg},</if>
  144. </trim>
  145. where id = #{id}
  146. </update>
  147. <delete id="deleteCompetitionById" parameterType="Integer">
  148. delete from beilv_competition where id = #{id}
  149. </delete>
  150. <delete id="deleteCompetitionByIds" parameterType="String">
  151. delete from beilv_competition where id in
  152. <foreach item="id" collection="array" open="(" separator="," close=")">
  153. #{id}
  154. </foreach>
  155. </delete>
  156. <update id="publishCompetition" parameterType="Competition">
  157. update beilv_competition set
  158. competition_state = #{competitionState},
  159. publish_time = #{publishTime},
  160. publish_by = #{publishBy},
  161. publish_name = #{publishName}
  162. where id = #{id}
  163. </update>
  164. <select id="getCompetitionList" resultMap="CompetitionResult">
  165. select * from beilv_competition where competition_state = 'competiton_state_2'
  166. </select>
  167. <select id="selectStadumIsOpenById" parameterType="string" resultType="boolean">
  168. SELECT
  169. CASE
  170. WHEN COUNT(1) > 0 THEN false
  171. ELSE true
  172. END AS result
  173. FROM
  174. beilv_book_a_race
  175. WHERE
  176. payment_status = 'payment_status_have_paid'
  177. AND competition_id = #{id}
  178. </select>
  179. <update id="updateBookARace" parameterType="Stadium">
  180. update beilv_book_a_race
  181. set payment_status = #{paymentStatus},
  182. verification_time = #{verificationTime}
  183. where
  184. competition_id = #{competitionId}
  185. and
  186. payment_status = 'payment_status_have_paid'
  187. </update>
  188. <select id="getCompetitionInfo" parameterType="string" resultMap="CompetitionResult">
  189. select bc.* from beilv_book_a_race bar left join beilv_competition bc on bar.competition_id = bc.id
  190. where bar.order_id = #{orderId}
  191. </select>
  192. </mapper>