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); }
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)); }
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()); }
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()); }