private void InitDetailsViewModel(PigeonDetailsViewModel viewModel, PigeonDetails details) { InitBaseDetailViewModel(details.Detail, viewModel.Detail); InitBaseDetailEntityStateChange(viewModel.Detail); ViewData[Mvc.ViewData.Controller] = Mvc.Controller.Pigeon.Name; viewModel.Detail.Sex = GetSexName(viewModel.Detail.SexId); }
public ActionResult Edit(PigeonDetailsViewModel viewModel) { int year; if (!int.TryParse(viewModel.Detail.Year, out year)) { AddModelError(viewModel, m => m.Detail.Year, StyleContext.GetTranslation(Dom.Translation.Pigeon.IncorrectYear)); } else { if (year < DateTime.Now.AddYears(-25).Year || year > DateTime.Now.Year) { AddModelError(viewModel, m => m.Detail.Year, StyleContext.GetTranslation(Dom.Translation.Pigeon.IncorrectYear)); } } if (ModelState.IsValid) { Pigeon pigeon = _pigeonRepository.Get <Pigeon>(viewModel.Detail.Id); pigeon.Year = year; pigeon.Code = viewModel.Detail.Code; pigeon.Number = viewModel.Detail.Number; pigeon.SexId = viewModel.Detail.SexId; _pigeonRepository.UnitOfWork.SaveChanges(); return(RedirectToAction(Mvc.Controller.Pigeon.Details, Mvc.Controller.Pigeon.Name, new { id = viewModel.Detail.Id })); } viewModel.Detail.SexItems = InitSexSelectListItems(); return(View(Mvc.View.Pigeon.Edit, viewModel)); }
public ActionResult Edit(int id) { PigeonDetails details = _pigeonRepository.GetPigeonDetails(UserContext.User.Id, UserContext.User.OrganizationId, id); if (details.Detail == null) { return(NotFoundResult()); } PigeonDetailsViewModel viewModel = Mapper.Map <PigeonDetailsViewModel>(details); viewModel.Detail.SexItems = InitSexSelectListItems(); return(View(Mvc.View.Pigeon.Edit, viewModel)); }
public ActionResult Details(int id) { PigeonDetails details = _pigeonRepository.GetPigeonDetails(UserContext.User.Id, UserContext.User.OrganizationId, id); if (details.Detail == null) { return(NotFoundResult()); } PigeonDetailsViewModel viewModel = Mapper.Map <PigeonDetailsViewModel>(details); InitDetailsViewModel(viewModel, details); return(View(Mvc.View.Pigeon.Details, viewModel)); }