Exemplo n.º 1
0
        public async Task <ActionResult> EditSubject(SubjectViewModel subject)
        {
            string currentUserId = System.Web.HttpContext.Current.User.Identity.GetUserId();

            if (currentUserId == null)
            {
                return(new HttpUnauthorizedResult());
            }
            if (ModelState.IsValid)
            {
                SubjectDTO subjectDTO = new SubjectDTO
                {
                    SubjectId   = subject.Id,
                    SubjectName = subject.Name,
                    Description = subject.Description,
                    IsApproved  = subject.IsApproved
                };
                OperationDetails operationDetails = await SubjectService.UpdateAsync(subjectDTO, currentUserId);

                if (operationDetails.Succedeed)
                {
                    return(PartialView("Report", operationDetails));
                }
                else
                {
                    ModelState.AddModelError(operationDetails.Property, operationDetails.Message);
                    return(PartialView("Report", operationDetails));
                }
            }
            ViewBag.Message = "Non valid";
            return(PartialView("~/Views/Admin/Subject/EditSubject.cshtml", subject));
        }
Exemplo n.º 2
0
        public async Task <ActionResult <SubjectViewModel> > Create(SubjectViewModel subjectView)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //var subject = _mapper.Map<Subject>(subjectView);
                    var subject = _mapper.Map <SubjectViewModel, Subject>(subjectView);

                    var result = await _context.Subjects.AddAsync(subject);

                    var save = await _context.SaveChangesAsync();

                    // var subject = _mapper.Map<SubjectViewModel, Subject>(subjectView);
                    //var save = _manager.Create(subject);
                    return(RedirectToAction("Index"));
                    //if (save != null)
                    //{
                    //    return RedirectToAction("Index");
                    //}
                }
                return(View());
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Exemplo n.º 3
0
        public SubjectView()
        {
            InitializeComponent();
            var vm = new SubjectViewModel();

            this.DataContext = vm;
        }
Exemplo n.º 4
0
        public async Task <IActionResult> EditSubject(SubjectViewModel model)
        {
            if (ModelState.IsValid)
            {
                var subj = await db.Subjects.FirstOrDefaultAsync(s => s.SubjectId != model.Id && s.SubjectName == model.Name && s.NeedVisits == model.NeedVisits);

                if (subj == null)
                {
                    Subject subject = await db.Subjects.FirstOrDefaultAsync(s => s.SubjectId == model.Id);

                    if (subject != null)
                    {
                        subject.SubjectName = model.Name;
                        subject.NeedVisits  = model.NeedVisits;
                        db.Subjects.Update(subject);
                        await db.SaveChangesAsync();

                        return(RedirectToAction("Subjects"));
                    }
                    ModelState.AddModelError("", "Предмета не существует");
                }
                else
                {
                    ModelState.AddModelError("", "Такая дисциплина уже есть");
                }
            }
            return(View("Edit/Subject", model));
        }
Exemplo n.º 5
0
        private void AddNew(object sender, EventArgs e)
        {
            if (Pivot.SelectedItem == TermsTab)
            {
                var term = new TermViewModel();
                set.Terms.Add(term);

                Dispatcher.BeginInvoke(delegate {
                    Debug.Assert(TermList.ItemContainerGenerator != null, "TermList.ItemContainerGenerator != null");

                    var container = TermList.ItemContainerGenerator.ContainerFromItem(term) as FrameworkElement;
                    FocusTextBox(container);
                });
            }
            else if (Pivot.SelectedItem == SubjectsTab)
            {
                var subject = new SubjectViewModel();
                set.Subjects.Insert(0, subject);

                Dispatcher.BeginInvoke(delegate {
                    Debug.Assert(SubjectList.ItemContainerGenerator != null, "SubjectList.ItemContainerGenerator != null");

                    var container = SubjectList.ItemContainerGenerator.ContainerFromItem(subject) as FrameworkElement;
                    FocusTextBox(container);
                });
            }
        }
Exemplo n.º 6
0
 public void EditSubject(int?Id, [FromBody] SubjectViewModel subject)
 {
     if ((Id != null) & (subject != null))
     {
         subjectService.UpdateSubject(Map(subject));
     }
 }
