예제 #1
0
        public IActionResult Edit(Guid id, [Bind("Id,StudentId,Weight", Prefix = "Data")] StudentWeightDto studentWeight)
        {
            ResultHandler <StudentWeightDto> resultHandler = new ResultHandler <StudentWeightDto>();

            if (id != studentWeight.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    resultHandler = _studentWeightsService.Update(studentWeight);
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!StudentWeightExists(studentWeight.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index), new { studentId = studentWeight.StudentId }));
            }
            ViewData["StudentId"] = new SelectList(_studentService.GetList().Data, "Id", "LastName", studentWeight.StudentId);

            ResultViewModel <StudentWeightDto> resultViewModel =
                AutoMapper.Mapper.Map <ResultHandler <StudentWeightDto>, ResultViewModel <StudentWeightDto> >(resultHandler);

            return(View(resultViewModel));
        }
예제 #2
0
        public ResultHandler <StudentWeightDto> Create(StudentWeightDto studentWeightDto)
        {
            ResultHandler <StudentWeightDto> resultHandler = new ResultHandler <StudentWeightDto>();

            try
            {
                StudentWeight studentWeight = _studentWeight.Create(_studentRepository.FindOne(studentWeightDto.StudentId), studentWeightDto.Weight);
                _studentWeightRepository.Create(studentWeight);
                resultHandler.Data = AutoMapper.Mapper.Map <StudentWeight, StudentWeightDto>(studentWeight);
            }
            catch (Exception ex)
            {
                resultHandler.Errors.Add(ex.Message);
            }

            return(resultHandler);
        }
예제 #3
0
        public IActionResult Create([Bind("Id,StudentId,Weight", Prefix = "Data")] StudentWeightDto studentWeight)
        {
            ResultHandler <StudentWeightDto> resultHandler = new ResultHandler <StudentWeightDto>();

            if (ModelState.IsValid)
            {
                resultHandler = _studentWeightsService.Create(studentWeight);
                if (!resultHandler.HasErrors)
                {
                    return(RedirectToAction(nameof(Index), new { studentId = studentWeight.StudentId }));
                }
            }

            ViewData["StudentId"] = new SelectList(_studentService.GetList().Data, "Id", "LastName", studentWeight.StudentId);
            ResultViewModel <StudentWeightDto> resultViewModel =
                AutoMapper.Mapper.Map <ResultHandler <StudentWeightDto>, ResultViewModel <StudentWeightDto> >(resultHandler);

            return(View(resultViewModel));
        }
예제 #4
0
        public ResultHandler <StudentWeightDto> Update(StudentWeightDto studentWeightDto)
        {
            ResultHandler <StudentWeightDto> resultHandler = new ResultHandler <StudentWeightDto>();

            try
            {
                if (studentWeightDto.Id == Guid.Empty)
                {
                    resultHandler.Errors.Add("Student weight id can't be empty");
                    return(resultHandler);
                }

                StudentWeight studentWeight = _studentWeightRepository.FindOne(studentWeightDto.Id);
                Student       student       = _studentRepository.FindOne(studentWeightDto.StudentId);

                if (studentWeight == null)
                {
                    resultHandler.Errors.Add("No such student weight exists");
                    return(resultHandler);
                }

                if (student == null)
                {
                    resultHandler.Errors.Add("No such student exists");
                    return(resultHandler);
                }

                studentWeight = _studentWeight.Update(studentWeight, student, studentWeightDto.Weight);
                _studentWeightRepository.Update(studentWeight);
                resultHandler.Data = AutoMapper.Mapper.Map <StudentWeight, StudentWeightDto>(studentWeight);
            }
            catch (Exception ex)
            {
                resultHandler.Errors.Add(ex.Message);
            }

            return(resultHandler);
        }