/// <summary> /// Get existing Student's Google account /// </summary> /// <param name="googleId"></param> /// <returns>Return Student Object</returns> public Student GetGoogleStudent(string googleId) { BaseDaoImpl <Student> baseDao = new BaseDaoImpl <Student>(); string query = String.Format("SELECT * FROM Student WHERE GoogleAccountId = {0}", googleId); Student student = baseDao.RetrieveQuery(query); return(student); }
/// <summary> /// Get existing Student's Facebook account /// </summary> /// <param name="fbId"></param> /// <returns>Retrun Student Object</returns> public Student GetFacebookStudent(string fbId) { BaseDaoImpl <Student> baseDao = new BaseDaoImpl <Student>(); string query = String.Format("SELECT * FROM Student WHERE FacebookAccountId = {0}", fbId); Student student = baseDao.RetrieveQuery(query); return(student); }
/// <summary> /// Get Monster that belongs to selected CustomLevel /// </summary> /// <param name="customLevelId"></param> /// <returns>Return Monster object</returns> public Monster GetCustomLevelMonster(int customLevelId) { BaseDaoImpl <Monster> baseDao = new BaseDaoImpl <Monster>(); string query = String.Format("SELECT m.MonsterId, m.MonsterName FROM CustomLevel cl NATURAL JOIN Monster m " + "WHERE cl.CustomLevelId = {0}", customLevelId); Monster monster = baseDao.RetrieveQuery(query); return(monster); }
/// <summary> /// Get Monster which belongs to the assignment /// </summary> /// <param name="assignmentId"></param> /// <returns>Return Monster object based on assignmentId</returns> public Monster GetAssignmentMonster(int assignmentId) { BaseDaoImpl <Monster> baseDao = new BaseDaoImpl <Monster>(); string query = String.Format("SELECT m.MonsterId, m.MonsterName FROM Assignment a NATURAL JOIN Monster m " + "WHERE a.AssignmentId = {0}", assignmentId); Monster monster = baseDao.RetrieveQuery(query); return(monster); }
/// <summary> /// Get Student's character /// </summary> /// <param name="studentId"></param> /// <returns>Return Character object</returns> public Character GetCharacter(int studentId) { BaseDaoImpl <Character> baseDao = new BaseDaoImpl <Character>(); string query = String.Format("SELECT c.CharId, c.CharName, c.CharSkill FROM Student s " + " INNER JOIN Characters c ON s.CharId = c.CharId WHERE s.StudentID = {0}", studentId); Character character = baseDao.RetrieveQuery(query); return(character); }
/// <summary> /// Get the total number of CompletedWorld for the Student /// </summary> /// <returns>Return the total count of Completed Worlds</returns> public int GetCompletedWorldCount() { string query = String.Format("SELECT COUNT(1) FROM World_LastSection_LastLevel w, StudentScore s " + "WHERE s.StudentId = {0} AND w.WorldId = s.WorldId AND w.LastSectionId = s.SectionId AND w.LastLevelId = s.LevelId;" , Global.StudentId); BaseDaoImpl <int> baseDao = new BaseDaoImpl <int>(); return(baseDao.RetrieveQuery(query)); }
/// <summary> /// Get the CustomLevelId /// </summary> /// <param name="option1"></param> /// <param name="option2"></param> /// <param name="option3"></param> /// <param name="correctOption"></param> /// <param name="questionTitle"></param> /// <returns> Return the acquired CustomLevelId</returns> private int GetCustomLevelId(string option1, string option2, string option3, string correctOption, string questionTitle) { string query = String.Format( "SELECT DISTINCT CustomLevelId FROM Question NATURAL JOIN CustomLevel " + "WHERE StudentId = {0} AND CustomLevelName = '{1}' AND QuestionTitle = '{2}' " + "AND Option1 = '{3}' AND Option2 = '{4}' AND Option3 = '{5}' AND CorrectOption = '{6}' " + "AND MonsterId = {7} AND TimeLimit = {8};", Global.StudentId, levelName, questionTitle, option1, option2, option3, correctOption, monsterId, timeLimit); BaseDaoImpl <int> baseDao = new BaseDaoImpl <int>(); int customLevelId = baseDao.RetrieveQuery(query); return(customLevelId); }
/// <summary> /// Check database for existing Level Name /// </summary> /// <param name="name"></param> /// <returns>Return -1 if there is existing level name, else return 1</returns> public static int CheckValidLevelName(string name) { string query = String.Format("SELECT CustomLevelName FROM CustomLevel cl WHERE StudentId = '{0}' AND CustomLevelName = '{1}'; ", Global.StudentId, name); BaseDaoImpl <string> baseDao = new BaseDaoImpl <string>(); name = baseDao.RetrieveQuery(query); if (name == null) { return(1); } else { return(-1); } }
/// <summary> /// Check database for existing level name /// </summary> /// <param name="oldName"></param> /// <param name="newName"></param> /// <returns>Return -1 if there is existing level name, else return 1 </returns> public static int CheckValidLevelName(string oldName, string newName) { //student string query = String.Format("SELECT CustomLevelName FROM(SELECT * FROM CustomLevel c2 WHERE c2.CustomLevelName <> '{0}') AS c " + "WHERE c.StudentId = {1} AND c.CustomLevelName = '{2}'; ", oldName, Global.StudentId, newName); //teacher /*string query = String.Format("SELECT AssignmentName FROM(SELECT * FROM `Assignment` a2 WHERE a2.AssignmentName <> '{1}') AS a " + * "WHERE TeacherId = {0} AND AssignmentName = '{1}'; ", Global.TeacherId, name);*/ BaseDaoImpl <string> baseDao = new BaseDaoImpl <string>(); string name = baseDao.RetrieveQuery(query); if (name == null) { return(1); } return(-1); }