Exemplo n.º 7
0
        public async Task <IActionResult> CreateSubject(SubjectViewModel model)
        {
            if (ModelState.IsValid)
            {
                //Есть ли уже такой предмет
                var subj = await db.Subjects.FirstOrDefaultAsync(s => s.SubjectName == model.Name && s.NeedVisits == model.NeedVisits);

                if (subj == null)
                {
                    Subject subject = new Subject
                    {
                        SubjectId   = db.NextSequence("SEQ_Subjects"),
                        SubjectName = model.Name,
                        NeedVisits  = model.NeedVisits
                    };
                    db.Subjects.Add(subject);
                    await db.SaveChangesAsync();

                    return(RedirectToAction("Subjects"));
                }
                else
                {
                    ModelState.AddModelError("", "Такая дисциплина уже есть");
                }
            }
            return(View("Create/Subject", model));
        }
Exemplo n.º 8
0
        public ActionResult Subject(int?id)
        {
            if (!id.HasValue)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            var subject = this.context.Subjects.Find(id.Value);

            if (subject == null)
            {
                return(this.HttpNotFound());
            }

            var @class    = subject.Class;
            var classType = @class?.ClassType;
            var students  = @class?.Students?.ToList() ?? new List <Student>();

            var viewModel = new SubjectViewModel()
            {
                SubjectId     = subject.Id,
                SubjectTypeId = subject.SubjectType.Id,
                SubjectName   = subject.Name,
                ClassName     = classType?.Name ?? "None",
                Hours         = subject.SchedulePositions != null && subject.SchedulePositions.Any() ? subject.SchedulePositions.Select(x => $"{x.Time} ({x.Duration}min)") : new[] { "None" },
                Students      = students.ToList().Select(x => new StudentListItemViewModel(x)).OrderBy(x => x.Name)
            };

            return(this.View(viewModel));
        }
        public async Task <ActionResult> Create(SubjectViewModel subject, string StudyPCodeStr)
        {
            if (!ModelState.IsValid)
            {
                return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest, "FullError"));
            }

            //Valid Subjec's code
            bool exitCode = this._serviceSubject.ExitCode(subject.Code);

            if (exitCode)
            {
                return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest, "CodeExit"));
            }

            //Create Subject
            var subjectToSave = subject.GenericConvert <domain.Subject>();

            subjectToSave.StudyPlanFK = StudyPCodeStr;
            subjectToSave.Created     = DateTime.Now;
            subjectToSave.Status      = Helpers.Status.Active;
            _serviceSubject.Add(subjectToSave);

            var listOfSubjects = await _serviceSubject.GetAllSubjectByStudyPlanAsync(StudyPCodeStr);

            Message msg = new Message()
            {
                Code     = 1,
                Messages = "Ok",
                list     = listOfSubjects.GenericConvertList <vm.SubjectViewModel>()
            };


            return(Json(ToJSON <Message>(msg), JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 10
0
        public static void Save(SubjectViewModel subject)
        {
            using (SqlConnection connection = new SqlConnection(Settings.Default.SQLConnection))
            {
                connection.Open();

                string query = "";
                if (subject.Id == 0)
                {
                    query = "INSERT INTO [Subject]([Year], [Order], Name, Coefficient, [Option], ParentSubjectId)"
                            + $" VALUES({subject.Year}, {subject.Order}, '{subject.Name}', {subject.Coefficient.ToString().Replace(',', '.')},"
                            + $" {(subject.Option ? 1 : 0)}, {(subject.ParentSubject != null ? subject.ParentSubject.Id.ToString() : "NULL")})";
                }
                else
                {
                    query = $"UPDATE [Subject] SET Name = '{subject.Name}', [Order] = {subject.Order}, Coefficient = {subject.Coefficient.ToString().Replace(',', '.')},"
                            + $" [Option] = {(subject.Option ? 1 : 0)}, ParentSubjectId = {(subject.ParentSubject != null ? subject.ParentSubject.Id.ToString() : "NULL")}"
                            + $" WHERE [Subject].Id = {subject.Id} AND [Subject].[Year] = {subject.Year}";
                }
                using (SqlCommand command = new SqlCommand(query, connection))
                {
                    command.ExecuteNonQuery();
                }
            }
        }
Exemplo n.º 11
0
        public static IEnumerable <SubjectViewModel> ReadChildren(int year, IEnumerable <SubjectViewModel> parentsSubjects)
        {
            List <SubjectViewModel> subjects = new List <SubjectViewModel>(parentsSubjects);

            using (SqlConnection connection = new SqlConnection(Settings.Default.SQLConnection))
            {
                connection.Open();

                using (SqlCommand command = new SqlCommand($"SELECT * FROM [Subject] WHERE Year = {year} AND ParentSubjectId IS NOT NULL ORDER BY [Order] DESC", connection))
                {
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            SubjectViewModel parentSubject = parentsSubjects.FirstOrDefault(s => s.Id == (int)reader["ParentSubjectId"]);
                            SubjectViewModel subject       = new SubjectViewModel()
                            {
                                Year          = (int)reader["Year"],
                                Id            = (int)reader["Id"],
                                Order         = (int)reader["Order"],
                                Name          = (string)reader["Name"],
                                Coefficient   = (double)(decimal)reader["Coefficient"],
                                Option        = (bool)reader["Option"],
                                ParentSubject = parentSubject,
                            };
                            subjects.Insert(subjects.IndexOf(parentSubject) + 1, subject);
                            parentSubject.ChildrenSubjects.Add(subject);
                        }
                    }
                }
            }

            return(subjects);
        }
