public ActionResult Edit(RoleGroupViewModel model) { if (ModelState.IsValid) { RoleGroup rg = new RoleGroup { ID = model.ID, Name = model.Name, Roles = model.SelectedRoles }; db.Entry(rg).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); var users = db.Users.Where(s => s.RoleGroupID == model.ID).ToList(); var roles = rg.Roles.Split(',').Where(s => !string.IsNullOrWhiteSpace(s)).ToArray(); foreach (var user in users) { user.Roles.Clear(); } db.SaveChanges(); foreach (var user in users) { UserManager.AddToRoles(user.Id, roles); } db.SaveChanges(); Sidebar(); return(RedirectToAction("Index")); } model.RolesList.List.AddRange(GetSelectRoleView(model.SelectedRoles)); return(View(model)); }
public ActionResult Edit(RoleGroupViewModel model) { var rg = db.RoleGroups.FirstOrDefault(s => s.ID == model.ID); //防止企业用户串号修改 if (AccontData.UserType == UserType.Enterprise && rg.EnterpriseID != AccontData.EnterpriseID) { return(this.ToError("错误", "没有权限修改当前角色", Url.Action("Index"))); } if (ModelState.IsValid) { rg.Name = model.Name; rg.Roles = model.SelectedRoles; db.SaveChanges(); var users = db.Users.Where(s => s.RoleGroupID == model.ID).ToList(); var roles = rg.Roles.Split(',').Where(s => !string.IsNullOrWhiteSpace(s)).ToArray(); foreach (var user in users) { user.Roles.Clear(); } db.SaveChanges(); foreach (var user in users) { UserManager.AddToRoles(user.Id, roles); } db.SaveChanges(); Sidebar(); return(RedirectToAction("Index")); } model.RolesList.List.AddRange(GetSelectRoleView(model.SelectedRoles)); return(View(model)); }
public async Task <IEnumerable <dynamic> > SaveOrUpdate([FromBody] RoleGroupViewModel rvm) { string sql = "dbo.EAppSaveRoleGroup"; using (var conn = util.MasterCon()) { try { return(await(conn.QueryAsync <dynamic>(sql, new { rvm.RoleGroupId, rvm.LanguageId, rvm.RoleGroupName, rvm.Descriptions, rvm.Active, rvm.UserId }, commandType: CommandType.StoredProcedure))); } catch (SqlException sqlException) { if (sqlException.Number == 2601 || sqlException.Number == 2627) { throw new CustomException("Duplicate", "RoleGroup Name already Exists.", "Error", true, sqlException); } else { throw new CustomException("Due to some Technical Reason, Unable to Save or Update", "Error", true, sqlException); } } catch (Exception ex) { throw new CustomException("Unable to Save Or Update, Please Contact Support!!!", "Error", true, ex); } } }
public ActionResult Create() { Sidebar(); RoleGroupViewModel model = new RoleGroupViewModel(); model.RolesList.List.AddRange(GetSelectRoleView()); return(View(model)); }
public ActionResult Delete(int id) { Sidebar(); RoleGroupViewModel model = new RoleGroupViewModel(); var rg = db.RoleGroups.FirstOrDefault(s => s.ID == id); model.ID = rg.ID; model.Name = rg.Name; model.RolesList.List.AddRange(GetSelectRoleView(rg.Roles)); return(View(model)); }
public async Task <RoleGroupViewModel> GetRoleGroupViewModel() { var groups = await GetGroupsAsync(); var roles = await _groupService.GetRolesAsync(); var model = new RoleGroupViewModel { Roles = roles.Select(role => role.ToRoleViewModel()).ToList(), Groups = groups }; return(model); }
public async Task <IActionResult> Update([FromBody] RoleGroupViewModel rgvm) { try { return(Ok(await sRepo.SaveOrUpdate(rgvm))); } catch (CustomException cex) { var returnObj = new EmaintenanceMessage(cex.Message, cex.Type, cex.IsException, cex.Exception?.ToString()); return(StatusCode(StatusCodes.Status500InternalServerError, returnObj)); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, new EmaintenanceMessage(ex.Message))); } }
public ActionResult Create(RoleGroupViewModel model) { if (ModelState.IsValid) { RoleGroup rg = new RoleGroup { Name = model.Name, Roles = model.SelectedRoles }; db.RoleGroups.Add(rg); db.SaveChanges(); return(RedirectToAction("Index")); } Sidebar(); model.RolesList.List.AddRange(GetSelectRoleView(model.SelectedRoles)); return(View(model)); }
public ActionResult Delete(int id) { Sidebar(); RoleGroupViewModel model = new RoleGroupViewModel(); var rg = db.RoleGroups.FirstOrDefault(s => s.ID == id); //防止企业用户串号修改 if (AccontData.UserType == UserType.Enterprise && rg.EnterpriseID != AccontData.EnterpriseID) { return(this.ToError("错误", "没有权限修改当前角色", Url.Action("Index"))); } model.ID = rg.ID; model.Name = rg.Name; model.RolesList.List.AddRange(GetSelectRoleView(rg.Roles)); return(View(model)); }
public async Task <IActionResult> Create([FromBody] RoleGroupViewModel rgvm) { try { CurrentUser cUser = new CurrentUser(HttpContext, _configuration); rgvm.UserId = cUser.UserId; rgvm.RoleGroupId = 0; rgvm.Active = "Y"; return(Ok(await sRepo.SaveOrUpdate(rgvm))); } catch (CustomException cex) { var returnObj = new EmaintenanceMessage(cex.Message, cex.Type, cex.IsException, cex.Exception?.ToString()); return(StatusCode(StatusCodes.Status500InternalServerError, returnObj)); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, new EmaintenanceMessage(ex.Message))); } }