public async Task <College> Update(CollegeDto CollegeDto)
        {
            College College = await _CollegeRepository.GetAllById(CollegeDto.CollegeId);

            _mapper.Map(CollegeDto, College);

            College.Validate(College, new CollegeValidator());
            _notifications.AddNotifications(College.ValidationResult);

            foreach (var item in College.Address)
            {
                item.Validate(item, new AddressValidator());
                _notifications.AddNotifications(item.ValidationResult);
            }

            foreach (var item in College.Phone)
            {
                item.Validate(item, new PhoneValidator());
                _notifications.AddNotifications(item.ValidationResult);
            }

            if (!_notifications.HasNotifications)
            {
                await Put(College);
            }

            return(College);
        }
Example #2
0
        public async Task <ActionResult <CollegeDto> > CreateCollege([FromBody] CollegeDto college)
        {
            if (college == null)
            {
                return(BadRequest());
            }

            if (college.Description == college.Name)
            {
                ModelState.AddModelError("Description", "The provided description should be different from the name.");
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var finalCollege = _mapper.Map <Colleges>(college);

            await _studyRouteRepository.AddCollege(finalCollege);


            if (!await _studyRouteRepository.Save())
            {
                return(StatusCode(500, "A problem happened while handling your request."));
            }

            var createdProgramReturn = _mapper.Map <CollegeDto>(finalCollege);

            return(CreatedAtAction("GetCollegeById", new { id = createdProgramReturn.Id }, createdProgramReturn));
        }
Example #3
0
        public async Task <ActionResult> CreateCollege([FromBody] CollegeDto dto)
        {
            var college = await _collegeRepository.LoadEntitiesAsIQueryable(x => x.CollegeId == dto.CollegeId || x.CollegeName == dto.CollegeName)
                          .FirstOrDefaultAsync();

            if (college != null)
            {
                return(BadRequest());
            }
            college = _mapper.Map <College>(dto);
            var collegeId = Convert.ToInt32(DateTime.Now.ToString("yyyyHHss"));

            college.CollegeId = collegeId;
            await _collegeRepository.AddEntityAsync(college);

            return(NoContent());
        }
Example #4
0
        public async Task <ActionResult> Update(int collegeId, [FromBody] CollegeDto dto)
        {
            if (collegeId != dto.CollegeId)
            {
                return(BadRequest());
            }
            var college = await _collegeRepository.LoadEntitiesAsIQueryable(x => x.CollegeId == dto.CollegeId).AsNoTracking().FirstOrDefaultAsync();

            if (college == null)
            {
                return(BadRequest());
            }
            college = _mapper.Map <College>(dto);
            await _collegeRepository.EditEntityAsync(college);

            return(NoContent());
        }
        public ActionResult CollegeDetails(int id)
        {
            CollegeInfo        info  = _repository.Get(id);
            IEnumerable <Town> towns = _townRepository.GetAllList();
            CollegeDto         dto   = (info == null)
                ? new CollegeDto()
                : new CollegeDto(info, towns);
            CollegeEditViewModel viewModel = new CollegeEditViewModel
            {
                CollegeDto = dto
            };

            viewModel.Initialize(towns, new Town
            {
                CityName     = dto.CityName,
                DistrictName = dto.DistrictName,
                TownName     = dto.TownName
            });
            return(View(viewModel));
        }
        public async Task <IActionResult> Put([FromBody] CollegeDto CollegeDto)
        {
            _ = await _CollegeService.Update(CollegeDto);

            return(Response(CollegeDto.CollegeId));
        }
        public async Task <ActionResult <CollegeDto> > GetCollegeAsync([FromRoute] Guid collegeId)
        {
            var college = await _collegeRepository.GetByIdAsync(collegeId);

            return(CollegeDto.From(college));
        }
        public async Task <ActionResult <List <CollegeDto> > > GetAllCollegesAsync()
        {
            var data = await _collegeRepository.ListAllAsync();

            return(data.Select(o => CollegeDto.From(o)).OrderBy(o => o.CollegeName).ToList());
        }