Beispiel #1
0
        public Student ModifyStudent(string id, string name, string surname, DateTime data)
        {
            var db      = new s19461Context();
            var student = db.Student.SingleOrDefault(x => x.IndexNumber == id);

            if (name != null && student != null)
            {
                student.FirstName = name;
            }


            if (surname != null && student != null)
            {
                student.LastName = surname;
            }


            if (data != null && student != null)
            {
                student.BirthDate = data;
            }

            db.SaveChanges();
            return(student);
        }
Beispiel #2
0
        public Response EnrollStudent(EnrollStudentRequest request)
        {
            var db = new s19461Context();

            using (var dbTran = db.Database.BeginTransaction())
            {
                try
                {
                    var idStudies = db.Studies.SingleOrDefault(x => x.Name == request.Studies);
                    if (idStudies == null)
                    {
                        throw new Exception();
                    }

                    if (db.Enrollment.Where(x => x.Semester == 1)
                        .SingleOrDefault(x => x.IdStudy == idStudies.IdStudy) == null)
                    {
                        db.Enrollment.Add(new Enrollment
                        {
                            IdEnrollment = db.Enrollment.Max(x => x.IdEnrollment) + 1,
                            Semester     = 1,
                            IdStudy      = idStudies.IdStudy,
                            StartDate    = DateTime.Now
                        });
                    }

                    db.Student.Add(new Student
                    {
                        IndexNumber  = request.IndexNumber,
                        FirstName    = request.FirstName,
                        LastName     = request.LastName,
                        BirthDate    = request.BirthDate,
                        IdEnrollment = db.Enrollment.Where(x => x.Semester == 1)
                                       .Where(x => x.IdStudy == idStudies.IdStudy)
                                       .Select(x => x.IdEnrollment).First()
                    });

                    db.SaveChanges();
                    dbTran.Commit();
                    return(db.Enrollment.Where(x => x.Semester == 1)
                           .Where(x => x.IdStudy == idStudies.IdStudy).Select(x => new Response
                    {
                        IdEnrollment = x.IdEnrollment,
                        IdStudy = x.IdStudy,
                        Semester = x.Semester,
                        StartDate = x.StartDate
                    }).First());
                }
                catch (Exception)
                {
                    dbTran.Rollback();
                    return(null);
                }
            }
        }
Beispiel #3
0
        public Student DeleteStudent(string id)
        {
            var db      = new s19461Context();
            var student = db.Student.SingleOrDefault(x => x.IndexNumber == id);

            if (student != null)
            {
                db.Remove(student);
            }

            db.SaveChanges();
            return(student);
        }
Beispiel #4
0
        public IEnumerable <Response> PromoteStudent(PromoteStudentsRequests psrequest)
        {
            var db            = new s19461Context();
            var responsesList = new List <Response>();

            var study = db.Studies.Where(s => s.Name == psrequest.Studies).FirstOrDefault();

            var enrollment = db.Enrollment.Where(e => e.Semester == psrequest.Semester && e.IdStudy == study.IdStudy).First();

            var newEnrollment = db.Enrollment.Where(e => e.Semester == psrequest.Semester + 1 && e.IdStudy == study.IdStudy).FirstOrDefault();

            var newIdEnrollment = db.Enrollment.Max(e => e.IdEnrollment) + 1;

            if (newEnrollment == null)
            {
                db.Enrollment.Add(new Enrollment
                {
                    IdEnrollment = newIdEnrollment,
                    Semester     = psrequest.Semester + 1,
                    IdStudy      = study.IdStudy,
                    StartDate    = DateTime.Now
                });

                newEnrollment = db.Enrollment.Where(e => e.Semester == psrequest.Semester + 1 && e.IdStudy == study.IdStudy).FirstOrDefault();
            }

            var studentsList = db.Student.Where(student => student.IdEnrollment == enrollment.IdEnrollment).ToList();

            foreach (var student in studentsList)
            {
                student.IdEnrollment = newEnrollment.IdEnrollment;
            }


            var psresponse = new Response
            {
                IdEnrollment = newEnrollment.IdEnrollment,
                Semester     = psrequest.Semester + 1,
                IdStudy      = study.IdStudy,
                StartDate    = DateTime.Now
            };

            responsesList.Add(psresponse);
            return(responsesList);
        }
Beispiel #5
0
        public IEnumerable <Student> GetStudents()
        {
            var db = new s19461Context();

            return(db.Student.ToList());
        }
Beispiel #6
0
 public Entity_SqlServerDbService(s19461Context context)
 {
     _dbContext = context;
 }