Ejemplo n.º 1
0
 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));
 }
Ejemplo n.º 2
0
        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));
        }
Ejemplo n.º 3
0
        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);
                }
            }
        }
Ejemplo n.º 4
0
        public ActionResult Create()
        {
            Sidebar();
            RoleGroupViewModel model = new RoleGroupViewModel();

            model.RolesList.List.AddRange(GetSelectRoleView());
            return(View(model));
        }
Ejemplo n.º 5
0
        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));
        }
Ejemplo n.º 6
0
        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)));
     }
 }
Ejemplo n.º 8
0
 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));
 }
Ejemplo n.º 9
0
        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)));
     }
 }