Show only current app

This commit is contained in:
Jan Kvetina 2022-01-03 21:14:29 +01:00
parent cf2c723a19
commit c98013c730
5 changed files with 38 additions and 16 deletions

View File

@ -6,6 +6,7 @@ WITH x AS (
app.get_item('$PAGE_ID') AS page_id,
app.get_item('$USER_ID') AS user_id,
app.get_item('$SESSION_ID') AS session_id,
app.get_app_id() AS app_id,
--
TRUNC(COALESCE(app.get_date_item('$TODAY'), app.get_date_item('G_TODAY'), SYSDATE)) AS today
FROM users u
@ -30,6 +31,7 @@ FROM logs l
JOIN x
ON l.created_at >= x.today
AND l.created_at < x.today + 1
AND l.app_id = x.app_id
AND l.log_id > NVL(x.recent_log_id, 0)
AND l.flag = NVL(x.flag, l.flag)
AND l.page_id = NVL(x.page_id, l.page_id)

View File

@ -17,6 +17,7 @@ SELECT
FROM logs l
CONNECT BY l.log_parent = PRIOR l.log_id
START WITH l.log_id = app.get_log_tree_id()
AND l.app_id = app.get_app_id()
ORDER SIBLINGS BY l.log_id;
--
COMMENT ON TABLE logs_tree IS 'All messages related to selected tree id (`app.get_log_tree_id()`)';

View File

@ -1,6 +1,7 @@
CREATE OR REPLACE VIEW nav_badges AS
WITH x AS (
SELECT
app.get_app_id() AS app_id,
app.is_developer_y() AS is_developer
FROM users u
WHERE u.user_id = app.get_user_id()
@ -14,6 +15,7 @@ JOIN x
ON x.is_developer = 'Y'
WHERE l.created_at >= TRUNC(SYSDATE)
AND l.flag = 'E'
AND l.app_id = x.app_id
--
UNION ALL
SELECT -- today users
@ -25,6 +27,7 @@ FROM sessions s
JOIN x
ON x.is_developer = 'Y'
WHERE s.created_at >= TRUNC(SYSDATE)
AND s.app_id = x.app_id
--
UNION ALL
SELECT -- pages to add/remove
@ -33,7 +36,9 @@ SELECT -- pages to add/remove
--
TO_CHAR(NULLIF(COUNT(*), 0)) AS badge
FROM nav_overview n
WHERE n.app_id = app.get_app_id()
JOIN x
ON x.is_developer = 'Y'
WHERE n.app_id = x.app_id
AND n.action IS NOT NULL
--
UNION ALL

View File

@ -1,11 +1,23 @@
CREATE OR REPLACE VIEW sessions_chart AS
WITH z AS (
WITH x AS (
SELECT
LEVEL AS bucket_id,
TRUNC(SYSDATE) + NUMTODSINTERVAL((LEVEL - 1) * 10, 'MINUTE') AS start_at,
TRUNC(SYSDATE) + NUMTODSINTERVAL( LEVEL * 10, 'MINUTE') AS end_at
FROM DUAL
CONNECT BY LEVEL <= (1440 / 10)
TRUNC(app.get_date_item('G_TODAY')) AS today,
app.get_app_id() AS app_id,
10 AS buckets
FROM users u
WHERE u.user_id = app.get_user_id()
),
z AS (
SELECT
x.app_id,
x.buckets,
x.today,
--
LEVEL AS bucket_id,
TRUNC(SYSDATE) + NUMTODSINTERVAL((LEVEL - 1) * x.buckets, 'MINUTE') AS start_at,
TRUNC(SYSDATE) + NUMTODSINTERVAL( LEVEL * x.buckets, 'MINUTE') AS end_at
FROM x
CONNECT BY LEVEL <= (1440 / x.buckets)
)
SELECT
z.bucket_id,
@ -16,9 +28,9 @@ SELECT
NULLIF(SUM(CASE WHEN l.flag = 'P' THEN 1 ELSE 0 END), 0) AS count_requests -- app.flag_request
FROM z
LEFT JOIN logs l
ON l.created_at >= TRUNC(app.get_date_item('G_TODAY'))
AND l.created_at < TRUNC(app.get_date_item('G_TODAY')) + 1
AND l.app_id = app.get_app_id()
AND z.bucket_id = app.get_time_bucket(l.created_at, 10)
ON l.created_at >= z.today
AND l.created_at < z.today + 1
AND l.app_id = z.app_id
AND z.bucket_id = app.get_time_bucket(l.created_at, z.buckets)
GROUP BY z.bucket_id, TO_CHAR(z.start_at, 'HH24:MI');

View File

@ -3,8 +3,10 @@ WITH x AS (
SELECT
UPPER('SETT') AS package_name, -- app_actions spec
UPPER('GET_') AS prefix,
app.get_item('$SETTING_NAME') AS setting_name
FROM DUAL
app.get_item('$SETTING_NAME') AS setting_name,
app.get_app_id() AS app_id
FROM users u
WHERE u.user_id = app.get_user_id()
),
p AS (
SELECT p.procedure_name, a.data_type
@ -69,14 +71,14 @@ SELECT
s.updated_by,
s.updated_at
FROM settings s
CROSS JOIN x
JOIN x
ON x.app_id = s.app_id
LEFT JOIN p
ON p.procedure_name = x.prefix || s.setting_name
LEFT JOIN r
ON r.procedure_name = x.prefix || s.setting_name
LEFT JOIN v
ON v.procedure_name = x.prefix || s.setting_name
WHERE s.app_id = app.get_app_id()
AND s.setting_name = NVL(x.setting_name, s.setting_name)
WHERE s.setting_name = NVL(x.setting_name, s.setting_name)
AND s.setting_context IS NULL;