Пример #1
0
        //  [Authorize(policy: PoliciesName.IsSystemAdminClaims)]
        public IActionResult AssignPermissionToUser([FromBody] UserPermissionViewModel model)
        {
            if (ModelState.IsValid)
            {
                /*
                 * get user information using the user_email
                 */
                var user = _userManager.FindByNameAsync(model.UserName).Result;
                if (user != null)
                {
                    var role = _roleManager.FindByNameAsync(model.PermissionName).Result;
                    if (role != null)
                    {
                        var removepreviousrole = _userManager.RemoveFromRoleAsync(user, role.Name).Result;
                        var result             = _userManager.AddToRoleAsync(user, role.Name).Result;
                        if (result.Succeeded)
                        {
                            return(Ok(result.Succeeded));
                        }
                    }
                }
            }

            return(BadRequest(ModelState));
        }
        public ActionResult AddPermission(UserPermissionViewModel model)
        {

            if (model.RoleId > 0)
            {
                var existingPermissions = _dbContext.tbl_Userclaim.Where(w => w.RoleId == model.RoleId).ToList();
                _dbContext.tbl_Userclaim.RemoveRange(existingPermissions);
                _dbContext.SaveChanges();

                var newPermissions = model.Menus.Where(w => w.Ischecked).Select(s => new Userclaim
                {
                    MenuId = s.MenuId,
                    CreatedBy = UserId,
                    CreatedDate = DateTime.Now,
                    IsActive = true,
                    RoleId = model.RoleId
                }).ToList();

                _dbContext.tbl_Userclaim.AddRange(newPermissions);
                _dbContext.SaveChanges();

                ViewBag.SuccessMessage = "Detail added successfully";

            }
            return View(model);
        }
Пример #3
0
        public async Task <IActionResult> GetPermissionByUser(string userId)
        {
            var userPermissions = _context.Set <UserPermission>().Where(x => x.UserId == userId).ToList();

            var allPermission = _context.Set <Permission>().ToList();

            List <UserPermissionViewModel> data = new List <UserPermissionViewModel>();

            foreach (var permission in allPermission)
            {
                var detail = new UserPermissionViewModel()
                {
                    UserId         = userId,
                    PermissionId   = permission.Id,
                    PermissionName = permission.Name
                };

                var userPermission = userPermissions.FirstOrDefault(x => x.PermissionId == permission.Id);

                if (userPermission != null)
                {
                    detail.Enabled = userPermission.Enabled;
                }

                data.Add(detail);
            }

            return(Ok(data));
        }
Пример #4
0
        /// <summary>
        /// Delete an entity.
        /// </summary>
        /// <param name="model"></param>
        public void Delete(UserPermissionViewModel model)
        {
            var entity = model.ToEntity();

            this._UserPermissionsRepository.Delete(entity);

            #region Commit Changes
            this._unitOfWork.Commit();
            #endregion
        }
Пример #5
0
        public async Task <Response <List <EmployeeResponse> > > GetAllEmployeeAsync(int companyId)
        {
            var employees = await _applicationDbContext.Set <ApplicationUser>().Where(x => x.CompanyId == companyId)
                            .ToListAsync();

            var userPermissions = _applicationDbContext.Set <UserPermission>().Where(x => x.User.CompanyId == companyId).ToList();

            var allPermission = _applicationDbContext.Set <Permission>().ToList();



            var res = new List <EmployeeResponse>();

            foreach (var employee in employees)
            {
                var employeeDetail = new EmployeeResponse
                {
                    UserName  = employee.UserName,
                    Id        = employee.Id,
                    FirstName = employee.FirstName,
                    LastName  = employee.LastName,
                    Email     = employee.Email
                };

                employeeDetail.Roles = await _userManager.GetRolesAsync(employee);

                List <UserPermissionViewModel> data = new List <UserPermissionViewModel>();

                foreach (var permission in allPermission)
                {
                    var detail = new UserPermissionViewModel()
                    {
                        UserId         = employee.Id,
                        PermissionId   = permission.Id,
                        PermissionName = permission.Name
                    };

                    var userPermission = userPermissions.FirstOrDefault(x => x.PermissionId == permission.Id && x.UserId == employee.Id);

                    if (userPermission != null)
                    {
                        detail.Enabled = userPermission.Enabled;
                    }

                    data.Add(detail);
                }

                employeeDetail.Permissions = data;

                res.Add(employeeDetail);
            }

            return(new Response <List <EmployeeResponse> >(res));
        }
Пример #6
0
        /// <summary>
        /// Update an entity.
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public UserPermissionViewModel Update(UserPermissionViewModel model)
        {
            var entity = model.ToEntity();

            entity = this._UserPermissionsRepository.Update(entity);

            #region Commit Changes
            this._unitOfWork.Commit();
            #endregion

            model = entity.ToModel();
            return(model);
        }
Пример #7
0
        // GET: Permission
        public ActionResult Index()
        {
            var roles         = _context.Roles.ToList();
            var permissions   = _context.Permissions.ToList();
            var masterDetails = _context.MasterDetails.ToList();

            var account    = UserProfileController.LoginUser(User.Identity.GetUserId());
            var permission = UserProfileController.GetUserPermission(account);

            var viewModel = new UserPermissionViewModel
            {
                Permissions   = permissions,
                Roles         = roles,
                MasterDetails = masterDetails,
                Account       = account,
                Permission    = permission
            };

            return(View(viewModel));
        }
