Resolve "Next/prev functions for persons don't return the next/prev lesson" #447

Merged
hansegucker merged 1 commit from 121-next-prev-functions-for-persons-don-t-return-the-next-prev-lesson into master 2021-03-25 21:46:40 +01:00
hansegucker commented 2021-03-25 16:49:38 +01:00 (Migrated from edugit.org)

Closes #121

Closes #121
hansegucker commented 2021-03-25 17:07:59 +01:00 (Migrated from edugit.org)

added 1 commit

  • 0de18355 - Fix position of order_by in lessons_on_day query on person model

Compare with previous version

added 1 commit <ul><li>0de18355 - Fix position of order_by in lessons_on_day query on person model</li></ul> [Compare with previous version](/AlekSIS/official/AlekSIS-App-Chronos/-/merge_requests/143/diffs?diff_id=6348&start_sha=9c92bdfc442abe451fc05364ec73414fc6672f8c)
hansegucker commented 2021-03-25 17:08:09 +01:00 (Migrated from edugit.org)

assigned to @nik and unassigned @hansegucker

assigned to @nik and unassigned @hansegucker
hansegucker commented 2021-03-25 17:08:12 +01:00 (Migrated from edugit.org)

marked this merge request as ready

marked this merge request as **ready**
nik commented 2021-03-25 17:34:07 +01:00 (Migrated from edugit.org)

Huh… that should not make a difference.

Please paste the diff between the generated queries.

Huh… that should not make a difference. Please paste the diff between the generated queries.
hansegucker commented 2021-03-25 17:44:30 +01:00 (Migrated from edugit.org)

