Changes between Version 2 and Version 3 of UseCase007


Ignore:
Timestamp:
09/15/26 12:30:58 (2 weeks ago)
Author:
233149
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCase007

    v2 v3  
    4545}}}
    4646
    47  7. Системот ги додава петте предмети на новиот запишан семестар. За секој предмет професорот се презема од professour_subjects, односно од распоредот кој професор го предава тој предмет во тој семестар.
     47 7. Системот ги додава петте предмети на новиот запишан семестар. За секој предмет професорот се презема од professour_subjects. Бидејќи ист предмет во ист семестар може да го предаваат повеќе професори, се избира оној кој засега има најмалку студенти на тој предмет, а идентификаторот се користи само за разрешување при ист број студенти.
    4848{{{#!sql
    4949INSERT INTO project.semesters_subjects
    … …  
    5151SELECT e.id,
    5252       v.subject_id,
    53        (SELECT min(ps.prof_id)
     53       (SELECT ps.prof_id
    5454          FROM project.professour_subjects ps
    5555         WHERE ps.subject_id = v.subject_id
    56            AND ps.active_semester_id = e.semester_id),
     56           AND ps.active_semester_id = e.semester_id
     57         ORDER BY (SELECT count(*)
     58                     FROM project.semesters_subjects ss2
     59                     JOIN project.enrolled_semesters es2 ON es2.id = ss2.enrolled_semesters_id
     60                    WHERE ss2.subjects_id  = v.subject_id
     61                      AND ss2.professor_id = ps.prof_id
     62                      AND es2.semester_id  = e.semester_id) ASC,
     63                  ps.prof_id ASC
     64         LIMIT 1),
    5765       FALSE
    5866FROM project.enrolled_semesters e,
    … …  
    7280
    7381 * Чекорите 6 и 7 мораат да бидат во иста трансакција, за да не остане запишан семестар без предмети.
     82 * Распоредувањето на професор е рамномерно: студентите се распределуваат по професорите кои го предаваат предметот, наместо секој да добие ист професор.