Пример #8
0
        public static UserPermissionModel ToEntity(this UserPermissionViewModel model)
        {
            if (model == null)
            {
                return(null);
            }

            var entity = new UserPermissionModel
            {
                PermissionID        = model.PermissionID,
                PermissionLevelID   = model.PermissionLevelID,
                PermissionLevelName = model.PermissionLevelName,
                PermissionName      = model.PermissionName,
                Description         = model.Description,
                Code       = model.Code,
                ModifiedBy = 1,
                ModifiedOn = model.ModifiedOn
            };

            return(entity);
        }
Пример #9
0
        public async Task <IActionResult> UpdatePermission([FromBody] UserPermissionViewModel model)
        {
            var userPermission = _context.Set <UserPermission>().FirstOrDefault(x => x.UserId == model.UserId && x.PermissionId == model.PermissionId);

            if (userPermission is null)
            {
                userPermission = new UserPermission
                {
                    UserId       = model.UserId,
                    PermissionId = model.PermissionId,
                    Enabled      = model.Enabled
                };
            }
            else
            {
                userPermission.Enabled = model.Enabled;
            }

            await _context.SaveChangesAsync();

            return(Ok());
        }
        public ActionResult AddPermission(int id)
        {
            UserPermissionViewModel model = new UserPermissionViewModel();
            var checkRole = _dbContext.tbl_Roles.Where(w => w.RoleId == id).FirstOrDefault();
            if (checkRole != null)
            {
                model.RoleId = checkRole.RoleId;
                model.Rolename = checkRole.Rolename;

                var userClaims = _dbContext.tbl_Userclaim.Where(w => w.RoleId == model.RoleId).ToList();

                model.Menus = (from menu in _dbContext.tbl_Menus
                               select new MenuViewModel
                               {
                                   Name = menu.Name + " (" + menu.Parent + ")",
                                   MenuId = menu.MenuId,
                               }).ToList();
                foreach (var item in model.Menus)
                {
                    var checkCliam = userClaims.Where(w => w.MenuId == item.MenuId).FirstOrDefault();
                    if (checkCliam == null)
                    {
                        item.Ischecked = false;
                    }
                    else
                    {
                        item.Ischecked = true;
                    }
                }
            }
            else
            {
                return RedirectToAction("PermissionList");
            }


            return View(model);
        }
Пример #11
0
        public static UserPermissionViewModel ToModel(this UserPermissionModel entity)
        {
            if (entity == null)
            {
                return(null);
            }

            var model = new UserPermissionViewModel
            {
                RoleModuleComponentID = entity.RoleModuleComponentID,
                RoleModuleID          = entity.RoleModuleID,
                PermissionID          = entity.PermissionID,
                PermissionLevelID     = entity.PermissionLevelID,
                PermissionLevelName   = entity.PermissionLevelName,
                PermissionName        = entity.PermissionName,
                Description           = entity.Description,
                Code       = entity.Code,
                ModifiedBy = 1,
                ModifiedOn = entity.ModifiedOn
            };

            return(model);
        }
Пример #12
0
        protected void rptPermissions_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
            {
                UserPermissionViewModel role = (UserPermissionViewModel)e.Item.DataItem;
                //Role role = permission.Role;
                Label lblTip = (Label)e.Item.FindControl("lblTip");

                DropDownList ddlUnAssignedOperator = (DropDownList)e.Item.FindControl("ddlUnAssignedOperator");
                DropDownList ddlAssignedOperator   = (DropDownList)e.Item.FindControl("ddlAssignedOperator");
                DropDownList ddlGroupOperator      = (DropDownList)e.Item.FindControl("ddlGroupOperator");


                if (role.IsInherit)
                {
                    ddlGroupOperator.Visible = false;
                    ddlGroupOperator.Visible = true;
                    if (role.IsOverride)
                    {
                        ddlGroupOperator.SelectedValue = "deny";
                        ddlGroupOperator.Enabled       = false;
                        lblTip.Text = lblInheritFromGroup.Text + lblOverride.Text;
                    }
                    else
                    {
                        ddlGroupOperator.SelectedValue = "grant";
                        lblTip.Text = lblInheritFromGroup.Text;
                    }
                }

                if (role.IsAssigned)
                {
                    ddlAssignedOperator.Visible = true;
                    if (role.IsGrant && !role.IsOverride)
                    {
                        lblTip.Text = lblGrant.Text;
                        ddlAssignedOperator.SelectedValue = "grant";
                    }
                    if (role.IsGrant && role.IsOverride)
                    {
                        lblTip.Text = lblGrant.Text + lblOverride.Text;
                        ddlAssignedOperator.SelectedValue = "grant";
                    }
                    if (role.IsDeny && !role.IsOverride)
                    {
                        lblTip.Text = lblDeny.Text;
                        ddlAssignedOperator.SelectedValue = "deny";
                    }
                    if (role.IsDeny && role.IsOverride)
                    {
                        lblTip.Text = lblDeny.Text + lblOverride.Text;
                        ddlAssignedOperator.SelectedValue = "deny";
                    }
                }

                if (role.IsOrphan)
                {
                    lblTip.Text = lblOrphan.Text;
                    ddlUnAssignedOperator.SelectedValue = "0";
                    ddlUnAssignedOperator.Visible       = true;
                }
            }
        }