Before

	
(
        SELECT "chronos_lessonperiod"."id",
               "chronos_lessonperiod"."site_id",
               "chronos_lessonperiod"."extended_data",
               "chronos_lessonperiod"."lesson_id",
               "chronos_lessonperiod"."period_id",
               "chronos_lessonperiod"."room_id",
               11 AS "_week",
               2021 AS "_year",
               "chronos_lesson"."id",
               "chronos_lesson"."site_id",
               "chronos_lesson"."extended_data",
               "chronos_lesson"."validity_id",
               "chronos_lesson"."subject_id",
               "chronos_validityrange"."id",
               "chronos_validityrange"."site_id",
               "chronos_validityrange"."extended_data",
               "chronos_validityrange"."school_term_id",
               "chronos_validityrange"."name",
               "chronos_validityrange"."date_start",
               "chronos_validityrange"."date_end",
               "core_schoolterm"."id",
               "core_schoolterm"."site_id",
               "core_schoolterm"."extended_data",
               "core_schoolterm"."name",
               "core_schoolterm"."date_start",
               "core_schoolterm"."date_end",
               "chronos_subject"."id",
               "chronos_subject"."site_id",
               "chronos_subject"."extended_data",
               "chronos_subject"."short_name",
               "chronos_subject"."name",
               "chronos_subject"."colour_fg",
               "chronos_subject"."colour_bg",
               "chronos_timeperiod"."id",
               "chronos_timeperiod"."site_id",
               "chronos_timeperiod"."extended_data",
               "chronos_timeperiod"."validity_id",
               "chronos_timeperiod"."weekday",
               "chronos_timeperiod"."period",
               "chronos_timeperiod"."time_start",
               "chronos_timeperiod"."time_end",
               "chronos_room"."id",
               "chronos_room"."site_id",
               "chronos_room"."extended_data",
               "chronos_room"."short_name",
               "chronos_room"."name"
          FROM "chronos_lessonperiod"
         INNER JOIN "chronos_lesson"
            ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id")
         INNER JOIN "chronos_validityrange"
            ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id")
         INNER JOIN "chronos_timeperiod"
            ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id")
         INNER JOIN "chronos_lesson_teachers"
            ON ("chronos_lesson"."id" = "chronos_lesson_teachers"."lesson_id")
         INNER JOIN "core_schoolterm"
            ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id")
         INNER JOIN "chronos_subject"
            ON ("chronos_lesson"."subject_id" = "chronos_subject"."id")
          LEFT OUTER JOIN "chronos_room"
            ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id")
         WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lesson_teachers"."person_id" = 1738)
         ORDER BY "chronos_timeperiod"."period" ASC
       )
 UNION (
        SELECT "chronos_lessonperiod"."id",
               "chronos_lessonperiod"."site_id",
               "chronos_lessonperiod"."extended_data",
               "chronos_lessonperiod"."lesson_id",
               "chronos_lessonperiod"."period_id",
               "chronos_lessonperiod"."room_id",
               11 AS "_week",
               2021 AS "_year",
               "chronos_lesson"."id",
               "chronos_lesson"."site_id",
               "chronos_lesson"."extended_data",
               "chronos_lesson"."validity_id",
               "chronos_lesson"."subject_id",
               "chronos_validityrange"."id",
               "chronos_validityrange"."site_id",
               "chronos_validityrange"."extended_data",
               "chronos_validityrange"."school_term_id",
               "chronos_validityrange"."name",
               "chronos_validityrange"."date_start",
               "chronos_validityrange"."date_end",
               "core_schoolterm"."id",
               "core_schoolterm"."site_id",
               "core_schoolterm"."extended_data",
               "core_schoolterm"."name",
               "core_schoolterm"."date_start",
               "core_schoolterm"."date_end",
               "chronos_subject"."id",
               "chronos_subject"."site_id",
               "chronos_subject"."extended_data",
               "chronos_subject"."short_name",
               "chronos_subject"."name",
               "chronos_subject"."colour_fg",
               "chronos_subject"."colour_bg",
               "chronos_timeperiod"."id",
               "chronos_timeperiod"."site_id",
               "chronos_timeperiod"."extended_data",
               "chronos_timeperiod"."validity_id",
               "chronos_timeperiod"."weekday",
               "chronos_timeperiod"."period",
               "chronos_timeperiod"."time_start",
               "chronos_timeperiod"."time_end",
               "chronos_room"."id",
               "chronos_room"."site_id",
               "chronos_room"."extended_data",
               "chronos_room"."short_name",
               "chronos_room"."name"
          FROM "chronos_lessonperiod"
         INNER JOIN "chronos_lesson"
            ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id")
         INNER JOIN "chronos_validityrange"
            ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id")
         INNER JOIN "chronos_timeperiod"
            ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id")
         INNER JOIN "chronos_lessonsubstitution"
            ON ("chronos_lessonperiod"."id" = "chronos_lessonsubstitution"."lesson_period_id")
         INNER JOIN "chronos_lessonsubstitution_teachers"
            ON ("chronos_lessonsubstitution"."id" = "chronos_lessonsubstitution_teachers"."lessonsubstitution_id")
         INNER JOIN "core_schoolterm"
            ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id")
         INNER JOIN "chronos_subject"
            ON ("chronos_lesson"."subject_id" = "chronos_subject"."id")
          LEFT OUTER JOIN "chronos_room"
            ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id")
         WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lessonsubstitution_teachers"."person_id" = 1738 AND "chronos_lessonsubstitution"."week" = 11 AND "chronos_lessonsubstitution"."year" = 2021)
         ORDER BY "chronos_timeperiod"."period" ASC
       )

