From a5e3396017145032fe0896aec302deda0a07da96 Mon Sep 17 00:00:00 2001 From: poignatov Date: Sun, 22 Feb 2026 14:26:18 +0300 Subject: [PATCH] =?UTF-8?q?5.2.0:=20min=5Fgoal=20=D0=BF=D0=BE=20=D1=81?= =?UTF-8?q?=D1=80=D0=B5=D0=B4=D0=BD=D0=B5=D0=BC=D1=83=20=D0=B2=D0=BC=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=BE=20=D0=BC=D0=B5=D0=B4=D0=B8=D0=B0=D0=BD=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- VERSION | 2 +- play-life-backend/main.go | 16 ++++++++-------- play-life-web/package.json | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/VERSION b/VERSION index cdb98d2..91ff572 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -5.1.3 +5.2.0 diff --git a/play-life-backend/main.go b/play-life-backend/main.go index d0d2f46..60423f2 100644 --- a/play-life-backend/main.go +++ b/play-life-backend/main.go @@ -5234,10 +5234,10 @@ func (a *App) setupWeeklyGoals() error { EXTRACT(WEEK FROM CURRENT_DATE)::INTEGER AS c_week ), goal_metrics AS ( - -- Считаем медиану на основе данных за последние 4 недели, исключая текущую неделю + -- Считаем среднее (average) на основе данных за последние 4 недели, исключая текущую неделю SELECT project_id, - PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY normalized_total_score) AS median_score + AVG(normalized_total_score) AS avg_score FROM ( SELECT project_id, @@ -5270,14 +5270,14 @@ func (a *App) setupWeeklyGoals() error { p.id, ci.c_year, ci.c_week, - -- Если нет данных (gm.median_score IS NULL), используем 0 (значение по умолчанию) - COALESCE(gm.median_score, 0) AS min_goal_score, + -- Если нет данных (gm.avg_score IS NULL), используем 0 (значение по умолчанию) + COALESCE(gm.avg_score, 0) AS min_goal_score, -- Логика max_goal_score в зависимости от приоритета (только если есть данные) CASE - WHEN gm.median_score IS NULL THEN NULL - WHEN p.priority = 1 THEN gm.median_score * 2.0 - WHEN p.priority = 2 THEN gm.median_score * 1.7 - ELSE gm.median_score * 1.4 + WHEN gm.avg_score IS NULL THEN NULL + WHEN p.priority = 1 THEN gm.avg_score * 2.0 + WHEN p.priority = 2 THEN gm.avg_score * 1.7 + ELSE gm.avg_score * 1.4 END AS max_goal_score, p.priority, p.user_id diff --git a/play-life-web/package.json b/play-life-web/package.json index 1bf30a1..0577b33 100644 --- a/play-life-web/package.json +++ b/play-life-web/package.json @@ -1,6 +1,6 @@ { "name": "play-life-web", - "version": "5.1.3", + "version": "5.2.0", "type": "module", "scripts": { "dev": "vite",