BeilvSiteMapper.xml 5.8 KB

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