Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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);
        }
Exemplo n.º 5
0
 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);
        }
Exemplo n.º 7
0
 public ActionResult Edit(int id, StudentPerson SPerson)
 {
     try {
         // TODO: Add update logic here
         _studentService.UpdateStudent(SPerson.Student);
         return(RedirectToAction("Index"));
     }
     catch {
         return(View());
     }
 }
Exemplo n.º 8
0
        // 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));
        }
Exemplo n.º 9
0
            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);
            }
Exemplo n.º 10
0
        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);
        }
Exemplo n.º 11
0
 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);
     }
 }
Exemplo n.º 12
0
        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());
            }
        }
Exemplo n.º 13
0
        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..."));
            }
        }
Exemplo n.º 14
0
 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..."));
     }
 }
Exemplo n.º 15
0
        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);
        }
Exemplo n.º 16
0
 public void UpdateStudent(StudentPerson student)
 {
     Persons.Update(student.Person);
     Students.Update(student.Student);
 }