Exemplo n.º 1
0
 private void SaveCourseProviders(CanvasCourseDetailModel courseDetail)
 {
     if (courseDetail != null)
     {
         var lstCourseProviders = (from cp in base.db.CourseProviders
                                   where cp.CourseId == courseDetail.CourseId
                                   select cp)
                                  .ToList();
         if (lstCourseProviders != null && lstCourseProviders.Count > 0)
         {
             base.db.CourseProviders.RemoveRange(lstCourseProviders);
         }
         if (courseDetail.SelectedProviders != null && courseDetail.SelectedProviders.Count > 0)
         {
             foreach (Guid aProvider in courseDetail.SelectedProviders)
             {
                 base.db.CourseProviders.Add(new CourseProvider()
                 {
                     CourseId = courseDetail.CourseId
                     ,
                     ProviderId = aProvider
                     ,
                     Id = Guid.NewGuid()
                 });
             }
         }
         base.db.SaveChanges();
     }
 }
Exemplo n.º 2
0
 private void SaveCourseUniversities(CanvasCourseDetailModel courseDetail)
 {
     if (courseDetail != null)
     {
         var lstCourseUniversities = (from cu in base.db.CourseUniversities
                                      where (cu.CourseId == courseDetail.CourseId)
                                      select cu).ToList();
         if (lstCourseUniversities != null && lstCourseUniversities.Count > 0)
         {
             base.db.CourseUniversities.RemoveRange(lstCourseUniversities);
         }
         if (courseDetail.SelectedUniversities != null)
         {
             foreach (Guid aUni in courseDetail.SelectedUniversities)
             {
                 base.db.CourseUniversities.Add(new CourseUniversity()
                 {
                     CourseId = courseDetail.CourseId
                     ,
                     Id = Guid.NewGuid()
                     ,
                     UniversityId = aUni
                 });
             }
         }
         base.db.SaveChanges();
     }
 }
Exemplo n.º 3
0
        private void SaveCourseSchedule(CanvasCourseDetailModel courseDetail)
        {
            if (courseDetail != null)
            {
                var courseSchedule = (from cs in base.db.CourseSchedules
                                      where (cs.CourseId == courseDetail.CourseId)
                                      select cs)
                                     .FirstOrDefault();
                if (courseSchedule != null && (courseDetail.StartDate != null || courseDetail.EndDate != null))
                {
                    courseSchedule.StartDate            = courseDetail.StartDate;
                    courseSchedule.EndDate              = courseDetail.EndDate;
                    base.db.Entry(courseSchedule).State = System.Data.Entity.EntityState.Modified;
                }
                else
                {
                    db.CourseSchedules.Add(new CourseSchedule()
                    {
                        ScheduleId = Guid.NewGuid()
                        ,
                        CourseId = courseDetail.CourseId

                        ,
                        EndDate = courseDetail.EndDate
                        ,
                        StartDate = courseDetail.StartDate
                    });
                }
                base.db.SaveChanges();
            }
        }
Exemplo n.º 4
0
        private async Task <string> CreateNewCourse(CanvasCourseDetailModel courseDetail)
        {
            if (courseDetail != null)
            {
                Courses.Add Add = new Courses.Add()
                {
                    CourseDescription = courseDetail.CourseDescription
                    ,
                    CourseName = courseDetail.CourseName
                    ,
                    EndDate = courseDetail.EndDate
                    ,
                    StartDate = courseDetail.StartDate
                };
                string oResponse = await base.canvasManager.CreateCourse(Add) as string;

                if (!string.IsNullOrEmpty(oResponse))
                {
                    CanvasCourseModel newCourse = oResponse.FromJson <CanvasCourseModel>();
                    if (newCourse != null)
                    {
                        Guid  courseId = Guid.NewGuid();
                        Cours c        = new Cours()
                        {
                            CanvasId            = newCourse.id
                            , CourseCreateDate  = DateTime.Now
                            , CourseDescription = courseDetail.CourseDescription
                            , CourseName        = courseDetail.CourseName
                            , CourseId          = courseId
                        };


                        try
                        {
                            base.db.Courses.Add(c);
                            db.SaveChanges();
                            SaveCourseSchedule(courseDetail);
                            SaveCourseProviders(courseDetail);
                            SaveCourseUniversities(courseDetail);
                        }
                        catch (Exception ex)
                        {
                            return(base.serializer.Serialize(new { Success = false, Message = ex.Message }));
                        }

                        return(base.serializer.Serialize(new { Success = true, Message = string.Empty }));
                    }
                }
            }
            return(base.serializer.Serialize(new { Success = false, Message = "Error" }));
        }
