public IActionResult GetRolePermissions(UserRoleMapDTO userPermissionDTO)
        {
            var _permissions = _permissionService.GetRolePermissions(userPermissionDTO, Context);
            var masterdata   = _permissions.GroupBy(c => new { c.RoleName }).Select(mdata => new { mdata.Key.RoleName, mdata });

            return(Ok(masterdata));
        }
Ejemplo n.º 2
0
        public UserRoleResponse AssignRole(UserRoleMapDTO userRoles, ApiContext apiContext)
        {
            _context = (MICAUMContext)DbManager.GetContext(apiContext.ProductType, apiContext.ServerType);
            var          roledata = _context.AspNetUserRoles.FirstOrDefault(x => x.UserId == userRoles.UserId);
            UserRolesDTO roleDTO  = new UserRolesDTO();

            if (userRoles.RoleId != null)
            {
                if (roledata == null)
                {
                    for (int i = 0; i < userRoles.RoleId.Length; i++)
                    {
                        roleDTO.UserId = userRoles.UserId;
                        roleDTO.RoleId = userRoles.RoleId[i];
                        AspNetUserRoles _usersRole = _mapper.Map <AspNetUserRoles>(roleDTO);

                        _context.AspNetUserRoles.Add(_usersRole);
                        // _context.SaveChanges();
                    }
                }
                else
                {
                    var role = _context.AspNetUserRoles.Where(a => a.UserId == userRoles.UserId);
                    foreach (var item in role)
                    {
                        _context.AspNetUserRoles.Remove(item);
                    }
                    for (int i = 0; i < userRoles.RoleId.Length; i++)
                    {
                        roleDTO.UserId = userRoles.UserId;
                        roleDTO.RoleId = userRoles.RoleId[i];
                        AspNetUserRoles _usersRole = _mapper.Map <AspNetUserRoles>(roleDTO);

                        _context.AspNetUserRoles.Add(_usersRole);
                        // _context.SaveChanges();
                    }
                }
                var user = _context.TblUserDetails.SingleOrDefault(x => x.UserId == userRoles.UserId);

                if (string.IsNullOrEmpty(user.RoleId))
                {
                    user.RoleId = userRoles.RoleId[0].ToString();
                }
                _context.SaveChanges();

                //return userRoles;
                return(new UserRoleResponse {
                    Status = BusinessStatus.Created, role = userRoles, ResponseMessage = $"Assigned {userRoles.RoleId} Role successfully! "
                });
            }
            else
            {
                return(new UserRoleResponse {
                    Status = BusinessStatus.Error, role = userRoles, ResponseMessage = $"Please select the Role to assign "
                });
            }
        }
Ejemplo n.º 3
0
        public IActionResult AssignRole([FromBody] UserRoleMapDTO userRoles)
        {
            var usrrole = _roleService.AssignRole(userRoles, Context);

            return(ServiceResponse(usrrole));
            //switch (usrrole.Status)
            //{
            //    case BusinessStatus.InputValidationFailed:
            //        return Ok(usrrole);
            //    case BusinessStatus.Created:
            //        return Ok(usrrole);
            //    case BusinessStatus.UnAuthorized:
            //        return Unauthorized();
            //    default:
            //        return Forbid();
            //}
        }