After

	
(
        SELECT "chronos_lessonperiod"."id",
               "chronos_lessonperiod"."site_id",
               "chronos_lessonperiod"."extended_data",
               "chronos_lessonperiod"."lesson_id",
               "chronos_lessonperiod"."period_id",
               "chronos_lessonperiod"."room_id",
               11 AS "_week",
               2021 AS "_year",
               "chronos_lesson"."id",
               "chronos_lesson"."site_id",
               "chronos_lesson"."extended_data",
               "chronos_lesson"."validity_id",
               "chronos_lesson"."subject_id",
               "chronos_validityrange"."id",
               "chronos_validityrange"."site_id",
               "chronos_validityrange"."extended_data",
               "chronos_validityrange"."school_term_id",
               "chronos_validityrange"."name",
               "chronos_validityrange"."date_start",
               "chronos_validityrange"."date_end",
               "core_schoolterm"."id",
               "core_schoolterm"."site_id",
               "core_schoolterm"."extended_data",
               "core_schoolterm"."name",
               "core_schoolterm"."date_start",
               "core_schoolterm"."date_end",
               "chronos_subject"."id",
               "chronos_subject"."site_id",
               "chronos_subject"."extended_data",
               "chronos_subject"."short_name",
               "chronos_subject"."name",
               "chronos_subject"."colour_fg",
               "chronos_subject"."colour_bg",
               "chronos_timeperiod"."id",
               "chronos_timeperiod"."site_id",
               "chronos_timeperiod"."extended_data",
               "chronos_timeperiod"."validity_id",
               "chronos_timeperiod"."weekday",
               "chronos_timeperiod"."period",
               "chronos_timeperiod"."time_start",
               "chronos_timeperiod"."time_end",
               "chronos_room"."id",
               "chronos_room"."site_id",
               "chronos_room"."extended_data",
               "chronos_room"."short_name",
               "chronos_room"."name"
          FROM "chronos_lessonperiod"
         INNER JOIN "chronos_lesson"
            ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id")
         INNER JOIN "chronos_validityrange"
            ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id")
         INNER JOIN "chronos_timeperiod"
            ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id")
         INNER JOIN "chronos_lesson_teachers"
            ON ("chronos_lesson"."id" = "chronos_lesson_teachers"."lesson_id")
         INNER JOIN "core_schoolterm"
            ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id")
         INNER JOIN "chronos_subject"
            ON ("chronos_lesson"."subject_id" = "chronos_subject"."id")
          LEFT OUTER JOIN "chronos_room"
            ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id")
         WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lesson_teachers"."person_id" = 1738)
         ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC
       )
 UNION (
        SELECT "chronos_lessonperiod"."id",
               "chronos_lessonperiod"."site_id",
               "chronos_lessonperiod"."extended_data",
               "chronos_lessonperiod"."lesson_id",
               "chronos_lessonperiod"."period_id",
               "chronos_lessonperiod"."room_id",
               11 AS "_week",
               2021 AS "_year",
               "chronos_lesson"."id",
               "chronos_lesson"."site_id",
               "chronos_lesson"."extended_data",
               "chronos_lesson"."validity_id",
               "chronos_lesson"."subject_id",
               "chronos_validityrange"."id",
               "chronos_validityrange"."site_id",
               "chronos_validityrange"."extended_data",
               "chronos_validityrange"."school_term_id",
               "chronos_validityrange"."name",
               "chronos_validityrange"."date_start",
               "chronos_validityrange"."date_end",
               "core_schoolterm"."id",
               "core_schoolterm"."site_id",
               "core_schoolterm"."extended_data",
               "core_schoolterm"."name",
               "core_schoolterm"."date_start",
               "core_schoolterm"."date_end",
               "chronos_subject"."id",
               "chronos_subject"."site_id",
               "chronos_subject"."extended_data",
               "chronos_subject"."short_name",
               "chronos_subject"."name",
               "chronos_subject"."colour_fg",
               "chronos_subject"."colour_bg",
               "chronos_timeperiod"."id",
               "chronos_timeperiod"."site_id",
               "chronos_timeperiod"."extended_data",
               "chronos_timeperiod"."validity_id",
               "chronos_timeperiod"."weekday",
               "chronos_timeperiod"."period",
               "chronos_timeperiod"."time_start",
               "chronos_timeperiod"."time_end",
               "chronos_room"."id",
               "chronos_room"."site_id",
               "chronos_room"."extended_data",
               "chronos_room"."short_name",
               "chronos_room"."name"
          FROM "chronos_lessonperiod"
         INNER JOIN "chronos_lesson"
            ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id")
         INNER JOIN "chronos_validityrange"
            ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id")
         INNER JOIN "chronos_timeperiod"
            ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id")
         INNER JOIN "chronos_lessonsubstitution"
            ON ("chronos_lessonperiod"."id" = "chronos_lessonsubstitution"."lesson_period_id")
         INNER JOIN "chronos_lessonsubstitution_teachers"
            ON ("chronos_lessonsubstitution"."id" = "chronos_lessonsubstitution_teachers"."lessonsubstitution_id")
         INNER JOIN "core_schoolterm"
            ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id")
         INNER JOIN "chronos_subject"
            ON ("chronos_lesson"."subject_id" = "chronos_subject"."id")
          LEFT OUTER JOIN "chronos_room"
            ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id")
         WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lessonsubstitution_teachers"."person_id" = 1738 AND "chronos_lessonsubstitution"."week" = 11 AND "chronos_lessonsubstitution"."year" = 2021)
         ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC
       )
 ORDER BY (39) ASC
