示例#1
0
        public async Task <IServiceResult <FacultyViewModel> > Update(
            int id,
            FacultyRegistration newData)
        {
            var faculty = _context.Faculties.FirstOrDefault(f => f.Id == id);

            if (faculty == null)
            {
                return(ServiceResult <FacultyViewModel> .Error(
                           $"Faculty with id {id} does not exist"));
            }

            if (FacultyNameTaken(faculty.Id, newData.Name))
            {
                return(ServiceResult <FacultyViewModel> .Error(
                           $"Faculty name {newData.Name} already exists"
                           ));
            }

            faculty = _mapper.Map(newData, faculty);

            _context.Faculties.Update(faculty);
            await _context.SaveChangesAsync();

            var facultyViewModel = _mapper.Map <FacultyViewModel>(faculty);

            return(ServiceResult <FacultyViewModel> .Success(facultyViewModel));
        }
示例#2
0
        public async Task <IActionResult> Update(
            int id,
            [FromBody] FacultyRegistration registration)
        {
            //if(id == Guid.Empty)
            //{
            //    return NotFound();
            //}

            if (registration == null)
            {
                return(BadRequest("Faculty registration not given"));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest("The given faculty registration is invalid"));
            }

            var result = await _facultyUpdater.Update(id, registration);

            if (result.Successful())
            {
                return(Ok(result.Body()));
            }
            return(BadRequest(result.GetAggregatedErrors()));
        }
示例#3
0
        public async Task<IServiceResult<FacultyViewModel>> Create(FacultyRegistration registration)
        {
            if(FacultyExists(registration.Name))
            {
                return ServiceResult<FacultyViewModel>.Error(
                    $"Faculty name {registration.Name} already exists"
                );
            }

            var faculty = _mapper.Map<Faculty>(registration);

            await _context.Faculties.AddAsync(faculty);
            await _context.SaveChangesAsync();

            var facultyViewModel = _mapper.Map<FacultyViewModel>(faculty);
            return ServiceResult<FacultyViewModel>.Success(facultyViewModel);
        }
示例#4
0
        public async Task <IActionResult> Create(
            [FromBody] FacultyRegistration registration)
        {
            if (registration == null)
            {
                return(BadRequest("Faculty registration not given"));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest("The given faculty registration is invalid"));
            }

            var result = await _facultyCreator.Create(registration);

            if (result.Successful())
            {
                return(Ok(result.Body()));
            }
            return(BadRequest(result.GetAggregatedErrors()));
        }