public String serializeXML(StudentPerson sp) { string xml = "<?xml version=\"1.0\" encoding=\"UTF - 8\"?>"; xml += "<StudentPerson>"; xml += "<PersonId>" + sp.PersonID + "</PersonId>"; xml += "<Surname>" + sp.Surname + "</Surname>"; xml += "<Firstname>" + sp.Firstname + "</Firstname>"; xml += "<Middlename>" + sp.Middlename + "</Middlename>"; xml += "<BG>" + sp.BG + "</BG>"; xml += "<CollegeCode>" + sp.Department.CollegeCode + "<CollegeCode>"; xml += "<Department>" + sp.Department.Code + "</Department>"; xml += "<Programme>" + sp.Programme + "</Programme>"; xml += "<HCN>" + sp.HCN + "</HCN>"; xml += "<Phone>" + sp.Phone + "</Phone>"; xml += "<Email>" + sp.Email + "</Email>"; xml += "<Level>" + sp.Level + "</Level>"; xml += "<SponsorName>" + sp.SponsorName + "</SponsorName>"; xml += "<SponsorAddress>" + sp.SponsorAddress + "</SponsorAddress>"; xml += "<Sex>" + sp.Sex + "</Sex>"; xml += "</StudentPerson>"; return(xml); }
public bool saveStudentPersonProfile(string personIdNo, StudentPerson newpersonprofile, int?snapshotid, bool overridewithnull = true) { //backup old data if (dbcontext.Persons.Any(p => p.IdentityNo == personIdNo)) { IdentityDataLayer.DataModels.StudentPerson pid = dbcontext.StudentPersons.First(p => p.Person.IdentityNo == personIdNo); if (!dbcontext.IDSnapshots.Any(p => p.PersonId == pid.Person.Id && p.SnapshotDetails != "")) { //back migrated data IdentityDataLayer.DataModels.IDSnapshot idsnapshot = new IdentityDataLayer.DataModels.IDSnapshot(); idsnapshot.SnapshotDetails = serializeXML(pid); idsnapshot.PersonId = pid.PersonId; idsnapshot.CreatedBy = 1; idsnapshot.DateCreated = DateTime.Now.AddDays(-1); dbcontext.IDSnapshots.Add(idsnapshot); dbcontext.SaveChanges(); } } if (snapshotid == null) { IdentityDataLayer.DataModels.IDSnapshot idsnapshot = new IdentityDataLayer.DataModels.IDSnapshot(); idsnapshot.SnapshotDetails = serializeXML(newpersonprofile); IdentityDataLayer.DataModels.Person person = dbcontext.Persons.First(p => p.IdentityNo == personIdNo); idsnapshot.PersonId = person.Id; idsnapshot.CreatedBy = 1; idsnapshot.DateCreated = DateTime.Now; dbcontext.IDSnapshots.Add(idsnapshot); person.Surname = newpersonprofile.Surname; person.Firstname = newpersonprofile.Firstname; person.Middlename = newpersonprofile.Middlename; person.HealthCentreNo = newpersonprofile.HCN ?? person.HealthCentreNo; person.BloodGroup = newpersonprofile.BG ?? person.BloodGroup; person.StudentPerson.CurrentLevel = String.IsNullOrEmpty(newpersonprofile.Level)? person.StudentPerson.CurrentLevel: newpersonprofile.Level; person.StudentPerson.StudentCategoryId = newpersonprofile.CategoryId; // String.IsNullOrEmpty(newpersonprofile.Level) ? person.StudentPerson.CurrentLevel : newpersonprofile.Level; /* if (newpersonprofile.CategoryId == 2) * { * person.StudentPerson.Program = newpersonprofile.Level; * * }*/ person.StudentPerson.Program = newpersonprofile.Programme; person.Phone = newpersonprofile.Phone ?? person.Phone; person.Email = newpersonprofile.Email ?? person.Email; person.Sex = newpersonprofile.Sex.ToString(); person.StudentPerson.SponsorName = newpersonprofile.SponsorName ?? person.StudentPerson.SponsorName; person.StudentPerson.SponsorAddress = newpersonprofile.SponsorAddress ?? person.StudentPerson.SponsorAddress; person.StudentPerson.SponsorPhone = newpersonprofile.SponsorPhone ?? person.StudentPerson.SponsorPhone; person.StudentPerson.CurrentDepartmentId = newpersonprofile.Department.Code == null? person.StudentPerson.CurrentDepartmentId:dbcontext.Departments.First(p => p.DepartmentCode == newpersonprofile.Department.Code).DepartmentId; person.StudentPerson.LastEnrollmentSession = String.IsNullOrEmpty(newpersonprofile.CurrentSession)? person.StudentPerson.LastEnrollmentSession : newpersonprofile.CurrentSession; person.StudentPerson.LastEnrollmentStatus = String.IsNullOrEmpty(newpersonprofile.CurrentStatus)? person.StudentPerson.LastEnrollmentStatus:newpersonprofile.CurrentStatus; dbcontext.SaveChanges(); } dbcontext = new IdentityDataLayer.DataModels.IdentityDBEntities(); return(true); }
public StudentPerson getStudentPersonFromSouce(string id, string session) { // ProfileServiceClient client = new ProfileServiceClient(); int categoryid = 0; StudentRecord sr = getStudentRecordFromSouce(id, session, out categoryid); StudentPerson sp = new StudentPerson(); sp.PersonID = sr.MatricNo; sp.CategoryId = categoryid; sp.Surname = sr.Surname; sp.Firstname = sr.Firstname; // sp.Address = sr.Address; sp.Middlename = sr.Middlename; sp.Phone = sr.Phone; sp.Sex = sr.Sex[0]; sp.NextOfKin = new Person(); sp.Email = sr.Email; sp.Department = new Department(); if (sr.Department != null) { sp.Department = new Department(sr.Department, sr.Department, sr.College); } sp.Level = sr.Level; sp.SponsorName = sr.SponsorName; sp.SponsorPhone = sr.SponsorPhone; sp.SponsorAddress = sr.SponsorAddress; sp.CurrentStatus = sr.PaymentStatus; sp.Programme = sr.Programme; sp.CurrentSession = session; return(sp); }
public StudentPerson deSerializeXML(string xml) { StudentPerson sp = null;// new StudentPerson() /* string xml = "<?xml version=\"1.0\" encoding=\"UTF - 8\"?>"; * xml += "<StudentPerson>"; * * xml += "<PersonId>" + sp.PersonID + "</PersonId>"; * xml += "<Surname>" + sp.Surname + "</Surname>"; * xml += "<Firstname>" + sp.Firstname + "</Firstname>"; * xml += "<Middlename>" + sp.Middlename + "</Middlename>"; * xml += "<BG>" + sp.BG + "</BG>"; * xml += "<CollegeCode>" + sp.Department.CollegeCode + "<CollegeCode>"; * xml += "<Department>" + sp.Department.Name + "</Department>"; * xml += "<HCN>" + sp.HCN + "</HCN>"; * xml += "<Phone>" + sp.Phone + "</Phone>"; * xml += "<Email>" + sp.Email + "</Email>"; * xml += "<Level>" + sp.Level + "</Level>"; * xml += "<SponsorName>" + sp.SponsorName + "</SponsorName>"; * xml += "<SponsorAddress>" + sp.SponsorAddress + "</SponsorAddress>"; * xml += "<Sex>" + sp.Sex + "</Sex>"; * * xml += "</StudentPerson>";*/ return(sp); }
public ProfileViewModel(SearchViewModel SelectedItem, bool updatefromsource) { if (SelectedItem != null) { SearchPeople repo = new SearchPeople(); sp = repo.filterStudentPersonById(SelectedItem.PersonID, updatefromsource); this.PersonId = sp.PersonID; this.Surname = sp.Surname; this.Firstname = sp.Firstname; this.Middlename = sp.Middlename; this.Deptment = sp.Department.Code; this.College = sp.Department.CollegeCode; this.Email = sp.Email; this.SponsorName = sp.SponsorName; this.SponsorPhone = sp.SponsorPhone; this.SponsorAddress = sp.SponsorAddress; this.Level = sp.Level; this.Programme = sp.Programme; this.HealthId = sp.HCN; this.BloodGrp = sp.BG; this.Phone = sp.Phone; this.Address = sp.Address; this.Gender = sp.Sex; this.Next_of_KinName = sp.NextOfKin.Surname + " " + sp.NextOfKin.Firstname; this.Next_of_KinPhone = sp.NextOfKin.Phone; this.Next_of_KinAddress = sp.NextOfKin.Address; this.Photo = sp.Photo; this.categoryid = sp.CategoryId; this.Fmds = sp.Fmds; // this.currentsnapshotid = null; } }
public StudentPerson filterStudentPersonById(String id, bool updatefromsource = false) { //check config for updating from source // bool updatefromsource = true; StudentPerson results = person_repo.getStudentPersonById(id, updatefromsource); //treat results return(results); }
public ActionResult Edit(int id, StudentPerson SPerson) { try { // TODO: Add update logic here _studentService.UpdateStudent(SPerson.Student); return(RedirectToAction("Index")); } catch { return(View()); } }
// GET: Student/Edit/5 public ActionResult Edit(int id) { Student stu = _studentService.GetStudentByIdIncludePerson(id); StudentPerson sp = new StudentPerson() { Student = stu, Person = stu.Person }; return(View(sp)); }
static string CreateStudent() { String surname = null; int yearofstudy = 0; int number = 0; SDatabase stbase = new SDatabase(); int n = 0;//counter student string choice = "1"; while (choice == "1") { Console.WriteLine("type surname"); surname = Console.ReadLine(); Console.WriteLine("type study year"); yearofstudy = Convert.ToInt32(Console.ReadLine()); if (yearofstudy > 4) { Console.WriteLine("Study year for bachelors cant be more than 4"); yearofstudy = 4; } Console.WriteLine("type student number"); number = Convert.ToInt32(Console.ReadLine()); stbase[n] = new StudentPerson(surname, yearofstudy, number); n = n + 1; Console.WriteLine("For new student type - 1 \t For new aspirant- 2 \t For Students information -3 \t For Aspirant information -4 \t For compare Students-5 \t For compare Aspirants-6 \t Type -end- to exit"); choice = Console.ReadLine(); } while (choice == "3") { Console.WriteLine("Enter index"); int m = Convert.ToInt32(Console.ReadLine()); stbase[m].Display(); Console.WriteLine("Object to string = " + stbase[m].ToString()); Console.WriteLine("Gethashcode = " + stbase[m].GetHashCode()); Console.WriteLine("GetType = " + stbase[m].GetType()); Console.WriteLine("For new student type - 1 \t Type - end - to exit \t For new aspirant- 2 \t For information -3 \t For Students information -4 \t For compare Students-5 \t For compare Aspirants-6 \t Type -end- to exit "); choice = Console.ReadLine(); } while (choice == "5") { int a; int b; bool result; Console.WriteLine("Type the 1st student index"); a = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Type the 2nd student index"); b = Convert.ToInt32(Console.ReadLine()); bool studentequal = stbase[a].Equals(stbase[b]); Console.WriteLine("Onject equal" + studentequal); Console.WriteLine("For new student type - 1 \t Type - end - to exit \t For new aspirant- 2 \t For information -3 \t For Students information -4 \t For compare Students-5 \t For compare Aspirants-6 \t Type -end- to exit "); choice = Console.ReadLine(); } return(choice); }
private bool updatefromsource(String id) { string cuurentsession = ""; string currentsession = dbcontext.Configs.First(p => p.ConfigName == "CurrentSession").ConfigValue; StudentPerson sp = getStudentPersonFromSouce(id, currentsession); if (!dbcontext.StudentPersons.Any(p => p.Person.IdentityNo == id)) { IdentityDataLayer.DataModels.Person ip = new IdentityDataLayer.DataModels.Person(); ip.IdentityNo = sp.PersonID; ip.Surname = sp.Surname; ip.Firstname = sp.Firstname; ip.Middlename = sp.Middlename; ip.Phone = sp.Phone; ip.Email = sp.Email; ip.Address = sp.Address; ip.HealthCentreNo = sp.HCN; ip.Sex = sp.Sex.ToString(); dbcontext.Persons.Add(ip); // dbcontext.SaveChanges(); // dbcontext = new IdentityDataLayer.DataModels.IdentityDBEntities(); // ip = dbcontext.Persons.Single(p => p.IdentityNo == sp.PersonID); IdentityDataLayer.DataModels.StudentPerson isp = new IdentityDataLayer.DataModels.StudentPerson(); isp.CurrentLevel = sp.Level; isp.Program = sp.Programme; isp.SponsorName = sp.SponsorName; isp.SponsorPhone = sp.SponsorPhone; isp.SponsorAddress = sp.SponsorAddress; isp.StudentCategoryId = sp.CategoryId; isp.CurrentDepartmentId = dbcontext.Departments.First(p => p.DepartmentCode == sp.Department.Code).DepartmentId; isp.CreatedBy = 1; isp.DateCreated = DateTime.Now; isp.Person = ip; isp.LastEnrollmentSession = sp.CurrentSession; isp.LastEnrollmentStatus = sp.CurrentStatus; dbcontext.StudentPersons.Add(isp); dbcontext.SaveChanges(); } else { IdentityDataLayer.DataModels.StudentPerson isp = dbcontext.StudentPersons.First(p => p.Person.IdentityNo == id); if (!match(sp, isp)) { bool b = saveStudentPersonProfile(id, sp, null); return(b); } } dbcontext = new IdentityDataLayer.DataModels.IdentityDBEntities(); return(true); }
public int AddStudent(StudentPerson SPerson) { using (TransactionScope tran = new TransactionScope()) { Persons.Add(SPerson.Person); // this person is tracked and in context // then we can add as Student by setting the navigation property. //person.Student = new Student() { // Id = person.Id //}; SPerson.Student.Id = SPerson.Person.Id; Students.Add(SPerson.Student); // Complete(); tran.Complete(); return(SPerson.Person.Id); } }
public ActionResult Create(StudentPerson SPerson) { try { // TODO: Add insert logic here //Department dept = new Department() { // Name = DepartmentName, // Budget = Budget //}; _studentService.AddStudent(SPerson); return(RedirectToAction("Index")); } catch { return(View()); } }
public HttpResponseMessage Post([FromBody] StudentPerson student) { if (!ModelState.IsValid) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Student data is invalid.")); } try { _Studentservice.AddStudent(student); var message = Request.CreateResponse(HttpStatusCode.Created, student); message.Headers.Location = new Uri(Url.Link("GetStudentById", new { id = student.Person.Id })); return(message); } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Some internal error occurs...")); } }
public HttpResponseMessage Put([FromUri] int id, [FromBody] StudentPerson student) { if (!ModelState.IsValid) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Student data is invalid.")); } try { Student stu = _Studentservice.GetStudentById(id); if (stu == null) { return(Request.CreateResponse(HttpStatusCode.NotFound, "Student with Id " + id.ToString() + " not found to update")); } _Studentservice.UpdateStudent(student); return(Request.CreateResponse(HttpStatusCode.OK, student)); } catch (Exception ex) {// should log ex ourselves, should not return to the user return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Some internal error occurs...")); } }
private bool match(StudentPerson sp, IdentityDataLayer.DataModels.StudentPerson isp) { string s1 = sp.PersonID + sp.Surname + sp.Firstname + sp.Middlename + sp.Department.CollegeCode + sp.Department.Code + sp.Phone + sp.Sex + sp.Email + sp.Level + sp.SponsorName + sp.SponsorPhone + sp.SponsorAddress + sp.CurrentStatus + sp.CurrentSession; string s2 = isp.Person.IdentityNo + isp.Person.Surname + isp.Person.Firstname + isp.Person.Middlename + isp.Department.CollegeCode + isp.Department.DepartmentCode + isp.Person.Phone + isp.Person.Sex + isp.Person.Email + isp.CurrentLevel + isp.SponsorName + isp.SponsorPhone + isp.SponsorAddress + isp.LastEnrollmentStatus + isp.LastEnrollmentSession; return(s1 == s2); }
public void UpdateStudent(StudentPerson student) { Persons.Update(student.Person); Students.Update(student.Student); }