From a2d4951110ce3bc247c864434aed254a6fdbad32 Mon Sep 17 00:00:00 2001
From: PavelBegunkov <asml.Silence@gmail.com>
Date: Wed, 20 Aug 2014 23:08:29 +0400
Subject: [PATCH] fix

---
 db/StoredProcedures.sql | 27 ++++++++++++++++++++++++---
 1 file changed, 24 insertions(+), 3 deletions(-)

diff --git a/db/StoredProcedures.sql b/db/StoredProcedures.sql
index 382b781eb..c7062dbd3 100644
--- a/db/StoredProcedures.sql
+++ b/db/StoredProcedures.sql
@@ -1030,23 +1030,44 @@ CREATE FUNCTION `AddDiscipline`(	`TeacherID` 	INT,
 									`SubjectID`		INT,
 									`ExamType`		VARCHAR(30),
 									`LectionCount`  INT,
-									`PracticeCount` INT			
+									`PracticeCount` INT,
+									`DepartmentID`	INT		
 								 ) 
 								RETURNS int(11)
     NO SQL
 BEGIN  
     DECLARE semID, checker INT; 
     SET semID = GetCurSemesterID();   
+
+    SELECT departments.ID
+    INTO checker
+    FROM `departments`
+    WHERE departments.ID = DepartmentID
+    LIMIT 1;
+    IF checker IS NULL OR checker <= 0 THEN
+    	RETURN -1;
+	END IF;
 	
 
+    SELECT subjects.ID
+    INTO checker
+    FROM `subjects`
+    WHERE subjects.ID = SubjectID
+    LIMIT 1;
+    IF checker IS NULL OR checker <= 0 THEN
+    	RETURN -1;
+	END IF;
+
+
 	INSERT INTO `disciplines` 	(	disciplines.AuthorID, 
 									disciplines.Grade, 
 									disciplines.SubjectID, 
 									disciplines.ExamType, 
 									disciplines.LectionCount, 
 									disciplines.PracticeCount,
-									disciplines.SemesterID )
-	VALUES 					( TeacherID, Grade, SubjectID, ExamType, LectionCount, PracticeCount, semID );
+									disciplines.SemesterID,
+									disciplines.DepartmentID )
+	VALUES 					( TeacherID, Grade, SubjectID, ExamType, LectionCount, PracticeCount, semID, DepartmentID );
 	
 	-- RETURN 	(	SELECT disciplines.ID
 	-- 			FROM   `disciplines`
-- 
GitLab