From 2579548a63fd9ef809b4cee00247ffa17b3ae825 Mon Sep 17 00:00:00 2001 From: hanif salafi Date: Fri, 18 Apr 2025 02:22:16 +0700 Subject: [PATCH] feat: update article user levels stats --- .../articles/repository/articles.repository.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/module/articles/repository/articles.repository.go b/app/module/articles/repository/articles.repository.go index 1d48de8..0a35a63 100644 --- a/app/module/articles/repository/articles.repository.go +++ b/app/module/articles/repository/articles.repository.go @@ -200,19 +200,23 @@ func (_i *articlesRepository) ArticlePerUserLevelStats(userLevelId *uint, levelN name, level_number, parent_level_id, - CASE - WHEN level_number = 2 THEN id + CASE + WHEN level_number = 1 THEN id + WHEN level_number = 2 and name ILIKE '%polda%' THEN id + WHEN level_number = 2 and name NOT ILIKE '%polda%' THEN parent_level_id WHEN level_number = 3 THEN parent_level_id END AS level_2_id, CASE - WHEN level_number = 2 THEN name + WHEN level_number = 1 THEN name + WHEN level_number = 2 and name ILIKE '%polda%' THEN name + WHEN level_number = 2 and name NOT ILIKE '%polda%' THEN (SELECT name FROM user_levels ul2 WHERE ul2.id = user_levels.parent_level_id) WHEN level_number = 3 THEN (SELECT name FROM user_levels ul2 WHERE ul2.id = user_levels.parent_level_id) END AS level_2_name FROM user_levels ) SELECT lh.level_2_id AS user_level_id, - lh.level_2_name AS user_level_name, + UPPER(lh.level_2_name) AS user_level_name, COUNT(articles.id) AS total_article FROM articles JOIN users ON articles.created_by_id = users.id