From bc08018a450db2e1025e99f875c4e67a07b4c50c Mon Sep 17 00:00:00 2001
From: Anton Bagliy <taccessviolation@gmail.com>
Date: Mon, 21 Jan 2019 20:39:23 +0300
Subject: [PATCH] FIX: retest attempt rate order in final report view #284

---
 db/postgresql/add_final_report_04_12_18.sql | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/db/postgresql/add_final_report_04_12_18.sql b/db/postgresql/add_final_report_04_12_18.sql
index ff58438c6..149ee60a5 100644
--- a/db/postgresql/add_final_report_04_12_18.sql
+++ b/db/postgresql/add_final_report_04_12_18.sql
@@ -111,15 +111,13 @@ END
 $function$
 ;
 
-
-drop view if exists public.view_final_report;
 CREATE OR REPLACE VIEW public.view_final_report
   AS SELECT DISTINCT semesters.year AS semesteryear,
                      semesters.num AS semesternum,
                      study_plans.externalid AS planexternalid,
                      subjects.externalid AS subjectexternalid,
                      record_books.externalid AS recordbookexternalid,
-                     disciplines.examtype as examtype,
+       disciplines.examtype,
                      ( SELECT sum(rating_table.rate) AS sum
                        FROM rating_table
                          JOIN submodules ON rating_table.submoduleid = submodules.id
@@ -131,12 +129,14 @@ CREATE OR REPLACE VIEW public.view_final_report
                          JOIN submodules ON rating_table.submoduleid = submodules.id
                          JOIN modules ON submodules.moduleid = modules.id
                        WHERE modules.disciplineid = disciplines.id AND modules.type = 'exam'::regular_exam_bonus_extra AND rating_table.recordbookid = record_books.id
+                       ORDER by submodules.ordernum ASC
                        LIMIT 1) AS examrate,
                      ( SELECT rating_table.rate
                        FROM rating_table
                          JOIN submodules ON rating_table.submoduleid = submodules.id
                          JOIN modules ON submodules.moduleid = modules.id
                        WHERE modules.disciplineid = disciplines.id AND modules.type = 'exam'::regular_exam_bonus_extra AND rating_table.recordbookid = record_books.id
+                       ORDER by submodules.ordernum ASC
                        OFFSET 1
                        LIMIT 1) AS exam2rate,
                      ( SELECT rating_table.rate
@@ -144,6 +144,7 @@ CREATE OR REPLACE VIEW public.view_final_report
                          JOIN submodules ON rating_table.submoduleid = submodules.id
                          JOIN modules ON submodules.moduleid = modules.id
                        WHERE modules.disciplineid = disciplines.id AND modules.type = 'exam'::regular_exam_bonus_extra AND rating_table.recordbookid = record_books.id
+                       ORDER by submodules.ordernum ASC
                        OFFSET 2
                        LIMIT 1) AS exam3rate,
                      ( SELECT rating_table.rate
@@ -151,12 +152,14 @@ CREATE OR REPLACE VIEW public.view_final_report
                          JOIN submodules ON rating_table.submoduleid = submodules.id
                          JOIN modules ON submodules.moduleid = modules.id
                        WHERE modules.disciplineid = disciplines.id AND modules.type = 'extra'::regular_exam_bonus_extra AND rating_table.recordbookid = record_books.id
+                       ORDER by submodules.ordernum ASC
                        LIMIT 1) AS extrarate,
                      ( SELECT rating_table.rate
                        FROM rating_table
                          JOIN submodules ON rating_table.submoduleid = submodules.id
                          JOIN modules ON submodules.moduleid = modules.id
                        WHERE modules.disciplineid = disciplines.id AND modules.type = 'extra'::regular_exam_bonus_extra AND rating_table.recordbookid = record_books.id
+                       ORDER by submodules.ordernum ASC
                        OFFSET 1
                        LIMIT 1) AS extra2rate
      FROM semesters
@@ -165,4 +168,4 @@ CREATE OR REPLACE VIEW public.view_final_report
        JOIN study_plans ON study_plans.id = disciplines_study_plans.studyplanid
        JOIN subjects ON subjects.id = disciplines.subjectid
        JOIN view_disciplines_recordbooks ON view_disciplines_recordbooks.disciplineid = disciplines.id AND 'attach'::attach_detach = COALESCE(view_disciplines_recordbooks.type, 'attach'::attach_detach)
-       JOIN record_books ON record_books.id = view_disciplines_recordbooks.recordbookid;
+       JOIN record_books ON record_books.id = view_disciplines_recordbooks.recordbookid;
\ No newline at end of file
-- 
GitLab