BeilvSiteMapper.xml 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  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.site.mapper.BeilvSiteMapper">
  6. <resultMap type="BeilvSite" id="BeilvSiteResult">
  7. <result property="id" column="id" />
  8. <result property="name" column="name" />
  9. <result property="siteType" column="site_type" />
  10. <result property="cover" column="cover" />
  11. <result property="intro" column="intro" />
  12. <result property="price" column="price" />
  13. <result property="warmReminder" column="warm_reminder" />
  14. <result property="siteStatus" column="site_status" />
  15. <result property="venueId" column="venue_id" />
  16. <result property="venueName" column="venue_name" />
  17. <result property="businessHours" column="business_hours" />
  18. <result property="address" column="address" />
  19. <result property="phoneNumber" column="phone_number" />
  20. <result property="cameraIndexCode" column="camera_index_code" />
  21. </resultMap>
  22. <sql id="selectBeilvSiteVo">
  23. select id, name, site_type, cover, intro, price, warm_reminder, site_status, venue_id, camera_index_code from beilv_site
  24. </sql>
  25. <select id="selectBeilvSiteList" parameterType="BeilvSite" resultMap="BeilvSiteResult">
  26. SELECT
  27. bs.id,
  28. bs.NAME,
  29. bs.site_type,
  30. bs.cover,
  31. bs.intro,
  32. bs.price,
  33. bs.warm_reminder,
  34. bs.site_status,
  35. bs.venue_id,
  36. bs.camera_index_code,
  37. bv.venue_name,
  38. bv.business_hours,
  39. bv.address,
  40. bv.phone_number
  41. FROM
  42. beilv_site bs
  43. left join beilv_venue bv on bs.venue_id = bv.id
  44. <where>
  45. <if test="name != null and name != ''"> and bs.name like concat('%', #{name}, '%')</if>
  46. <if test="siteType != null and siteType != ''"> and bs.site_type = #{siteType}</if>
  47. <if test="venueId != null and venueId != ''"> and bs.venue_id = #{venueId}</if>
  48. </where>
  49. </select>
  50. <select id="selectBeilvSiteById" parameterType="Long" resultMap="BeilvSiteResult">
  51. SELECT
  52. bs.id,
  53. bs.NAME,
  54. bs.site_type,
  55. bs.cover,
  56. bs.intro,
  57. bs.price,
  58. bs.warm_reminder,
  59. bs.site_status,
  60. bs.venue_id,
  61. bs.camera_index_code,
  62. bv.venue_name
  63. FROM
  64. beilv_site bs
  65. left join beilv_venue bv on bs.venue_id = bv.id
  66. where bs.id = #{id}
  67. </select>
  68. <insert id="insertBeilvSite" parameterType="BeilvSite" useGeneratedKeys="true" keyProperty="id">
  69. insert into beilv_site
  70. <trim prefix="(" suffix=")" suffixOverrides=",">
  71. <if test="name != null">name,</if>
  72. <if test="siteType != null">site_type,</if>
  73. <if test="cover != null">cover,</if>
  74. <if test="intro != null">intro,</if>
  75. <if test="price != null">price,</if>
  76. <if test="warmReminder != null">warm_reminder,</if>
  77. <if test="siteStatus != null">site_status,</if>
  78. <if test="venueId != null">venue_id,</if>
  79. <if test="cameraIndexCode != null">camera_index_code,</if>
  80. </trim>
  81. <trim prefix="values (" suffix=")" suffixOverrides=",">
  82. <if test="name != null">#{name},</if>
  83. <if test="siteType != null">#{siteType},</if>
  84. <if test="cover != null">#{cover},</if>
  85. <if test="intro != null">#{intro},</if>
  86. <if test="price != null">#{price},</if>
  87. <if test="warmReminder != null">#{warmReminder},</if>
  88. <if test="siteStatus != null">#{siteStatus},</if>
  89. <if test="venueId != null">#{venueId},</if>
  90. <if test="cameraIndexCode != null">#{venueId},</if>
  91. </trim>
  92. </insert>
  93. <update id="updateBeilvSite" parameterType="BeilvSite">
  94. update beilv_site
  95. <trim prefix="SET" suffixOverrides=",">
  96. <if test="name != null">name = #{name},</if>
  97. <if test="siteType != null">site_type = #{siteType},</if>
  98. <if test="cover != null">cover = #{cover},</if>
  99. <if test="intro != null">intro = #{intro},</if>
  100. <if test="price != null">price = #{price},</if>
  101. <if test="warmReminder != null">warm_reminder = #{warmReminder},</if>
  102. <if test="siteStatus != null">site_status = #{siteStatus},</if>
  103. <if test="venueId != null">venue_id = #{venueId},</if>
  104. <if test="cameraIndexCode != null">camera_index_code = #{cameraIndexCode},</if>
  105. </trim>
  106. where id = #{id}
  107. </update>
  108. <delete id="deleteBeilvSiteById" parameterType="Long">
  109. delete from beilv_site where id = #{id}
  110. </delete>
  111. <delete id="deleteBeilvSiteByIds" parameterType="String">
  112. delete from beilv_site where id in
  113. <foreach item="id" collection="array" open="(" separator="," close=")">
  114. #{id}
  115. </foreach>
  116. </delete>
  117. <select id="selectOne" parameterType="beilvSite" resultType="boolean">
  118. select case when count(1) > 0 then true
  119. else false
  120. end as result
  121. from beilv_site
  122. <where>
  123. <if test="name != null and name != ''">
  124. and `name` = #{name}
  125. </if>
  126. <if test="siteType != null and siteType != ''">
  127. and site_type = #{siteType}
  128. </if>
  129. <if test="venueId != null and venueId != ''">
  130. and venue_id = #{venueId}
  131. </if>
  132. <if test="id != null and id != ''">
  133. and id != #{id}
  134. </if>
  135. </where>
  136. </select>
  137. <select id="getAllToList" resultMap="BeilvSiteResult">
  138. select * from beilv_site
  139. </select>
  140. <select id="countSiteByVenueId" resultType="Integer">
  141. select count(1) from beilv_site where venue_id = #{venueId}
  142. </select>
  143. <select id="selectSiteTypeByVenueId" parameterType="BeilvSite" resultType="map">
  144. select site_type as siteType from beilv_site where venue_id = #{venueId} group by site_type
  145. </select>
  146. </mapper>