Exemplo n.º 5
0
        public ActionResult Detail(Guid?id)
        {
            CanvasCourseDetailModel courseDetail = new CanvasCourseDetailModel();

            if (id != null)
            {
                var obj = (from c in base.db.Courses
                           where c.CourseId == id
                           select c
                           ).FirstOrDefault();
                if (obj != null)
                {
                    courseDetail.CourseId          = obj.CourseId;
                    courseDetail.CourseDescription = obj.CourseDescription;
                    courseDetail.CourseName        = obj.CourseName;
                    courseDetail.EndDate           = (from cs in base.db.CourseSchedules
                                                      where cs.CourseId == obj.CourseId
                                                      select cs.EndDate)
                                                     .FirstOrDefault();
                    courseDetail.StartDate = (from cs in base.db.CourseSchedules
                                              where cs.CourseId == obj.CourseId
                                              select cs.StartDate)
                                             .FirstOrDefault();

                    var lstProviders = (from p in base.db.CourseProviders
                                        where p.CourseId == obj.CourseId
                                        select p.ProviderId)
                                       .ToList();
                    if (lstProviders != null)
                    {
                        courseDetail.SelectedProviders = new List <Guid>();
                        lstProviders.ForEach(p => {
                            courseDetail.SelectedProviders.Add(p.Value);
                        });
                    }

                    var lstUniversities = (from p in base.db.CourseUniversities
                                           where p.CourseId == obj.CourseId
                                           select p.UniversityId)
                                          .ToList();
                    if (lstUniversities != null)
                    {
                        courseDetail.SelectedUniversities = new List <Guid>();
                        lstUniversities.ForEach(u => {
                            courseDetail.SelectedUniversities.Add(u.Value);
                        });
                    }
                }
            }
            return(View(courseDetail));
        }
Exemplo n.º 6
0
        public async Task <string> SaveCourseDetail(CanvasCourseDetailModel courseDetail)
        {
            if (ModelState.IsValid)
            {
                if (courseDetail.CourseId == null || courseDetail.CourseId == new Guid())
                {
                    return(await CreateNewCourse(courseDetail));
                }
                else
                {
                    return(await UpdateCourse(courseDetail));
                }
            }

            return(base.serializer.Serialize(new { Success = false, Message = "Error" }));
        }
Exemplo n.º 7
0
        private async Task <string> UpdateCourse(CanvasCourseDetailModel courseDetail)
        {
            if (courseDetail != null)
            {
                int?iCanvasId = (from c in base.db.Courses
                                 where c.CourseId == courseDetail.CourseId
                                 select c.CanvasId
                                 ).FirstOrDefault();
                if (iCanvasId != null)
                {
                    Courses.Add Add = new Courses.Add()
                    {
                        CourseDescription = courseDetail.CourseDescription
                        ,
                        CourseName = courseDetail.CourseName
                        ,
                        EndDate = courseDetail.EndDate
                        ,
                        StartDate = courseDetail.StartDate
                    };
                    string oResponse = await base.canvasManager.UpdateCourse(Add, iCanvasId.Value) as string;

                    if (!string.IsNullOrEmpty(oResponse))
                    {
                        try
                        {
                            CanvasCourseModel updateCourse = oResponse.FromJson <CanvasCourseModel>();
                            Cours             c            = (from co in base.db.Courses
                                                              where (co.CourseId == courseDetail.CourseId)
                                                              select co)
                                                             .FirstOrDefault();
                            if (c != null)
                            {
                                c.CourseName           = courseDetail.CourseName;
                                c.CourseDescription    = courseDetail.CourseDescription;
                                base.db.Entry(c).State = System.Data.Entity.EntityState.Modified;
                                base.db.SaveChanges();
                                SaveCourseSchedule(courseDetail);
                                SaveCourseProviders(courseDetail);
                                SaveCourseUniversities(courseDetail);
                            }
                            //Cours c = new Cours()
                            //{
                            //    CanvasId = updateCourse.id
                            //    ,
                            //    CourseCreateDate = DateTime.Now
                            //    ,
                            //    CourseDescription = courseDetail.CourseDescription
                            //    ,
                            //    CourseName = courseDetail.CourseName
                            //    ,
                            //    CourseId = Add.CourseId
                            //};
                        }
                        catch (Exception ex)
                        {
                            return(base.serializer.Serialize(new { Success = false, Message = ex.Message }));
                        }
                        return(base.serializer.Serialize(new { Success = true, Message = string.Empty }));
                    }
                }
            }
            return(base.serializer.Serialize(new { Success = false, Message = "Error" }));
        }