public ActionResult Edit(EditUserAuthorizationViewModel model) { if (ModelState.IsValid) { var originPageMap = _userAuthorizationBll.GetById(model.RoleAuthorizationDto.Brole); if (originPageMap.PageMaps != null) { var pageMaps = originPageMap.PageMaps; var listPageMaps = pageMaps.Where(x => x.Page.Id != Convert.ToInt32(Enums.MenuList.LOGIN)).ToList(); foreach (var pageMap in listPageMaps) { _pageBll.DeletePageMap(pageMap.Id); } } var listNewPages = new List <PageMapDto>(); if (model.Pages != null) { foreach (var page in model.Pages) { if (page.IsChecked) { var pageMapDto = new PageMapDto(); pageMapDto.Page = page; pageMapDto.Brole = model.RoleAuthorizationDto.Brole; listNewPages.Add(pageMapDto); } } } SetChanges(originPageMap, listNewPages); foreach (var listNewPage in listNewPages) { var pageMapToSave = new PAGE_MAP(); pageMapToSave.PAGE_ID = listNewPage.Page.Id; pageMapToSave.BROLE = listNewPage.Brole; _pageBll.Save(pageMapToSave); } } AddMessageInfo(Constans.SubmitMessage.Updated, Enums.MessageInfoType.Success); return(RedirectToAction("Index")); }
public void Save(PAGE_MAP pageMap) { _pageMapRepository.InsertOrUpdate(pageMap); _uow.SaveChanges(); }