public ActionResult CreateNew(GroupModelDetail model) { if (!model.Roles.Any(n => n.IsCheck == true)) { AlertWarning("Hãy chọn các quyền mà nhóm người dùng này được phép hoạt động."); return(View(model)); } if (ModelState.IsValid) { _groupService.BeginTran(); try { var check = _groupService.CheckContain(model.Group.Name); if (check) { AlertWarning(InfoString.Instance.SetContainString("Tên nhóm")); return(View(model)); } var group = new Group(); group.Name = model.Group.Name; group.Descreption = model.Group.Descreption; group.CreateBy = CurrentInstance.Instance.CurrentUser.UserName; group.CreateDate = DateTime.Now; group.Status = model.Group.Status; _groupService.CreateNew(group); _groupService.CommitChanges(); //add roles to group foreach (var role in model.Roles) { if (role.IsCheck) { _roleService.AddRoleToGroup(role.Id, group.Id); } } _roleService.CommitChanges(); _groupService.CommitTran(); } catch (Exception ex) { LogError(ex); _groupService.RollbackTran(); AlertError(InfoString.ERROR_SYSTEM); } AlertSuccess(InfoString.CREATE_SUCCESSFULL); return(RedirectToAction("Index")); } AlertWarning(InfoString.INVALID_INFO); return(View(model)); }