Exemplo n.º 12
0
        public async Task <JsonResult> AddSubjectJSON(SubjectViewModel subject)
        {
            try
            {
                var subjectDto = new SubjectDTO
                {
                    Id   = subject.Id,
                    Name = subject.Name,
                };

                if (subject.Id > 0)
                {
                    await subjectService.EditSubjectTask(subjectDto);
                }
                else
                {
                    await subjectService.AddSubjectTask(subjectDto);
                }

                return(Json(new { success = true, data = subject }, JsonRequestBehavior.AllowGet));
            }
            catch (ValidationException ex)
            {
                ModelState.AddModelError(ex.Property, ex.Message);
                return(Json(new { success = false, errorstring = ex.Message }, JsonRequestBehavior.AllowGet));
            }
        }
Exemplo n.º 13
0
        // Delete a subject.
        public async Task <ActionResult> DeleteSubject(int?id)
        {
            // Check id.
            if (!int.TryParse(id.ToString(), out int intId))
            {
                return(RedirectToAction("Index"));
            }
            // Get SubjectDTO.
            SubjectDTO source = await SubjectService.GetAsync(intId);

            if (source == null)
            {
                return(RedirectToAction("Index"));
            }
            // AutoMapper Setup.
            var config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <SubjectDTO, SubjectViewModel>()
                .ForMember("Id", opt => opt.MapFrom(obj => obj.SubjectId))
                .ForMember("Name", opt => opt.MapFrom(obj => obj.SubjectName));
            });
            IMapper          iMapper = config.CreateMapper();
            SubjectViewModel subject = iMapper.Map <SubjectDTO, SubjectViewModel>(source);

            return(PartialView("~/Views/Admin/Subject/DeleteSubject.cshtml", subject));
        }
Exemplo n.º 14
0
        public async Task <IActionResult> Delete(int id, bool?saveChangesError = false)
        {
            var subject = await this.subjectService.Delete(id);

            var teacher = await this.userService.GetUserById(subject.TeacherId);

            if (subject == null)
            {
                return(NotFound());
            }

            var subjectToDelete = new SubjectViewModel()
            {
                Id   = subject.Id,
                Name = subject.Name,
                //TeacherFullName = $"{teacher.Title} {teacher.FirstName} {teacher.LastName}",
            };

            if (saveChangesError.GetValueOrDefault())
            {
                ViewData["ErrorMessage"] =
                    "Delete failed. Try again, and if the problem persists " +
                    "see your system administrator.";
            }

            return(View(subjectToDelete));
        }
 private void ReloadSubjects()
 {
     this.homeworkFilter = this.NoFilterSubject;
     List<SubjectViewModel> subjects = timetable.Subjects.Select(p => new SubjectViewModel(p)).ToList();
     subjects.Insert(0, NoFilterSubject);
     this.Subjects = new ReadOnlyCollection<SubjectViewModel>(subjects);
 }
