diff --git a/db/StoredProcedures.sql b/db/StoredProcedures.sql index 2830737b4cab7c7d0302df5f9364916e8631ec5e..56e84f39588298b1415996080e699e92e9a3e1f9 100644 --- a/db/StoredProcedures.sql +++ b/db/StoredProcedures.sql @@ -1,17 +1,5 @@ DELIMITER // -DROP FUNCTION IF EXISTS ChangeSubmoduleOrder// -DROP FUNCTION IF EXISTS ChangeSubmodule// -DROP FUNCTION IF EXISTS ChangeModule// -DROP FUNCTION IF EXISTS ChangeModuleOrder// -DROP FUNCTION IF EXISTS ChangeSubmoduleControlType// -DROP FUNCTION IF EXISTS ChangeSubmoduleMaxRate// -DROP PROCEDURE IF EXISTS GetGroupsForDiscipline// -DROP PROCEDURE IF EXISTS SearchStudentsNew// -DROP FUNCTION IF EXISTS CreateRequest// -DROP PROCEDURE IF EXISTS GetAccInfoByID// -DROP PROCEDURE IF EXISTS GetPersonalInfoByID// -DROP FUNCTION IF EXISTS GetRateForDisc// - +USE mmcs_rating// -- ------------------------------------------------------------------------------------------- -- Label: abbreviations @@ -21,19 +9,12 @@ DROP FUNCTION IF EXISTS GetRateForDisc// -- specialization: spec -- department: dep - --- ------------------------------------------------------------------------------------------- --- Label: changes --- ------------------------------------------------------------------------------------------- --- ChangePersonalDataForTeacher -> ChangeTeacher - -- ------------------------------------------------------------------------------------------- -- Label: internals -- ------------------------------------------------------------------------------------------- - -- actually check for first scoring, in this case you cannot yet edit discipline --- SetRate stored procedure can change isLocked flag +-- "SetRate" stored procedure can change isLocked flag DROP FUNCTION IF EXISTS InternalIsMapLocked// CREATE FUNCTION `InternalIsMapLocked` ( `DisciplineID` INT ) RETURNS boolean @@ -129,12 +110,9 @@ BEGIN INTO vMax FROM `submodules` INNER JOIN `modules` ON submodules.ModuleID = modules.ID AND - modules.Type != 3 AND modules.Type != 4 - WHERE DisciplineID = modules.DisciplineID; + (modules.Type = 'regular' OR modules.Type = 'exam') + WHERE DisciplineID = modules.DisciplineID; - IF vMax IS NULL THEN - SET vMax = 0; - END IF; RETURN vMax; END // @@ -155,7 +133,7 @@ BEGIN INNER JOIN `modules` ON submodules.ModuleID = modules.ID AND DisciplineID = modules.DisciplineID WHERE rating_table.StudentID = StudentID AND - ( modules.Type != 2 OR + ( modules.Type != 'exam' OR submodules.ID = ( SELECT submodules.ID FROM `submodules` @@ -173,7 +151,7 @@ END // DROP FUNCTION IF EXISTS GetRateForDiscSemester// -CREATE FUNCTION `GetRateForDiscSemester` ( `StudentID` INT, +CREATE FUNCTION `GetRateForDiscSemester` ( `StudentID` INT, `DisciplineID` INT ) RETURNS int(11) NO SQL @@ -181,7 +159,6 @@ BEGIN DECLARE rate INT; SET rate = -1; - SELECT SUM(rating_table.Rate) INTO rate FROM `rating_table` @@ -302,7 +279,7 @@ END // --- check, if anyone module is created +-- check, if any module is created DROP FUNCTION IF EXISTS InternalIsMapCreated// CREATE FUNCTION `InternalIsMapCreated` ( `DisciplineID` INT ) RETURNS int(11) @@ -315,7 +292,7 @@ BEGIN FROM `modules` LEFT JOIN `submodules` ON submodules.ModuleID = modules.ID WHERE modules.DisciplineID = DisciplineID AND - (modules.Type = 1 OR ( modules.Type = 2 AND submodules.OrderNum = 1)) + (modules.Type = 'regular' OR ( modules.Type = 'exam' AND submodules.OrderNum = 1)) LIMIT 1; @@ -635,7 +612,7 @@ CREATE FUNCTION `CreateStudyGroup` ( `GradeID` INT, BEGIN DECLARE checker INT; - -- check for grade (GradeID) availability + -- check for grade (GradeID) existence SET checker = -1; SELECT grades.ID INTO checker