public ActionResult <object> Save(StudentTermRegisterFORM save) { try { Init(); var isSaved = _studentTermRegisterService.SingleSave(save, ref _sbError); if (isSaved == null) { Response.StatusCode = 400; return("Error " + _sbError.ToString()); } return(true); } catch (Exception er) { return(Error(er)); } }
public StudentTermRegister SingleSave(StudentTermRegisterFORM enroll, ref StringBuilder sbError) { Student student = null; StudentTermRegister studentDataEnrollment = null; bool dbFlag = false; if (!_user.isAdmin) { if (_user.ClassID != null) { if (!_user.ClassID.Equals(enroll.ClassID)) { sbError.Append("You are not class teacher of that class"); return(null); } } else { sbError.Append("You are not allowed to register student for this class"); return(null); } } var school = _uofRepository.SchoolRepository.GetSchoolBySchoolID(_user.SchoolID, ref dbFlag); student = _uofRepository.StudentRepository.GetStudentByRegNumber(enroll.RegNumber, _user.SchoolID, ref dbFlag); if (enroll.StudentTermRegisterID != null && enroll.StudentTermRegisterID != Guid.Empty) { var isExist = _uofRepository.StudentTermRegisterRepository.GetByID((Guid)enroll.StudentTermRegisterID, ref dbFlag); if (isExist == null) { sbError.Append("Student not found by for term"); return(null); } else { studentDataEnrollment = isExist; } } if (student == null) { sbError.Append("Student not found by reg number for school"); return(null); } if (student == null) { sbError.Append("Student does not exist for school"); return(null); } if (dbFlag) { sbError.Append("Error getting enrollment details"); return(null); } if (student.SchoolID != _user.SchoolID) { sbError.Append("Student does not belong to school exist"); return(null); } if (student.SchoolID != _user.SchoolID) { sbError.Append("Student does not belong to school exist"); return(null); } if (enroll.StudentTermRegisterID != null && enroll.StudentTermRegisterID != Guid.Empty) { studentDataEnrollment.IsAllowedSent = enroll.IsAllowedSent; studentDataEnrollment.IsEmailSent = enroll.IsEmailSent; studentDataEnrollment.IsPhoneSent = enroll.IsPhoneSent; var e = _uofRepository.StudentTermRegisterRepository.Update(studentDataEnrollment, _user.Username, ref dbFlag); return(e); } var schoolClass = _uofRepository.ClassRepository.GetClassByID(enroll.ClassID, ref dbFlag); if (schoolClass == null) { sbError.Append("Class does not exist for school"); return(null); } if (dbFlag) { sbError.Append("Error getting enrollment details"); return(null); } if (schoolClass.SchoolID != _user.SchoolID) { sbError.Append("Class does not exist for school or vice versa"); return(null); } StudentTermRegister enrollment = new StudentTermRegister() { StudentTermRegisterID = null, ClassID = enroll.ClassID, StudentID = (Guid)student.StudentID, TermID = _user.TermID, IsAllowedSent = enroll.IsAllowedSent, IsEmailSent = enroll.IsEmailSent, IsPhoneSent = enroll.IsPhoneSent }; enrollment = _uofRepository.StudentTermRegisterRepository.Insert(enrollment, _user.Username, ref dbFlag); if (dbFlag) { sbError.Append("Error getting saving enrollement"); return(null); } // check if chan return(enrollment); }