You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EXECUTE 'CREATE TEMP TABLE IF NOT EXISTS t_item ON COMMIT DROP AS '
16
+
||'WITH RECURSIVE base AS ( '
17
+
||' (SELECT "Item".*, 1 as level, ROW_NUMBER() OVER () as rn '
18
+
||' FROM "Item" '
19
+
||' LEFT JOIN hot_score_view g(id, "hotScore", "subHotScore") ON g.id = "Item".id '
20
+
||' WHERE "Item"."parentId" = $1 '
21
+
|| _order_by ||''
22
+
||' LIMIT $4 '
23
+
||' OFFSET $5) '
24
+
||' UNION ALL '
25
+
||' (SELECT "Item".*, b.level + 1, ROW_NUMBER() OVER (PARTITION BY "Item"."parentId" '|| _order_by ||') as rn '
26
+
||' FROM "Item" '
27
+
||' JOIN base b ON "Item"."parentId" = b.id '
28
+
||' LEFT JOIN hot_score_view g(id, "hotScore", "subHotScore") ON g.id = "Item".id '
29
+
||' WHERE b.level < $7 AND (b.level = 1 OR b.rn <= $6)) '
30
+
||') '
31
+
||'SELECT "Item".*, '
32
+
||' "Item".created_at at time zone ''UTC'' AS "createdAt", '
33
+
||' "Item".updated_at at time zone ''UTC'' AS "updatedAt", '
34
+
||' "Item"."invoicePaidAt" at time zone ''UTC'' AS "invoicePaidAtUTC", '
35
+
||' to_jsonb(users.*) || jsonb_build_object(''meMute'', "Mute"."mutedId" IS NOT NULL) AS user, '
36
+
||' COALESCE("ItemAct"."meMsats", 0) AS "meMsats", '
37
+
||' COALESCE("ItemAct"."mePendingMsats", 0) as "mePendingMsats", '
38
+
||' COALESCE("ItemAct"."meDontLikeMsats", 0) AS "meDontLikeMsats", '
39
+
||' COALESCE("ItemAct"."meMcredits", 0) AS "meMcredits", '
40
+
||' COALESCE("ItemAct"."mePendingMcredits", 0) as "mePendingMcredits", '
41
+
||' "Bookmark"."itemId" IS NOT NULL AS "meBookmark", '
42
+
||' "ThreadSubscription"."itemId" IS NOT NULL AS "meSubscription", '
43
+
||' g.hot_score AS "hotScore", g.sub_hot_score AS "subHotScore" '
44
+
||'FROM base "Item" '
45
+
||'JOIN users ON users.id = "Item"."userId" '
46
+
||' LEFT JOIN "Mute" ON "Mute"."muterId" = $3 AND "Mute"."mutedId" = "Item"."userId" '
47
+
||' LEFT JOIN "Bookmark" ON "Bookmark"."userId" = $3 AND "Bookmark"."itemId" = "Item".id '
48
+
||' LEFT JOIN "ThreadSubscription" ON "ThreadSubscription"."userId" = $3 AND "ThreadSubscription"."itemId" = "Item".id '
49
+
||' LEFT JOIN hot_score_view g ON g.id = "Item".id '
50
+
||'LEFT JOIN LATERAL ( '
51
+
||' SELECT "itemId", '
52
+
||' sum("ItemAct".msats) FILTER (WHERE "invoiceActionState" IS DISTINCT FROM ''FAILED'' AND "InvoiceForward".id IS NOT NULL AND (act = ''FEE'' OR act = ''TIP'')) AS "meMsats", '
53
+
||' sum("ItemAct".msats) FILTER (WHERE "invoiceActionState" IS DISTINCT FROM ''FAILED'' AND "InvoiceForward".id IS NULL AND (act = ''FEE'' OR act = ''TIP'')) AS "meMcredits", '
54
+
||' sum("ItemAct".msats) FILTER (WHERE "invoiceActionState" IS NOT DISTINCT FROM ''PENDING'' AND "InvoiceForward".id IS NOT NULL AND (act = ''FEE'' OR act = ''TIP'')) AS "mePendingMsats", '
55
+
||' sum("ItemAct".msats) FILTER (WHERE "invoiceActionState" IS NOT DISTINCT FROM ''PENDING'' AND "InvoiceForward".id IS NULL AND (act = ''FEE'' OR act = ''TIP'')) AS "mePendingMcredits", '
56
+
||' sum("ItemAct".msats) FILTER (WHERE "invoiceActionState" IS DISTINCT FROM ''FAILED'' AND act = ''DONT_LIKE_THIS'') AS "meDontLikeMsats" '
57
+
||' FROM "ItemAct" '
58
+
||' LEFT JOIN "Invoice" ON "Invoice".id = "ItemAct"."invoiceId" '
59
+
||' LEFT JOIN "InvoiceForward" ON "InvoiceForward"."invoiceId" = "Invoice"."id" '
0 commit comments