public async Task <IActionResult> Create(SY_Role_Submit model, bool SaveAndCountinue = false) { model.Data_Tree = await _SY_MenuFunctionService.GetAllActive(); if (!ModelState.IsValid) { return(View(model)); } var obj = new SY_Role() { RoleName = model.RoleName, Description = model.Description, Active = model.Active, Id = Guid.NewGuid().ToString() }; if (!string.IsNullOrWhiteSpace(model.MenuFunctionIds)) { var ks = model.MenuFunctionIds.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); model.MenuFunctions = new List <string>(); foreach (var item in ks) { model.MenuFunctions.Add(item); } foreach (var item in model.MenuFunctions) { var t = new SY_Map_Role_Menu() { Id = Guid.NewGuid().ToString(), MenuId = item, RoleId = obj.Id }; await _SY_MenuFunctionService.CreateMap(t); } } //Thực hiện thêm mới var result = await _SY_RoleService.Create(obj); if (result.isSuccess) { if (SaveAndCountinue) { TempData["Success"] = "Thêm mới thành công"; return(RedirectToAction("Create")); } return(RedirectToAction("Index")); } else { ModelState.AddModelError("", result.Message); return(View(obj)); } }
public async Task <IActionResult> Update(SY_Role_Submit model) { model.Data_Tree = await _SY_MenuFunctionService.GetAllActive(); if (!ModelState.IsValid) { return(View(model)); } var oldObj = await _SY_RoleService.GetById(model.Id); if (oldObj == null) { ModelState.AddModelError("", "Bản ghi không tồn tại"); return(View(model)); } oldObj.Active = model.Active; oldObj.Description = model.Description; oldObj.RoleName = model.RoleName; //Cập nhật lại menu await _SY_MenuFunctionService.DeleteMap(oldObj.Id); if (!string.IsNullOrWhiteSpace(model.MenuFunctionIds)) { var ks = model.MenuFunctionIds.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries); model.MenuFunctions = new List <string>(); foreach (var item in ks) { model.MenuFunctions.Add(item); } foreach (var item in model.MenuFunctions) { var t = new SY_Map_Role_Menu() { Id = Guid.NewGuid().ToString(), MenuId = item, RoleId = oldObj.Id }; await _SY_MenuFunctionService.CreateMap(t); } } var result = await _SY_RoleService.Update(oldObj); if (result.isSuccess) { return(RedirectToAction("Index")); } else { ModelState.AddModelError("", result.Message); return(View(model)); } }
public async Task <MessageReport> CreateMap(SY_Map_Role_Menu model) { return(await _SY_Map_Role_MenuRepository.Add(model)); }