コード例 #1
0
        private TestResultLimitViewModel GetLimitViewModelWithTaskGroupList()
        {
            var testTaskGroupData = _context.TaskGroups.Select(x => new SelectListItem()
            {
                Value = x.TaskGroupName,
                Text  = x.TaskGroupName.ToString()
            }).ToList();

            var viewModel = new TestResultLimitViewModel()
            {
                TaskGroups = testTaskGroupData
            };

            for (int i = 0; i < 10; i++)
            {
                viewModel.MaxValue.Add(0.5);
            }

            var academicYears = _context.AcademicYears.OrderByDescending(x => x.AcademicYearID).Select(i => new SelectListItem()
            {
                Value = i.AcademicYearID.ToString(),
                Text  = i.AcademicYearStart.ToString("yyyy-MM-dd") + "  ||  " + i.AcademicYearEnd.ToString("yyyy-MM-dd")
            }).ToList();

            viewModel.AcademicYears = academicYears;

            return(viewModel);
        }
コード例 #2
0
        public IActionResult ResultLimitsCreate(TestResultLimitViewModel resultLimitModel)
        {
            bool isFirstResultLimitForAcademicYear = _context.TaskResultLimits.Any(x => x.AcademicYearID == resultLimitModel.AcademicYearID);

            if (isFirstResultLimitForAcademicYear)
            {
                var maxValueSum       = _context.TaskResultLimits.Where(x => x.AcademicYearID == resultLimitModel.AcademicYearID).Take(10).Sum(x => x.MaxValue);
                var resultMaxValueSum = resultLimitModel.MaxValue.Sum();
                if (maxValueSum != resultMaxValueSum)
                {
                    ModelState.AddModelError("", "Maksimalių balų limitas nesutampa su praeitu limitu");
                    TestResultLimitViewModel model = GetLimitViewModelWithTaskGroupList();
                    model.MaxValue = resultLimitModel.MaxValue;
                    return(View(model));
                }
            }

            DateTime timeStamp = DateTime.Now;

            for (int i = 0; i < resultLimitModel.MaxValue.Count; i++)
            {
                TaskGroup taskGroup = _context.TaskGroups.FirstOrDefault(t => t.TaskGroupName == resultLimitModel.TaskGroupName[i]);

                var limitTask = new TaskResultLimit();

                limitTask.Date           = timeStamp;
                limitTask.Position       = i + 1;
                limitTask.MaxValue       = resultLimitModel.MaxValue[i];
                limitTask.TaskGroup      = taskGroup;
                limitTask.AcademicYearID = resultLimitModel.AcademicYearID;

                _context.TaskResultLimits.Add(limitTask);
                _context.SaveChanges();
            }
            return(RedirectToAction("ResultLimitsView"));
        }
コード例 #3
0
        public IActionResult ResultLimitsCreate()
        {
            TestResultLimitViewModel model = GetLimitViewModelWithTaskGroupList();

            return(View(model));
        }