public ExportPayload ProcessFile(string Folder, ExportFile exportcontext) { this.ExportContext = exportcontext; List <object> Data = null; ExportParamater queryType = (from type in exportcontext.Paramaters where type.Name == "User_Type" select type).FirstOrDefault(); if (queryType == null) { throw new Exception("Paramater User_Type must be set"); } if (queryType.Data == null || string.IsNullOrWhiteSpace(queryType.Data.ToString())) { throw new Exception("User_Type Data set incorrectly\r\nData: " + queryType); } Data = RunQuery(queryType.Data.ToString()); if (Data == null) { throw new Exception("User_Type Data set incorrectly\r\nData: " + queryType); } return(new ExportPayload() { FilePath = Folder + "\\" + this._ExportContext.FileName, ShowHeader = exportcontext.ShowHeader, Data = Data }); }
public ExportPayload ProcessFile(string Folder, ExportFile exportcontext) { ExportParamater UserType = (from type in exportcontext.Paramaters where type.Name == "User_Type" select type).FirstOrDefault(); ExportParamater DefaultPassword = (from pas in exportcontext.Paramaters where pas.Name == "Default_Password" select pas).FirstOrDefault(); if (UserType == null) { throw new Exception("Paramater <User_Type> must be set"); } if (DefaultPassword == null) { throw new Exception("Paramater <Default_Password> must be set"); } List <object> Data = null; Data = RunQuery(UserType, DefaultPassword); if (Data == null) { throw new Exception("Paramater Data set incorrectly\r\nUser_Type Data: " + UserType.Data); } return(new ExportPayload() { FilePath = Folder + "\\" + exportcontext.FileName, ShowHeader = exportcontext.ShowHeader, Data = Data }); }
public ExportPayload ProcessFile(string Folder, ExportFile exportFile) { ExportParamater Institution = (from para in exportFile.Paramaters where para.Name == "Institution" select para).FirstOrDefault(); if (Institution == null) { throw new Exception("Paramater <Institution> must be set"); } object TeacherFlagPara = (from para in exportFile.Paramaters where para.Name == "ExportAllTeachers" select para.Data).FirstOrDefault(); object StudentFlagPara = (from para in exportFile.Paramaters where para.Name == "ExportAllStudents" select para.Data).FirstOrDefault(); object ClassesFlagPara = (from para in exportFile.Paramaters where para.Name == "ExportAllClasses" select para.Data).FirstOrDefault(); object TeacherPassword = (from para in exportFile.Paramaters where para.Name == "TeacherPassword" select para.Data).FirstOrDefault(); object StudentPassword = (from para in exportFile.Paramaters where para.Name == "StudentPassword" select para.Data).FirstOrDefault(); bool TeacherFlag = TeacherFlagPara != null ? (bool)TeacherFlagPara : true; bool StudentFlag = StudentFlagPara != null ? (bool)StudentFlagPara : true; bool ClassesFlag = ClassesFlagPara != null ? (bool)ClassesFlagPara : true; System.Diagnostics.Debug.WriteLine("Export all Teachers: " + TeacherFlag); System.Diagnostics.Debug.WriteLine("Export all Students: " + StudentFlag); System.Diagnostics.Debug.WriteLine("Export all Classes: " + ClassesFlag); System.Diagnostics.Debug.WriteLine("Number of Export Classes: " + this._ListofClasses.Count()); System.Diagnostics.Debug.WriteLine("Exporting Classes:"); if (ClassesFlag == false) { JArray array = (from para in exportFile.Paramaters where para.Name == "Classes" select(JArray) para.Data).FirstOrDefault(); if (array == null) { this._ListofClasses = new List <string>(); } this._ListofClasses = new List <string>(array.Select(i => i.ToString())); foreach (string item in this._ListofClasses) { System.Diagnostics.Debug.Write(item + ", "); } } List <object> Data = new List <object>(); Data.AddRange(GenerateInstituionData(Institution.Data.ToString())); Data.AddRange(GenerateTeacherUsers(TeacherFlag, (string)TeacherPassword)); Data.AddRange(GenerateStudentUsers(StudentFlag, (string)StudentPassword)); Data.AddRange(GenerateClasses(ClassesFlag)); if (TeacherFlag && StudentFlag && ClassesFlag) { Data.AddRange(GenerateMemberShips(true)); } else { Data.AddRange(GenerateMemberShips(false)); } Data = Convert(Data); System.Diagnostics.Debug.WriteLine("Total Lines: " + Data.Count()); return(new ExportPayload() { FilePath = Folder + "\\" + exportFile.FileName, ShowHeader = exportFile.ShowHeader, QuoteField = exportFile.QuoteNoFields, Data = Data }); }
private List <object> RunQuery(ExportParamater UserType, ExportParamater DefaultPassword) { List <object> returnvalue = new List <object>(); using (CHUMDB context = new CHUMDB()) { DBGeneric <User> Users = new DBGeneric <User>(context); DBGeneric <User_Type> UserTypes = new DBGeneric <User_Type>(context); User_Type UT = (from ut in UserTypes.Read() where ut.Label.ToString() == UserType.Data.ToString() select ut).FirstOrDefault(); if (UT == null) { throw new Exception("Can't Find User Type Paramater in DB: " + UserType.Data.ToString()); } if (UT.Label == "Student") { returnvalue = (from usr in Users.Read() where usr.Exit_Date == null && usr.UserName != null && !string.IsNullOrWhiteSpace(usr.UserName) && usr.User_Type_ID == UT.ID orderby usr.User_Type_ID, usr.Year_Level select new { username = usr.UserName + "@eq.edu.au", password = DefaultPassword.Data.ToString(), primary_email = usr.UserName + "@eq.edu.au", given_name = usr.Preferred_First_Name, surname = usr.Preferred_Last_Name, library_barcode = usr.ID, admin_system_id = usr.ID, enabled = "Y", staff_member = (UT.Label == "Student" ? "N" : "Y"), gender = usr.Sex, form_class = usr.Form_Class ?? " ", graduation_year = CalcGradYear(usr.Year_Level), }).ToList <object>(); } if (UT.Label == "Teacher") { returnvalue = (from usr in Users.Read() where usr.Exit_Date == null && usr.UserName != null && !string.IsNullOrWhiteSpace(usr.UserName) && usr.User_Type_ID == UT.ID orderby usr.User_Type_ID, usr.Year_Level select new { username = usr.UserName + "@eq.edu.au", password = DefaultPassword.Data.ToString(), primary_email = usr.UserName + "@eq.edu.au", given_name = usr.Preferred_First_Name, surname = usr.Preferred_Last_Name, library_barcode = usr.Barcode, admin_system_id = usr.Barcode, enabled = "Y", staff_member = (UT.Label == "Student" ? "N" : "Y"), }).ToList <object>(); } } return(returnvalue); }