Bläddra i källkod

查询游客名单导出表头信息新增房间总数

caotao 1 vecka sedan
förälder
incheckning
816d3d4a17

+ 18 - 2
ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/order/TradeOrderMapper.xml

@@ -246,7 +246,23 @@
                 GROUP BY rrm.name, torm.floor
                 ORDER BY torm.floor
             ) room_stats
-            ), '') AS roomStats
+            ), '') AS roomStats,
+        (
+        SELECT COUNT(DISTINCT torm.room_index_id)
+            FROM trade_order td
+            INNER JOIN trade_order_user tou ON td.id = tou.order_id AND tou.deleted = 0
+            LEFT JOIN trade_detail tdl ON td.id = tdl.order_id AND tdl.deleted = 0
+            LEFT JOIN trade_visitor tv ON tdl.id = tv.detail_id AND tv.deleted = 0
+            LEFT JOIN trade_order_room_model torm ON tv.room_index_id = torm.room_index_id AND torm.deleted = 0 AND td.id = torm.order_id
+            LEFT JOIN resource_room_model rrm ON torm.room_model_id = rrm.id
+            LEFT JOIN product_spu ps ON ps.id = tdl.product_id
+            LEFT JOIN ota_distributor od ON od.id = td.source_id
+            LEFT JOIN (select m2.order_id,sum(m2.refund_amount) refund_amount,sum(m2.origin_amount) origin_amount from trade_refund m2  where m2.refund_status = 6 and m2.refund_method !=2 GROUP BY m2.order_id) tr on td.id = tr.order_id
+        WHERE td.deleted = 0
+            AND tou.deleted = 0
+            AND tv.type IS NOT NULL
+            <include refid="commonWhereConditions"/>
+        ) AS totalRooms
         FROM (
             SELECT
             COUNT(1) AS num,
@@ -2179,7 +2195,7 @@
         left join trade_visitor tv on tdl.id = tv.detail_id
         left JOIN product_spu ps on ps.id = tdl.product_id
         LEFT JOIN ota_distributor od on od.id = td.source_id
-        left join trade_order_room_model tm on tv.room_index_id = tm.room_index_id and tm.deleted =0
+        left join trade_order_room_model tm on tv.room_index_id = tm.room_index_id and tm.deleted =0 AND td.id = tm.order_id
         left join resource_room_model rrm on tm.room_model_id = rrm.id
         LEFT JOIN (select m2.order_id,sum(m2.refund_amount) refund_amount,sum(m2.origin_amount) origin_amount from trade_refund m2  where m2.refund_status = 6 and m2.refund_method !=2 GROUP BY m2.order_id) tr on td.id = tr.order_id
         where td.deleted = 0 and tou.deleted = 0 and td.order_status >0 and tv.type is not null