AdmissionTicketMapper.xml 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  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.admissionticket.mapper.AdmissionTicketMapper">
  6. <resultMap type="admissionTicket" id="AdmissionTicketResult">
  7. <result property="id" column="id"/>
  8. <result property="venueId" column="venue_id"/>
  9. <result property="siteName" column="site_name"/>
  10. <result property="siteType" column="site_type"/>
  11. <result property="session" column="session"/>
  12. <result property="price" column="price"/>
  13. <result property="ticketDate" column="ticket_date"/>
  14. <result property="admissionTicketStatus" column="admission_ticket_status"/>
  15. <result property="venueName" column="venue_name" />
  16. <result property="sort" column="sort" />
  17. </resultMap>
  18. <insert id="insertAdmissionTicketToList" parameterType="list">
  19. insert into beilv_admission_ticket
  20. (id, venue_id, site_name, site_type, session, price, ticket_date, admission_ticket_status, sort)
  21. values
  22. <foreach collection="list" item="ticket" separator=",">
  23. (
  24. #{ticket.id},
  25. #{ticket.venueId},
  26. #{ticket.siteName},
  27. #{ticket.siteType},
  28. #{ticket.session},
  29. #{ticket.price},
  30. #{ticket.ticketDate},
  31. #{ticket.admissionTicketStatus}
  32. #{ticket.sort}
  33. )
  34. </foreach>
  35. </insert>
  36. <sql id="selectBeilvAdmissionTicketVo">
  37. select id, venue_id, site_name, site_type, session, price, ticket_date, admission_ticket_status, sort
  38. from beilv_admission_ticket
  39. </sql>
  40. <select id="selectBeilvAdmissionTicketList" parameterType="AdmissionTicket" resultMap="AdmissionTicketResult">
  41. SELECT
  42. ts.id,
  43. ts.venue_id,
  44. bs.name as site_name,
  45. ts.site_type,
  46. ts.SESSION,
  47. ts.price,
  48. ts.ticket_date,
  49. bv.venue_name,
  50. ts.admission_ticket_status,
  51. ts.sort
  52. from beilv_admission_ticket ts
  53. left join beilv_venue bv on ts.venue_id = bv.id
  54. left join beilv_site bs on ts.site_name = bs.id
  55. <where>
  56. <if test="siteName != null and siteName != ''">and bs.id = #{siteName}</if>
  57. <if test="siteType != null and siteType != ''">and ts.site_type = #{siteType}</if>
  58. <if test="ticketDate != null ">and ts.ticket_date = #{ticketDate}</if>
  59. <if test="admissionTicketStatus != null and admissionTicketStatus != ''">
  60. <choose>
  61. <when test="admissionTicketStatus == -1">
  62. and ts.admission_ticket_status in ('0', '1')
  63. </when>
  64. <otherwise>
  65. and ts.admission_ticket_status = #{admissionTicketStatus}
  66. </otherwise>
  67. </choose>
  68. </if>
  69. </where>
  70. order by site_name, sort
  71. </select>
  72. <select id="selectBeilvAdmissionTicketById" parameterType="String" resultMap="AdmissionTicketResult">
  73. SELECT
  74. ts.id,
  75. ts.venue_id,
  76. ts.site_name,
  77. ts.site_type,
  78. ts.SESSION,
  79. ts.price,
  80. ts.ticket_date,
  81. bv.venue_name,
  82. ts.admission_ticket_status
  83. from beilv_admission_ticket ts
  84. left join beilv_venue bv on ts.venue_id = bv.id
  85. where ts.id = #{id}
  86. </select>
  87. <insert id="insertBeilvAdmissionTicket" parameterType="AdmissionTicket">
  88. insert into beilv_admission_ticket
  89. <trim prefix="(" suffix=")" suffixOverrides=",">
  90. <if test="id != null">id,</if>
  91. <if test="venueId != null">venue_id,</if>
  92. <if test="siteName != null">site_name,</if>
  93. <if test="siteType != null">site_type,</if>
  94. <if test="session != null">session,</if>
  95. <if test="price != null">price,</if>
  96. <if test="ticketDate != null">ticket_date,</if>
  97. <if test="admissionTicketStatus != null">admission_ticket_status,</if>
  98. </trim>
  99. <trim prefix="values (" suffix=")" suffixOverrides=",">
  100. <if test="id != null">#{id},</if>
  101. <if test="venueId != null">#{venueId},</if>
  102. <if test="siteName != null">#{siteName},</if>
  103. <if test="siteType != null">#{siteType},</if>
  104. <if test="session != null">#{session},</if>
  105. <if test="price != null">#{price},</if>
  106. <if test="ticketDate != null">#{ticketDate},</if>
  107. <if test="admissionTicketStatus != null">#{admissionTicketStatus},</if>
  108. </trim>
  109. </insert>
  110. <update id="updateBeilvAdmissionTicket" parameterType="AdmissionTicket">
  111. update beilv_admission_ticket
  112. <trim prefix="SET" suffixOverrides=",">
  113. <if test="venueId != null">venue_id = #{venueId},</if>
  114. <if test="siteName != null">site_name = #{siteName},</if>
  115. <if test="siteType != null">site_type = #{siteType},</if>
  116. <if test="session != null">session = #{session},</if>
  117. <if test="price != null">price = #{price},</if>
  118. <if test="ticketDate != null">ticket_date = #{ticketDate},</if>
  119. <if test="admissionTicketStatus != null">admission_ticket_status = #{admissionTicketStatus},</if>
  120. </trim>
  121. where id = #{id}
  122. </update>
  123. <delete id="deleteBeilvAdmissionTicketById" parameterType="String">
  124. delete
  125. from beilv_admission_ticket
  126. where id = #{id}
  127. </delete>
  128. <delete id="deleteBeilvAdmissionTicketByIds" parameterType="String">
  129. delete from beilv_admission_ticket where id in
  130. <foreach item="id" collection="array" open="(" separator="," close=")">
  131. #{id}
  132. </foreach>
  133. </delete>
  134. <update id="updateTicketStatus">
  135. update beilv_admission_ticket set admission_ticket_status = #{ticketStatus}
  136. where id in
  137. <foreach item="id" collection="ids" open="(" close=")" separator=",">
  138. #{id}
  139. </foreach>
  140. </update>
  141. <select id="isOk" parameterType="BootACourseBO" resultType="boolean">
  142. select CASE
  143. WHEN admission_ticket_status = 0 THEN true
  144. ELSE false
  145. END AS result
  146. FROM
  147. beilv_admission_ticket
  148. WHERE
  149. id = #{ticketId}
  150. </select>
  151. <select id="getThresholdValue" parameterType="string" resultType="map">
  152. select bv.threshold_value as thresholdValue, bat.session, bat.ticket_date as ticketDate
  153. from beilv_admission_ticket bat
  154. left join beilv_venue bv on bat.venue_id = bv.id
  155. where bat.id = #{ticketId}
  156. </select>
  157. </mapper>