## Before ```sql ( SELECT "chronos_lessonperiod"."id", "chronos_lessonperiod"."site_id", "chronos_lessonperiod"."extended_data", "chronos_lessonperiod"."lesson_id", "chronos_lessonperiod"."period_id", "chronos_lessonperiod"."room_id", 11 AS "_week", 2021 AS "_year", "chronos_lesson"."id", "chronos_lesson"."site_id", "chronos_lesson"."extended_data", "chronos_lesson"."validity_id", "chronos_lesson"."subject_id", "chronos_validityrange"."id", "chronos_validityrange"."site_id", "chronos_validityrange"."extended_data", "chronos_validityrange"."school_term_id", "chronos_validityrange"."name", "chronos_validityrange"."date_start", "chronos_validityrange"."date_end", "core_schoolterm"."id", "core_schoolterm"."site_id", "core_schoolterm"."extended_data", "core_schoolterm"."name", "core_schoolterm"."date_start", "core_schoolterm"."date_end", "chronos_subject"."id", "chronos_subject"."site_id", "chronos_subject"."extended_data", "chronos_subject"."short_name", "chronos_subject"."name", "chronos_subject"."colour_fg", "chronos_subject"."colour_bg", "chronos_timeperiod"."id", "chronos_timeperiod"."site_id", "chronos_timeperiod"."extended_data", "chronos_timeperiod"."validity_id", "chronos_timeperiod"."weekday", "chronos_timeperiod"."period", "chronos_timeperiod"."time_start", "chronos_timeperiod"."time_end", "chronos_room"."id", "chronos_room"."site_id", "chronos_room"."extended_data", "chronos_room"."short_name", "chronos_room"."name" FROM "chronos_lessonperiod" INNER JOIN "chronos_lesson" ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id") INNER JOIN "chronos_validityrange" ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id") INNER JOIN "chronos_timeperiod" ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id") INNER JOIN "chronos_lesson_teachers" ON ("chronos_lesson"."id" = "chronos_lesson_teachers"."lesson_id") INNER JOIN "core_schoolterm" ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id") INNER JOIN "chronos_subject" ON ("chronos_lesson"."subject_id" = "chronos_subject"."id") LEFT OUTER JOIN "chronos_room" ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id") WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lesson_teachers"."person_id" = 1738) ORDER BY "chronos_timeperiod"."period" ASC ) UNION ( SELECT "chronos_lessonperiod"."id", "chronos_lessonperiod"."site_id", "chronos_lessonperiod"."extended_data", "chronos_lessonperiod"."lesson_id", "chronos_lessonperiod"."period_id", "chronos_lessonperiod"."room_id", 11 AS "_week", 2021 AS "_year", "chronos_lesson"."id", "chronos_lesson"."site_id", "chronos_lesson"."extended_data", "chronos_lesson"."validity_id", "chronos_lesson"."subject_id", "chronos_validityrange"."id", "chronos_validityrange"."site_id", "chronos_validityrange"."extended_data", "chronos_validityrange"."school_term_id", "chronos_validityrange"."name", "chronos_validityrange"."date_start", "chronos_validityrange"."date_end", "core_schoolterm"."id", "core_schoolterm"."site_id", "core_schoolterm"."extended_data", "core_schoolterm"."name", "core_schoolterm"."date_start", "core_schoolterm"."date_end", "chronos_subject"."id", "chronos_subject"."site_id", "chronos_subject"."extended_data", "chronos_subject"."short_name", "chronos_subject"."name", "chronos_subject"."colour_fg", "chronos_subject"."colour_bg", "chronos_timeperiod"."id", "chronos_timeperiod"."site_id", "chronos_timeperiod"."extended_data", "chronos_timeperiod"."validity_id", "chronos_timeperiod"."weekday", "chronos_timeperiod"."period", "chronos_timeperiod"."time_start", "chronos_timeperiod"."time_end", "chronos_room"."id", "chronos_room"."site_id", "chronos_room"."extended_data", "chronos_room"."short_name", "chronos_room"."name" FROM "chronos_lessonperiod" INNER JOIN "chronos_lesson" ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id") INNER JOIN "chronos_validityrange" ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id") INNER JOIN "chronos_timeperiod" ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id") INNER JOIN "chronos_lessonsubstitution" ON ("chronos_lessonperiod"."id" = "chronos_lessonsubstitution"."lesson_period_id") INNER JOIN "chronos_lessonsubstitution_teachers" ON ("chronos_lessonsubstitution"."id" = "chronos_lessonsubstitution_teachers"."lessonsubstitution_id") INNER JOIN "core_schoolterm" ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id") INNER JOIN "chronos_subject" ON ("chronos_lesson"."subject_id" = "chronos_subject"."id") LEFT OUTER JOIN "chronos_room" ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id") WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lessonsubstitution_teachers"."person_id" = 1738 AND "chronos_lessonsubstitution"."week" = 11 AND "chronos_lessonsubstitution"."year" = 2021) ORDER BY "chronos_timeperiod"."period" ASC ) ``` ## After ```sql ( SELECT "chronos_lessonperiod"."id", "chronos_lessonperiod"."site_id", "chronos_lessonperiod"."extended_data", "chronos_lessonperiod"."lesson_id", "chronos_lessonperiod"."period_id", "chronos_lessonperiod"."room_id", 11 AS "_week", 2021 AS "_year", "chronos_lesson"."id", "chronos_lesson"."site_id", "chronos_lesson"."extended_data", "chronos_lesson"."validity_id", "chronos_lesson"."subject_id", "chronos_validityrange"."id", "chronos_validityrange"."site_id", "chronos_validityrange"."extended_data", "chronos_validityrange"."school_term_id", "chronos_validityrange"."name", "chronos_validityrange"."date_start", "chronos_validityrange"."date_end", "core_schoolterm"."id", "core_schoolterm"."site_id", "core_schoolterm"."extended_data", "core_schoolterm"."name", "core_schoolterm"."date_start", "core_schoolterm"."date_end", "chronos_subject"."id", "chronos_subject"."site_id", "chronos_subject"."extended_data", "chronos_subject"."short_name", "chronos_subject"."name", "chronos_subject"."colour_fg", "chronos_subject"."colour_bg", "chronos_timeperiod"."id", "chronos_timeperiod"."site_id", "chronos_timeperiod"."extended_data", "chronos_timeperiod"."validity_id", "chronos_timeperiod"."weekday", "chronos_timeperiod"."period", "chronos_timeperiod"."time_start", "chronos_timeperiod"."time_end", "chronos_room"."id", "chronos_room"."site_id", "chronos_room"."extended_data", "chronos_room"."short_name", "chronos_room"."name" FROM "chronos_lessonperiod" INNER JOIN "chronos_lesson" ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id") INNER JOIN "chronos_validityrange" ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id") INNER JOIN "chronos_timeperiod" ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id") INNER JOIN "chronos_lesson_teachers" ON ("chronos_lesson"."id" = "chronos_lesson_teachers"."lesson_id") INNER JOIN "core_schoolterm" ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id") INNER JOIN "chronos_subject" ON ("chronos_lesson"."subject_id" = "chronos_subject"."id") LEFT OUTER JOIN "chronos_room" ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id") WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lesson_teachers"."person_id" = 1738) ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC ) UNION ( SELECT "chronos_lessonperiod"."id", "chronos_lessonperiod"."site_id", "chronos_lessonperiod"."extended_data", "chronos_lessonperiod"."lesson_id", "chronos_lessonperiod"."period_id", "chronos_lessonperiod"."room_id", 11 AS "_week", 2021 AS "_year", "chronos_lesson"."id", "chronos_lesson"."site_id", "chronos_lesson"."extended_data", "chronos_lesson"."validity_id", "chronos_lesson"."subject_id", "chronos_validityrange"."id", "chronos_validityrange"."site_id", "chronos_validityrange"."extended_data", "chronos_validityrange"."school_term_id", "chronos_validityrange"."name", "chronos_validityrange"."date_start", "chronos_validityrange"."date_end", "core_schoolterm"."id", "core_schoolterm"."site_id", "core_schoolterm"."extended_data", "core_schoolterm"."name", "core_schoolterm"."date_start", "core_schoolterm"."date_end", "chronos_subject"."id", "chronos_subject"."site_id", "chronos_subject"."extended_data", "chronos_subject"."short_name", "chronos_subject"."name", "chronos_subject"."colour_fg", "chronos_subject"."colour_bg", "chronos_timeperiod"."id", "chronos_timeperiod"."site_id", "chronos_timeperiod"."extended_data", "chronos_timeperiod"."validity_id", "chronos_timeperiod"."weekday", "chronos_timeperiod"."period", "chronos_timeperiod"."time_start", "chronos_timeperiod"."time_end", "chronos_room"."id", "chronos_room"."site_id", "chronos_room"."extended_data", "chronos_room"."short_name", "chronos_room"."name" FROM "chronos_lessonperiod" INNER JOIN "chronos_lesson" ON ("chronos_lessonperiod"."lesson_id" = "chronos_lesson"."id") INNER JOIN "chronos_validityrange" ON ("chronos_lesson"."validity_id" = "chronos_validityrange"."id") INNER JOIN "chronos_timeperiod" ON ("chronos_lessonperiod"."period_id" = "chronos_timeperiod"."id") INNER JOIN "chronos_lessonsubstitution" ON ("chronos_lessonperiod"."id" = "chronos_lessonsubstitution"."lesson_period_id") INNER JOIN "chronos_lessonsubstitution_teachers" ON ("chronos_lessonsubstitution"."id" = "chronos_lessonsubstitution_teachers"."lessonsubstitution_id") INNER JOIN "core_schoolterm" ON ("chronos_validityrange"."school_term_id" = "core_schoolterm"."id") INNER JOIN "chronos_subject" ON ("chronos_lesson"."subject_id" = "chronos_subject"."id") LEFT OUTER JOIN "chronos_room" ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id") WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lessonsubstitution_teachers"."person_id" = 1738 AND "chronos_lessonsubstitution"."week" = 11 AND "chronos_lessonsubstitution"."year" = 2021) ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC ) ORDER BY (39) ASC ```
hansegucker commented 2021-03-25 17:45:53 +01:00 (Migrated from edugit.org)
diff /tmp/a.sql /tmp/b.sql 
0a1
> 	
64c65
<          ORDER BY "chronos_timeperiod"."period" ASC
---
>          ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC
131c132
<          ORDER BY "chronos_timeperiod"."period" ASC
---
>          ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC
132a134
>  ORDER BY (39) ASC
```diff diff /tmp/a.sql /tmp/b.sql 0a1 > 64c65 < ORDER BY "chronos_timeperiod"."period" ASC --- > ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC 131c132 < ORDER BY "chronos_timeperiod"."period" ASC --- > ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC 132a134 > ORDER BY (39) ASC ```
nik commented 2021-03-25 17:51:07 +01:00 (Migrated from edugit.org)