Ejemplo n.º 4
0
        public async Task <bool> Save(UserRoleMapDTO _dto, Guid Id, int EntityState)
        {
            UserRolesMap _userRolesMap = new UserRolesMap();

            if (_dto != null)
            {
                //usermaster.Id = "";
                _userRolesMap.Id         = Id;
                _userRolesMap.UserId     = _dto.UserId;
                _userRolesMap.RoleId     = _dto.RoleId;
                _userRolesMap.StatusCode = EMPConstants.Active;
            }

            if (EntityState == (int)System.Data.Entity.EntityState.Modified)
            {
                db.Entry(_userRolesMap).State = System.Data.Entity.EntityState.Modified;
            }
            else
            {
                db.UserRolesMaps.Add(_userRolesMap);
            }

            try
            {
                await db.SaveChangesAsync();

                return(true);
            }

            catch (DbUpdateConcurrencyException)
            {
                if (!IsExists(_userRolesMap.Id))
                {
                    return(false);
                }
                else
                {
                    throw;
                }
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Gets the user role permissions.
        /// </summary>
        /// <param name="userPermissionDTO">The user permission dto.</param>
        /// <param name="apiContext">The API context.</param>
        /// <returns></returns>
        private IEnumerable <MasPermissionDTO> GetUserRolePermissions(UserRoleMapDTO userPermissionDTO, ApiContext apiContext)
        {
            _context = (AVOUMContext)DbManager.GetContext(apiContext.ProductType, apiContext.ServerType);
            var ruleNames      = _context.AspNetRoles.Where(r => userPermissionDTO.RoleId.Contains(r.Id)).ToList();
            var menuPermission = (from permission in _context.TblUserPermissions
                                  join c in _context.TblMasPermission on permission.PermissionId equals c.PermissionId
                                  where userPermissionDTO.RoleId.Contains(permission.RoleId) &&
                                  permission.UserorRole == "Role"
                                  select new MasPermissionDTO
            {
                PermissionId = c.PermissionId,
                ItemType = c.ItemType,
                ParentId = c.ParentId,
                MenuId = c.MenuId,
                ItemDescription = c.ItemDescription,
                Label = c.ItemDescription,
                Url = c.Url,
                PathTo = c.PathTo,
                Collapse = c.Collapse,
                State = c.State,
                Mini = c.Mini,
                Icon = c.Icon,
                Redirect = c.Redirect,
                Component = c.Component,
                Status = true,
                RoleId = permission.RoleId,
                RoleName = ruleNames.First(r => r.Id == permission.RoleId).Name
            }).ToList();

            var userPermissions = from c in _context.TblMasPermission
                                  join permission in _context.TblUserPermissions on c.PermissionId equals permission.PermissionId
                                  where permission.UserId == userPermissionDTO.UserId &&
                                  permission.UserorRole == "User"
                                  select permission;

            if (userPermissions.Any())
            {
                foreach (var item in userPermissions)
                {
                    var mPermission = menuPermission.FirstOrDefault(m => m.PermissionId == item.PermissionId && m.RoleId == item.RoleId);
                    if (mPermission != null)
                    {
                        mPermission.Status = false;
                    }
                }
            }
            IEnumerable <MasPermissionDTO> _masPermissionDTOs = menuPermission
                                                                .Where(c => (c.ParentId == 0))
                                                                .Select(c => new MasPermissionDTO()
            {
                PermissionId    = c.PermissionId,
                ItemType        = c.ItemType,
                ParentId        = c.ParentId,
                MenuId          = c.MenuId,
                ItemDescription = c.ItemDescription,
                Label           = c.ItemDescription,
                Url             = c.Url,
                PathTo          = c.PathTo,
                Collapse        = c.Collapse,
                State           = c.State,
                Mini            = c.Mini,
                Icon            = c.Icon,
                Redirect        = c.Redirect,
                Component       = c.Component,
                Status          = c.Status,
                RoleId          = c.RoleId,
                RoleName        = c.RoleName,
                Children        = GetMenuChildren(menuPermission, c.PermissionId, c.RoleId)
            });

            return(_masPermissionDTOs);
        }
Ejemplo n.º 6
0
 /// <summary>
 /// Gets the role permissions.
 /// </summary>
 /// <param name="userPermissionDTO">The user permission dto.</param>
 /// <param name="apiContext">The API context.</param>
 /// <returns></returns>
 public IEnumerable <MasPermissionDTO> GetRolePermissions(UserRoleMapDTO userPermissionDTO, ApiContext apiContext)
 {
     return(GetUserRolePermissions(userPermissionDTO, apiContext));
 }
Ejemplo n.º 7
0
 public UserRoleResponse AssignRole(UserRoleMapDTO userRoles, ApiContext apiContext)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 8
0
 public UserRoleResponse AssignRole(UserRoleMapDTO userRoles, ApiContext apiContext)
 {
     return(_roleService(apiContext.ProductType).AssignRole(userRoles, apiContext));
 }
Ejemplo n.º 9
0
 public IEnumerable <MasPermissionDTO> GetRolePermissions(UserRoleMapDTO userPermissionDTO, ApiContext apiContext)
 {
     throw new NotImplementedException();
 }