jincheng преди 2 седмици
родител
ревизия
2dc99cd00b
променени са 1 файла, в които са добавени 11 реда и са изтрити 9 реда
  1. 11 9
      ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/report/YangtzePassengerSummaryMapper.xml

+ 11 - 9
ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/report/YangtzePassengerSummaryMapper.xml

@@ -45,15 +45,17 @@
         INNER JOIN resource_route r ON v.route_id = r.id AND r.deleted = 0
 
         LEFT JOIN (
-            SELECT
-                o.voyage_id,
-                SUM(COALESCE(tot.use_room_num, 0)) AS totalRooms,
-                SUM(CASE WHEN o.order_status = 1 or o.order_status = 6 THEN COALESCE(tot.use_room_num, 0) ELSE 0 END) AS paidRooms,
-                SUM(CASE WHEN o.order_status = 14 THEN COALESCE(tot.use_room_num, 0) ELSE 0 END) AS reservedRooms
-            FROM trade_order_room_model tot
-            LEFT JOIN  trade_order o ON o.id = tot.order_id AND tot.deleted = 0
-            WHERE o.deleted = 0 AND o.order_status IN (14,6,1)
-            GROUP BY o.voyage_id
+        SELECT
+        o.voyage_id,
+        COUNT(DISTINCT tot.room_index_id) AS totalRooms,
+        COUNT(DISTINCT CASE WHEN o.order_status != 14 THEN tot.room_index_id END) AS paidRooms,
+        COUNT(DISTINCT CASE WHEN o.order_status = 14 THEN tot.room_index_id END) AS reservedRooms
+        FROM trade_order_room_model tot
+        INNER JOIN trade_order o ON o.id = tot.order_id
+        WHERE o.deleted = 0
+        AND tot.deleted = 0
+        AND o.order_status IN (15, 14, 13, 10, 12, 9, 8, 7, 6, 5, 4, 3, 1, 0)
+        GROUP BY o.voyage_id
         ) room_stats ON v.id = room_stats.voyage_id
 
         LEFT JOIN (