Please use a unified diff, I cannot read this.

Please use a unified diff, I cannot read this.
hansegucker commented 2021-03-25 17:52:56 +01:00 (Migrated from edugit.org)

I'm sure, you can 😉 :

--- /tmp/a.sql	2021-03-25 17:45:06.719025587 +0100
+++ /tmp/b.sql	2021-03-25 17:45:16.502566177 +0100
@@ -1,3 +1,4 @@
+	
 (
         SELECT "chronos_lessonperiod"."id",
                "chronos_lessonperiod"."site_id",
@@ -61,7 +62,7 @@
           LEFT OUTER JOIN "chronos_room"
             ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id")
          WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lesson_teachers"."person_id" = 1738)
-         ORDER BY "chronos_timeperiod"."period" ASC
+         ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC
        )
  UNION (
         SELECT "chronos_lessonperiod"."id",
@@ -128,5 +129,6 @@
           LEFT OUTER JOIN "chronos_room"
             ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id")
          WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lessonsubstitution_teachers"."person_id" = 1738 AND "chronos_lessonsubstitution"."week" = 11 AND "chronos_lessonsubstitution"."year" = 2021)
-         ORDER BY "chronos_timeperiod"."period" ASC
+         ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC
        )
+ ORDER BY (39) ASC
I'm sure, you can :wink: : ```diff --- /tmp/a.sql 2021-03-25 17:45:06.719025587 +0100 +++ /tmp/b.sql 2021-03-25 17:45:16.502566177 +0100 @@ -1,3 +1,4 @@ + ( SELECT "chronos_lessonperiod"."id", "chronos_lessonperiod"."site_id", @@ -61,7 +62,7 @@ LEFT OUTER JOIN "chronos_room" ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id") WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lesson_teachers"."person_id" = 1738) - ORDER BY "chronos_timeperiod"."period" ASC + ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC ) UNION ( SELECT "chronos_lessonperiod"."id", @@ -128,5 +129,6 @@ LEFT OUTER JOIN "chronos_room" ON ("chronos_lessonperiod"."room_id" = "chronos_room"."id") WHERE ("chronos_lessonperiod"."site_id" = 1 AND "chronos_validityrange"."date_end" >= '2021-03-16'::date AND "chronos_validityrange"."date_start" <= '2021-03-16'::date AND "chronos_timeperiod"."weekday" = 1 AND "chronos_lessonsubstitution_teachers"."person_id" = 1738 AND "chronos_lessonsubstitution"."week" = 11 AND "chronos_lessonsubstitution"."year" = 2021) - ORDER BY "chronos_timeperiod"."period" ASC + ORDER BY "chronos_validityrange"."date_start" ASC, "chronos_timeperiod"."weekday" ASC, "chronos_timeperiod"."period" ASC, "chronos_subject"."name" ASC, "chronos_subject"."short_name" ASC ) + ORDER BY (39) ASC ```
nik commented 2021-03-25 21:45:33 +01:00 (Migrated from edugit.org)

I'm sure, you can

No, I can't. (At least not without manually calculating and looking up what context "132a134" might refer to)

> I'm sure, you can No, I can't. (At least not without manually calculating and looking up what context "132a134" might refer to)
nik commented 2021-03-25 21:45:34 +01:00 (Migrated from edugit.org)

resolved all threads

resolved all threads
nik commented 2021-03-25 21:46:39 +01:00 (Migrated from edugit.org)

mentioned in commit 7e1aaf782a

mentioned in commit 7e1aaf782a68c9d040662b7dc5134c06fd25f77a
nik (Migrated from edugit.org) merged commit 7e1aaf782a into master 2021-03-25 21:46:40 +01:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
aleksis/AlekSIS-App-Chronos!447
No description provided.