public IActionResult Create() { var viewModel = new ChildInputModel(); viewModel.GroupsItems = this.groupsService.GetAllAsKeyValuePairs(); viewModel.SchoolsItems = this.schoolsService.GetAllAsKeyValuePairs(); return(this.View(viewModel)); }
public async Task <IActionResult> Edit(int id, ChildInputModel input) { var currentChild = this.childrenRepository.AllAsNoTracking() .FirstOrDefault(x => x.Id == id); var groupId = input.GroupName == null ? currentChild.NurseryGroupId : int.Parse(input.GroupName); var child = new Child { Id = input.Id, FirstName = input.FirstName, MiddleName = input.MiddleName, LastName = input.LastName, Address = input.Address, IsDeleted = currentChild.IsDeleted, DeletedOn = currentChild.DeletedOn, CreatedOn = currentChild.CreatedOn, ModifiedOn = input.ModifiedOn, NurseryGroupId = groupId, DateOfBirth = currentChild.DateOfBirth, EGN = currentChild.EGN, Gender = currentChild.Gender, }; if (id != child.Id) { return(this.NotFound()); } if (this.ModelState.IsValid) { try { this.childrenRepository.Update(child); await this.childrenRepository.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!this.ChildExists(child.Id)) { return(this.NotFound()); } else { throw; } } return(this.RedirectToAction(nameof(this.Index))); } return(this.View(child)); }
public async Task <IActionResult> Create(ChildInputModel input) { if (!this.ModelState.IsValid) { return(this.View(input)); } await this.childrenService.AddAsync(input); return(this.RedirectToAction(nameof(this.Index))); }
public async Task AddAsync(ChildInputModel input) { var child = new Child { FirstName = input.FirstName, MiddleName = input.MiddleName, LastName = input.LastName, Gender = (Gender)input.Gender, DateOfBirth = input.DateOfBirth, EGN = input.EGN, Address = input.Address, NurseryGroupId = int.Parse(input.GroupName), }; await this.childrenRepository.AddAsync(child); await this.childrenRepository.SaveChangesAsync(); }