ParkRoomReservationExtendMapper.xml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  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.idea.buildManage.mapper.ParkRoomReservationExtendMapper">
  4. <select id="listPage" parameterType="com.idea.buildManage.dto.ParkRoomReservationDto"
  5. resultType="com.idea.buildManage.model.ParkRoomReservation">
  6. select a.id,
  7. a.park_info_id,
  8. a.park_info_name,
  9. a.park_floor_disc_id,
  10. a.park_floor_disc_name,
  11. a.mnp_building_id,
  12. a.mnp_building_no,
  13. a.park_room_id,
  14. a.park_room_floor,
  15. a.park_room_no,
  16. a.buyer_name,
  17. a.buyer_phone,
  18. a.buyer_gender,
  19. a.buyer_address,
  20. a.applicant_name,
  21. a.applicant_phone,
  22. a.overview_content,
  23. a.reservation_date,
  24. a.reservation_time_start,
  25. a.reservation_time_end,
  26. a.reservation_order,
  27. a.reservation_status,
  28. case a.reservation_status
  29. when 1 then '已预约'
  30. when 2 then '已取消'
  31. when 3 then '待入户'
  32. when 4 then '已完成'
  33. end as reservationStatusStr,
  34. a.door_pass_status,
  35. case a.door_pass_status
  36. when 1 then '未发'
  37. when 2 then '已发'
  38. end as doorPassStatusStr,
  39. a.create_user,
  40. a.create_time,
  41. a.update_user,
  42. a.update_time,
  43. a.looking_notes,
  44. b.truename as createUserName,
  45. if(c.id is not null, '已匹配', '未匹配') as doorStatus
  46. from park_room_reservation a
  47. left join frame_user b on b.id = a.create_user
  48. left join park_room_bind_door c on c.park_room_id = a.park_room_id
  49. <where>
  50. <if test="keyword!=null and keyword!=''">
  51. and (
  52. a.buyer_name like concat('%',#{keyword},'%')
  53. or
  54. a.buyer_phone like concat('%',#{keyword},'%')
  55. )
  56. </if>
  57. <if test="createTimeStart!=null and createTimeStart!=''">
  58. and date_format(a.create_time, '%Y-%m-%d') &gt;= #{createTimeStart}
  59. </if>
  60. <if test="createTimeEnd!=null and createTimeEnd!=''">
  61. and date_format(a.create_time, '%Y-%m-%d') &lt;= #{createTimeEnd}
  62. </if>
  63. <if test="reservationStatus!=null">
  64. and a.reservation_status= #{reservationStatus}
  65. </if>
  66. <if test="parkInfoId!=null and parkInfoId!=''">
  67. and a.park_info_id = #{parkInfoId}
  68. </if>
  69. <if test="mnpBuildingId!=null and mnpBuildingId!=''">
  70. and a.mnp_building_id = #{mnpBuildingId}
  71. </if>
  72. <if test="parkRoomNo!=null and parkRoomNo!=''">
  73. and a.park_room_no like concat('%',#{parkRoomNo},'%')
  74. </if>
  75. <if test="roomAddress!=null and roomAddress!=''">
  76. and concat(a.park_info_name, a.park_floor_disc_name, a.mnp_building_no, '号', a.park_room_no, '室') like concat('%',#{roomAddress},'%')
  77. </if>
  78. </where>
  79. order by create_time desc
  80. </select>
  81. <select id="completeListPage" parameterType="com.idea.buildManage.dto.ParkRoomReservationDto"
  82. resultType="com.idea.buildManage.model.ParkRoomReservation">
  83. select a.id,
  84. a.park_info_id,
  85. a.park_info_name,
  86. a.park_floor_disc_id,
  87. a.park_floor_disc_name,
  88. a.mnp_building_id,
  89. a.mnp_building_no,
  90. a.park_room_id,
  91. a.park_room_floor,
  92. a.park_room_no,
  93. a.buyer_name,
  94. a.buyer_phone,
  95. a.buyer_gender,
  96. a.buyer_address,
  97. a.applicant_name,
  98. a.applicant_phone,
  99. a.overview_content,
  100. a.reservation_date,
  101. a.reservation_time_start,
  102. a.reservation_time_end,
  103. a.reservation_order,
  104. a.reservation_status,
  105. case a.reservation_status
  106. when 1 then '已预约'
  107. when 2 then '已取消'
  108. when 3 then '待入户'
  109. when 4 then '已完成'
  110. end as reservationStatusStr,
  111. a.door_pass_status,
  112. case a.door_pass_status
  113. when 1 then '未发'
  114. when 2 then '已发'
  115. end as doorPassStatusStr,
  116. a.create_user,
  117. a.create_time,
  118. a.update_user,
  119. a.update_time,
  120. a.looking_notes,
  121. b.truename as createUserName,
  122. if(c.id is not null, '已匹配', '未匹配') as doorStatus
  123. from park_room_reservation a
  124. left join frame_user b on b.id = a.create_user
  125. left join park_room_bind_door c on c.park_room_id = a.park_room_id
  126. <where>
  127. <if test="keyword!=null and keyword!=''">
  128. and (
  129. a.buyer_name like concat('%',#{keyword},'%')
  130. or
  131. a.buyer_phone like concat('%',#{keyword},'%')
  132. )
  133. </if>
  134. <if test="createTimeStart!=null and createTimeStart!=''">
  135. and date_format(a.create_time, '%Y-%m-%d') &gt;= #{createTimeStart}
  136. </if>
  137. <if test="createTimeEnd!=null and createTimeEnd!=''">
  138. and date_format(a.create_time, '%Y-%m-%d') &lt;= #{createTimeEnd}
  139. </if>
  140. <if test="reservationStatus!=null">
  141. and a.reservation_status= #{reservationStatus}
  142. </if>
  143. <if test="parkInfoId!=null and parkInfoId!=''">
  144. and a.park_info_id = #{parkInfoId}
  145. </if>
  146. <if test="mnpBuildingId!=null and mnpBuildingId!=''">
  147. and a.mnp_building_id = #{mnpBuildingId}
  148. </if>
  149. <if test="parkRoomNo!=null and parkRoomNo!=''">
  150. and a.park_room_no like concat('%',#{parkRoomNo},'%')
  151. </if>
  152. <if test="roomAddress!=null and roomAddress!=''">
  153. and concat(a.park_info_name, a.park_floor_disc_name, a.mnp_building_no, '号', a.park_room_no, '室') like concat('%',#{roomAddress},'%')
  154. </if>
  155. </where>
  156. order by park_info_name, mnp_building_no + 0, park_room_no + 0, reservation_date desc
  157. </select>
  158. <select id="roomListPage" parameterType="com.idea.buildManage.dto.RoomSearchDto"
  159. resultType="com.idea.buildManage.vo.ParkRoomVo">
  160. select a.id, a.group_id, a.group_name, a.disc_id, a.disc_name, a.build_id, a.build_name, a.floor, a.room_no,
  161. IF(b.id is not null, '已匹配', '未匹配') as doorStatus, c.num as personNum
  162. from park_room a
  163. left join park_room_bind_door b on b.park_room_id = a.id
  164. left join (
  165. select park_room_id, count(1) as num
  166. from park_room_reservation
  167. group by park_room_id
  168. ) c on c.park_room_id = a.id
  169. <where>
  170. <if test="parkInfoId!=null and parkInfoId!=''">
  171. and a.group_id = #{parkInfoId}
  172. </if>
  173. <if test="mnpBuildingId!=null and mnpBuildingId!=''">
  174. and a.build_id = #{mnpBuildingId}
  175. </if>
  176. <if test="roomAddress!=null and roomAddress!=''">
  177. and concat(a.group_name, a.disc_name, a.build_name, '号', a.room_no, '室') like concat('%',#{roomAddress},'%')
  178. </if>
  179. </where>
  180. order by group_name, build_name + 0, room_no + 0
  181. </select>
  182. </mapper>