Exemplo n.º 16
0
        public Result <bool> InsertSubject(SubjectViewModel model)
        {
            var result = new Result <bool>();

            try
            {
                var SubjectCheck = (from s in _context.Subjects where s.Name == model.SubjectName select s).ToList();

                if (SubjectCheck.Count == 0)
                {
                    Subject Sub = new Subject();
                    Sub.Name   = model.SubjectName;
                    Sub.Status = true;
                    _context.Subjects.Add(Sub);
                    _context.SaveChanges();
                    result.Message    = "Subject Added Succcessfully";
                    result.Data       = true;
                    result.ResultType = ResultType.Success;
                }
                else
                {
                    result.Message    = "Subject name already exist";
                    result.Data       = false;
                    result.ResultType = ResultType.Duplicate;
                }
            }
            catch (Exception e)
            {
                result.Data       = false;
                result.ResultType = ResultType.Exception;
                result.Exception  = e;
                result.Message    = e.Message;
            }
            return(result);
        }
Exemplo n.º 17
0
        public static void ReadSubjectTeachers(ObservableCollection <SubjectViewModel> subjects, ObservableCollection <TeacherViewModel> teachers, int year)
        {
            using (SqlConnection connection = new SqlConnection(Settings.Default.SQLConnection))
            {
                connection.Open();

                using (SqlCommand command = new SqlCommand($"SELECT * FROM [SubjectTeacher] WHERE Year = {year}", connection))
                {
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            int idSubject            = (int)reader["IdSubject"];
                            SubjectViewModel subject = subjects.FirstOrDefault(s => s.Id == idSubject);
                            if (subject != null)
                            {
                                int idTeacher            = (int)reader["IdTeacher"];
                                TeacherViewModel teacher = teachers.FirstOrDefault(t => t.Id == idTeacher);
                                if (teacher != null)
                                {
                                    subject.Teachers.Add(teacher);
                                    teacher.Subjects.Add(subject);
                                }
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 18
0
        public IHttpActionResult Create(SubjectViewModel subject)
        {
            if (Framework.SubjectManager.SubjectIsAlreadyExist(subject.ShortName, subject.LongName))
            {
                return(BadRequest());
            }
            if (!User.IsInRole("Filler"))
            {
                return(BadRequest());
            }
            var group  = Framework.GroupManager.GetById(subject.GroupId);
            var result = group.Subjects.Any(s => (s.ShortName == subject.ShortName) || (s.LongName == subject.LongName));

            if (result)
            {
                return(BadRequest());
            }

            Subject model = Mapper.Map <Subject>(subject);

            model.Id        = Guid.NewGuid().ToString();
            model.FacultyId = user.User.FacultyId;
            Framework.SubjectManager.Create(model);
            return(Ok(model));
        }
Exemplo n.º 19
0
        public ActionResult InactiveSubject(SubjectViewModel ViewModel, int id)
        {
            checkLogin();

            ViewModel.TermList    = CP.termSelectList;
            ViewModel.SubjectList = Session["subjectSelectList"] != null?
                                    (SelectList)Session["subjectSelectList"]:
                                    SubjectService.GetSelectList(ViewModel.SelectedTerm);

            if (id > 0)
            {
                ViewModel.InactiveSubjectsList.Add(id);
            }

            ViewModel.SubjectAndSSubjects.Remove(ViewModel.SubjectAndSSubjects.Where(s => s.MainSubject.ID == id).FirstOrDefault());
            ViewModel.SubjectList        = SubjectService.GetSelectList(ViewModel.SubjectAndSSubjects);
            Session["subjectSelectList"] = ViewModel.SubjectList;

            if (ViewModel.SelectedSubject == id)
            {
                ViewModel.SelectedSubject = 0;
            }

            ModelState.Clear();
            TempData["showForm"] = true;
            return(View("Subject", ViewModel));
        }
Exemplo n.º 20
0
        public ActionResult InactiveSSubject(SubjectViewModel ViewModel, int id)
        {
            checkLogin();

            ViewModel.TermList    = CP.termSelectList;
            ViewModel.SubjectList = Session["subjectSelectList"] != null ?
                                    (SelectList)Session["subjectSelectList"] :
                                    SubjectService.GetSelectList(ViewModel.SelectedTerm);

            //deduct marks of the delete sub-subject from its main subject
            ViewModel.SubjectAndSSubjects.Where(s => s.SSubjects.Exists(ss => ss.ID == id)).First().MainSubject.FULL_MARK -= ViewModel.SubjectAndSSubjects.Where(s => s.SSubjects.Exists(ss => ss.ID == id)).First().SSubjects.Where(ssb => ssb.ID == id).First().FULL_MARK;

            if (id > 0)
            {
                ViewModel.InactiveSSubjectsList.Add(id);
            }

            ViewModel.SubjectAndSSubjects.ForEach(s => s.SSubjects.RemoveAll(ss => ss.ID == id));

            //int totalMark = 0;
            //int target_main_subject_id = ViewModel.SubjectAndSSubjects.Where(s => s.SSubjects.Exists(ss => ss.ID == id)).FirstOrDefault().MainSubject.ID;
            //ViewModel.SubjectAndSSubjects.FindAll(s => s.MainSubject.ID == target_main_subject_id).FirstOrDefault().SSubjects.ForEach(s => totalMark += s.FULL_MARK);
            //ViewModel.SubjectAndSSubjects.FindAll(s => s.MainSubject.ID == target_main_subject_id).FirstOrDefault().MainSubject.FULL_MARK = totalMark;

            ModelState.Clear();
            TempData["showForm"] = true;
            return(View("Subject", ViewModel));
        }
Exemplo n.º 21
0
        public IHttpActionResult UpdateTeacherSubject([FromBody] SubjectViewModel vm)
        {
            var subject = _unitOfWork.Subjects.UpdateSubjectTeachers(vm.SubjectId, vm.TeacherId);

            _unitOfWork.Complete();
            return(Ok(subject));
        }
Exemplo n.º 22
0
        public ActionResult SaveSubject(SubjectViewModel subject)
        {
            try
            {
                if (subject.SubjectId > 0)
                {
                    var s = _unitOfWork.SubjectRepository.GetByID(subject.SubjectId);
                    s.Name = subject.SubjectName;
                }
                else
                {
                    string userId = _accountService.GetCurrentUserId();

                    _unitOfWork.SubjectRepository.Insert(new Subject
                    {
                        ID         = -1,
                        Name       = subject.SubjectName,
                        Teacher_ID = userId
                    });
                }
                _unitOfWork.Save();

                return(new HttpStatusCodeResult(HttpStatusCode.OK));
            }
            catch (SqlException)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }
        }
Exemplo n.º 23
0
        public async Task <IActionResult> Subject(int page = 1, SortState sortOrder = SortState.NameAsc)
        {
            int pageSize = 10;

            ViewData["Message"] = "Subjects";

            ViewData["NameSort"]        = sortOrder == SortState.NameAsc ? SortState.NameDesc : SortState.NameAsc;
            ViewData["TeacherSort"]     = sortOrder == SortState.TeacherAsc ? SortState.TeacherDesc : SortState.TeacherAsc;
            ViewData["DescriptionSort"] = sortOrder == SortState.DescriptionAsc ? SortState.DescriptionDesc : SortState.DescriptionAsc;

            var Subjects = _service.GetSubjects(sortOrder);

            var count = await Subjects.CountAsync();

            var items = await Subjects.Skip((page - 1) *pageSize).Take(pageSize).ToListAsync();

            PageViewModel    pageViewModel = new PageViewModel(count, page, pageSize);
            SubjectViewModel viewModel     = new SubjectViewModel
            {
                PageViewModel = pageViewModel,
                subjects      = items
            };

            return(View(viewModel));
        }
        public void SubjectViewModel_SerialiseAndDeserialise()
        {
            var original = new SubjectViewModel(
                Guid.NewGuid(),
                "Name",
                "Content",
                new TimePeriodLabels
            {
                From = "2020",
                To   = "2022"
            },
                new List <string>
            {
                "level1"
            },
                new FileInfo {
                Created  = DateTime.Now,
                Id       = Guid.NewGuid(),
                Name     = "Name",
                Size     = "1234",
                Summary  = "Summary",
                Type     = FileType.Ancillary,
                FileName = "Filename",
                UserName = "******"
            });

            var converted = DeserializeObject <SubjectViewModel>(SerializeObject(original));

            converted.AssertDeepEqualTo(original);
        }
Exemplo n.º 25
0
        public ActionResult CreateSubject(SubjectViewModel subjectVM)
        {
            if (ModelState.IsValid)
            {
                Validate validate = new Validate();
                if (!(validate.ValidationSubjectName(subjectVM.Name)))
                {
                    ViewBag.message = "Неправильна назва предмету";
                    return(View("Report"));
                }

                SubjectDTO subjectDTO1 = subjectService.Get().Where(s => s.Name == subjectVM.Name).FirstOrDefault();

                if (subjectDTO1 != null)
                {
                    ViewBag.message = "Предмет з такою назвою вже існує";
                    return(View("Report"));
                }

                var        mapper     = new MapperConfiguration(cfg => cfg.CreateMap <SubjectViewModel, SubjectDTO>()).CreateMapper();
                SubjectDTO subjectDTO = mapper.Map <SubjectViewModel, SubjectDTO>(subjectVM);
                subjectService.AddSubject(subjectDTO);

                ViewBag.message = "Предмет додано";
                return(View("Report"));
            }
            return(View(subjectVM));
        }
Exemplo n.º 26
0
        public ActionResult Create(SubjectViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Business.SubjectBusiness subject    = new Business.SubjectBusiness();
                    Domain.Subject           newSubject = new Domain.Subject
                    {
                        Name = model.Name,
                        year = model.Year,
                    };
                    subject.Save(newSubject);
                }
                else
                {
                    foreach (var item in ModelState.AsQueryable().ToList())
                    {
                        if (item.Value.Errors.Count > 0)
                        {
                            ModelState.AddModelError("Error", item.Value.Errors.First().ErrorMessage + string.Empty);
                        }
                    }
                }

                return(RedirectToAction("Index", model));
            }
            catch (Exception ex)
            {
                //Code to save the customer data here
                ViewData["error"] = ex.Message;
                return(RedirectToAction("Index", model));
            }
        }
Exemplo n.º 27
0
        public Result <bool> UpdateSubject(SubjectViewModel model)
        {
            var result = new Result <bool>();

            try
            {
                var SubjectCheck = (from s in _context.Subjects where s.Name == model.SubjectName select s).ToList();
                if (SubjectCheck.Count == 0)
                {
                    var obj = (from s in _context.Subjects where s.Id == model.SubjectId select s).FirstOrDefault();
                    obj.Name = model.SubjectName;
                    _context.SaveChanges();
                    result.Message    = "Record updated Succcessfully";
                    result.Data       = true;
                    result.ResultType = ResultType.Success;
                }
                else
                {
                    result.Message    = "Subject name already exist";
                    result.Data       = false;
                    result.ResultType = ResultType.Duplicate;
                }
            }
            catch (Exception e)
            {
                result.Data       = false;
                result.ResultType = ResultType.Exception;
                result.Exception  = e;
                result.Message    = "Record not update";
            }
            return(result);
        }
Exemplo n.º 28
0
        public static void ReadLevelSubjects(ObservableCollection <LevelViewModel> levels, ObservableCollection <SubjectViewModel> subjects, int year)
        {
            using (SqlConnection connection = new SqlConnection(Settings.Default.SQLConnection))
            {
                connection.Open();

                using (SqlCommand command = new SqlCommand($"SELECT * FROM [LevelSubject] WHERE Year = {year}", connection))
                {
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            int            idLevel = (int)reader["IdLevel"];
                            LevelViewModel level   = levels.FirstOrDefault(l => l.Id == idLevel);
                            if (level != null)
                            {
                                int idSubject            = (int)reader["IdSubject"];
                                SubjectViewModel subject = subjects.FirstOrDefault(s => s.Id == idSubject);
                                if (subject != null)
                                {
                                    level.Subjects.Add(subject);
                                    subject.Levels.Add(level);
                                }
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 29
0
        public ActionResult SubjectsGridViewPartialUpdate(SubjectViewModel item)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    subjectRepository.UpdateSubject(item.SubjectId, item.SubjectName, item.SubjectYear, item.Observations);
                }
                catch (Exception e)
                {
                    ViewData["EditError"] = e.Message;
                }
            }
            else
            {
                ViewData["EditError"] = "Please, correct all errors.";
            }
            var model = subjectRepository.GetAllSubjects().Select(z => new SubjectViewModel()
            {
                SubjectYear  = z.SubjectYear,
                SubjectName  = z.SubjectName,
                SubjectId    = z.SubjectId,
                Observations = z.Observations
            }).ToList();

            return(PartialView("~/Views/Subject/_SubjectsGridViewPartial.cshtml", model));
        }
Exemplo n.º 30
0
        //view Subjects
        public ActionResult ViewSubject(int gradeID)
        {
            using (CyberSchoolEntities context = new CyberSchoolEntities())
            {
                IQueryable <GradeVsSubject> gradeVsSubjectList     = context.GradeVsSubject.Where(o => o.GradeId == gradeID);
                List <GradeVsSubject>       objgradeVsSubjectListt = gradeVsSubjectList.ToList();
                List <SubjectViewModel>     subjectVMList          = new List <SubjectViewModel>();

                foreach (GradeVsSubject item in objgradeVsSubjectListt)
                {
                    Subject          objSubject   = context.Subject.Where(o => o.Id == item.SubjectId && o.IsActive == 1 && o.IsDeleted == 0).FirstOrDefault();
                    SubjectViewModel objSubjectVM = new SubjectViewModel();
                    objSubjectVM.Id                 = objSubject.Id;
                    objSubjectVM.SubjectCode        = objSubject.SubjectCode;
                    objSubjectVM.SubjectDescription = objSubject.SubjectDescription;
                    objSubjectVM.SubjectName        = objSubject.SubjectName;
                    objSubjectVM.gradeId            = gradeID;

                    subjectVMList.Add(objSubjectVM);
                }
                Grade objGrade = context.Grade.Where(o => o.Id == gradeID).FirstOrDefault();
                Session["Grade"] = objGrade.Grade1;
                return(View(subjectVMList));
            }
        }
Exemplo n.º 31
0
        public ActionResult Edit(Guid id, SubjectViewModel viewModel)
        {
            var knowledgeAreaRepository = new KnowledgeAreaRepository(_context);
            var subjectRepository       = new SubjectRepository(_context);


            if (ModelState.IsValid)
            {
                try
                {
                    var knowledgeArea = knowledgeAreaRepository.GetById(id);
                    subjectRepository.Update(SubjectViewModel.ToEntity(viewModel, knowledgeArea));
                    _context.Save(_loggedUser);

                    TempData["MessageType"]  = "success";
                    TempData["MessageTitle"] = Resource.ContentManagementToastrTitle;
                    TempData["Message"]      = "Subject updated";
                    return(Redirect(TempData["BackURL"].ToString()));
                }
                catch (Exception ex)
                {
                    TempData["MessageType"]  = "error";
                    TempData["MessageTitle"] = Resource.ContentManagementToastrTitle;
                    TempData["Message"]      = ex.Message;
                }
            }

            var knowledgeAreas = knowledgeAreaRepository.ListActiveKnowledgeAreas();

            ViewBag.KnowledgeAreas = new SelectList(knowledgeAreas, "Id", "Name");
            return(View(viewModel));
        }
        public void AddSubject(SubjectViewModel subject)
        {
            if(!_groupLookup.ContainsKey(subject.GroupId.ToLower()))
                _groupLookup[subject.GroupId.ToLower()] = ComputeGroup.GroupNone;

            foreach (var graph in subject.Graphs)
            {
                if (!_dataTypeLookup.ContainsKey(graph.Key))
                    _dataTypeLookup[graph.Key] = false;
            }

            _all.Add(subject);
        }
Exemplo n.º 33
0
        public override void Execute(object parameter)
        {
            var subject = parameter as SubjectViewModel;

            if (subject == null)
                subject = new SubjectViewModel(App.Timetable.AddSubject(App.Timetable.GetSubjectName(Strings.SubjectNewFormat)));

            int index = subject.GetIndex(App.Timetable.Subjects);
            if (index != -1)
            {
                this.NavigationFrame.Navigate(typeof(EditSubjectPage), index);
            }
            else if (System.Diagnostics.Debugger.IsAttached)
                System.Diagnostics.Debugger.Break();

        }
Exemplo n.º 34
0
    public async Task LoadSubjectData(SubjectViewModel subject, int vertexLimit)
		{
			if (_adjBySubjectId.ContainsKey(subject.SubjectId))
			{
				var adjs = _adjBySubjectId[subject.SubjectId];

				foreach(var adj in adjs)
				{
					// Read in all the lines
					var lines = await Windows.Storage.FileIO.ReadLinesAsync(adj.File);

					//subjectGraph.AddGraphLines(lines);

					for (int lineIdx = 0; lineIdx < lines.Count; lineIdx++)
					{
						var line = lines[lineIdx];
						var columns = line.TrimEnd().Split('\t');

						for (int colIdx = 0; colIdx < columns.Length; colIdx++)
						{
							if (lineIdx < vertexLimit && colIdx < vertexLimit)
							{
								var val = Double.Parse(columns[colIdx]);

								if (DoWeCare(lineIdx, colIdx) && (adj.DataType == "fMRI-mo") && (colIdx > lineIdx))
								{
									var str = string.Format("{0}, {1:00}{2:00}, {3}", subject.SubjectId, lineIdx, colIdx, val);

									Debug.WriteLine(str);
								}

								// Only load the upper triangle
								if (colIdx > lineIdx)
									adj.Graph.AddEdge(lineIdx, colIdx, Math.Abs(val));
							}
						}
					}

					subject.AddGraph(adj.DataType, adj.Graph);
				}
			}
		}
Exemplo n.º 35
0
        public static async Task<List<SubjectViewModel>> LoadSubjectFile(StorageFile file)
		{
			// Read in all the lines
			var lines = await Windows.Storage.FileIO.ReadLinesAsync(file);

			if (lines.Count == 0)
				throw new Exception("Subject file empty");

			// Pull out the headers
			char[] splitChars = new char[] { '\t' };
			var headers = lines[0].Split(splitChars);
		
			// TODO: Make error msg for missing cols
			// Find our subject id col
			var subIdIdx = -1;
			for (var i = 0; i < headers.Length; i++)
			{
				if (headers[i] == "subjectId")
					subIdIdx = i;
			}

			// This will be our lookup by subject id
			var subjects = new Dictionary<string, SubjectViewModel>();

			// Loop through lines of subject file
			foreach (var line in lines.Skip(1))
			{
				// Load up the properties
				var fields = line.Split(splitChars);

				// Pull out the subject id
				var subId = fields[subIdIdx];

				// Create subject if they do not exist
				if (!subjects.ContainsKey(subId))
					subjects[subId] = new SubjectViewModel(subId);

				// Get the subject
				var subject = subjects[subId];

				// Loop through fields for this subject
				for (int i = 0; i < fields.Length; i++)
				{
					var propName = headers[i];
					var propVal = fields[i];

					switch (propName)
					{
						case "groupId":
							subject.GroupId = propVal.ToUpper();
							break;
						case "sex":
							subject.Sex = propVal;
							break;
						case "age":
							subject.Age = propVal;
							break;
						case "eventId":
							subject.AddEventId(propVal);
							break;
						default:
							{
								double value;								
								bool isNumber = Double.TryParse(fields[i], out value);
								
								if(isNumber)
									subject.AddAttribute(headers[i], value);
							}
							break;
					}	
				}
			}

			return subjects.Values.ToList();
		}