diff --git a/src/service/order.service.ts b/src/service/order.service.ts index ba23cc3..780071d 100644 --- a/src/service/order.service.ts +++ b/src/service/order.service.ts @@ -643,6 +643,37 @@ export class OrderService { o.payment_method as payment_method, cs.order_count as order_count, cs.total_spent as total_spent, + CASE WHEN EXISTS ( + SELECT 1 FROM subscription s + WHERE s.siteId = o.siteId AND s.parent_id = o.externalOrderId + ) THEN 1 ELSE 0 END AS isSubscription, + ( + SELECT COALESCE( + JSON_ARRAYAGG( + JSON_OBJECT( + 'id', s.id, + 'externalSubscriptionId', s.externalSubscriptionId, + 'status', s.status, + 'currency', s.currency, + 'total', s.total, + 'billing_period', s.billing_period, + 'billing_interval', s.billing_interval, + 'customer_id', s.customer_id, + 'customer_email', s.customer_email, + 'parent_id', s.parent_id, + 'start_date', s.start_date, + 'trial_end', s.trial_end, + 'next_payment_date', s.next_payment_date, + 'end_date', s.end_date, + 'line_items', s.line_items, + 'meta_data', s.meta_data + ) + ), + JSON_ARRAY() + ) + FROM subscription s + WHERE s.siteId = o.siteId AND s.parent_id = o.externalOrderId + ) AS related, COALESCE( JSON_ARRAYAGG( CASE WHEN s.id IS NOT NULL THEN JSON_OBJECT(