|
|
@@ -287,20 +287,17 @@
|
|
|
)
|
|
|
</select>
|
|
|
|
|
|
- <!-- 主查询只 FROM user_reservation;桌位用 EXISTS(非 JOIN);不查 user_reservation_order
|
|
|
+ <!-- 桌位 hasReservation:联查 user_reservation_table;不查 user_reservation_order
|
|
|
0/1 有预订;2 有预订当 NOW() <= 解析后的 end_time + 3 小时(无 end 则算有预订) -->
|
|
|
<select id="countReservationsByTableAndOrderStatus" resultType="java.lang.Long">
|
|
|
- SELECT COUNT(ur.id)
|
|
|
+ SELECT COUNT(DISTINCT ur.id)
|
|
|
FROM user_reservation ur
|
|
|
+ INNER JOIN user_reservation_table urt
|
|
|
+ ON urt.reservation_id = ur.id
|
|
|
+ AND urt.delete_flag = 0
|
|
|
+ AND urt.table_id = #{tableId}
|
|
|
WHERE ur.delete_flag = 0
|
|
|
AND ur.store_id = #{storeId}
|
|
|
- AND EXISTS (
|
|
|
- SELECT 1
|
|
|
- FROM user_reservation_table urt
|
|
|
- WHERE urt.reservation_id = ur.id
|
|
|
- AND urt.table_id = #{tableId}
|
|
|
- AND urt.delete_flag = 0
|
|
|
- )
|
|
|
AND (
|
|
|
ur.status IN (0, 1)
|
|
|
OR (
|