コード例 #1
0
 public IHttpActionResult CheckPermissionRole(int permissionId)
 {
     try
     {
         if (HttpContext.Current.User.Identity.IsAuthenticated)
         {
             string userId                = HttpContext.Current.User.Identity.GetUserId();
             var    companyDetail         = _companyRepository.GetCompanyDetailByUserId(userId);
             var    rolePermissionDetails = _workFlowRepository.CheckPermissionRole(permissionId, companyDetail.Id);
             var    roleList              = rolePermissionDetails.GroupBy(x => new { x.Id, x.RoleName }).ToList();
             var    roleCollection        = new List <RoleAc>();
             foreach (var role in roleList)
             {
                 var roleAc = new RoleAc();
                 roleAc.Id       = role.Key.Id;
                 roleAc.RoleName = role.Key.RoleName;
                 roleCollection.Add(roleAc);
             }
             return(Ok(roleCollection));
         }
         else
         {
             return(BadRequest());
         }
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
コード例 #2
0
        public List <RoleAc> CheckPermissionRole(int permissionId, int companyId)
        {
            try
            {
                var roleCollection         = new List <RoleAc>();
                var childPermissionDetails = _childPermissionDataRepository.Fetch(x => x.ParentPermissionId == permissionId).ToList();
                foreach (var childDetails in childPermissionDetails)
                {
                    var roleAc      = new RoleAc();
                    var roleDetails = _rolePermissionDataRepository.FirstOrDefault(x => x.ChildPermissionId == childDetails.Id && x.CompanyId == companyId);
                    if (roleDetails != null)
                    {
                        roleAc.Id        = roleDetails.RoleId;
                        roleAc.RoleName  = roleDetails.Role.RoleName;
                        roleAc.CompanyId = roleDetails.CompanyId;

                        roleCollection.Add(roleAc);
                    }
                }
                return(roleCollection);
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }
コード例 #3
0
 /// <summary>
 /// update role
 /// </summary>
 /// <param name="role"></param>
 public void UpdateRole(RoleAc role)
 {
     try
     {
         var roleDetail = _roleContext1.GetById(role.Id);
         roleDetail.RoleName         = role.RoleName;
         roleDetail.RoleNameSl       = role.RoleNameSl;
         roleDetail.IsDeleted        = role.IsDeleted;
         roleDetail.ModifiedDateTime = DateTime.UtcNow;
         _roleContext1.Update(roleDetail);
         _roleContext1.SaveChanges();
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
コード例 #4
0
 /// <summary>
 /// check if role name is exist or not
 /// </summary>
 /// <param name="name"></param>
 /// <returns>if role name exist return true,otherwise false</returns>
 public bool CheckRoleNameExistOrNot(RoleAc roleAc, int companyId)
 {
     try
     {
         if (roleAc.Id == 0)
         {
             return(_roleContext1.Fetch(x => x.RoleName.ToLower() == roleAc.RoleName.ToLower() && x.CompanyId == companyId && x.IsDeleted == false).Any());
         }
         else
         {
             return(_roleContext1.Fetch(x => x.RoleName.ToLower() == roleAc.RoleName.ToLower() && x.Id != roleAc.Id && x.CompanyId == companyId && x.IsDeleted == false).Any());
         }
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
コード例 #5
0
 /// <summary>
 /// get role list
 /// </summary>
 /// <returns>return list of role</returns>
 public List <RoleAc> GetRoleList(int companyId)
 {
     try
     {
         var roleList       = _roleContext1.Fetch(x => x.RoleName != StringConstants.AdminRoleName && x.RoleName != StringConstants.SuperAdminRoleName && x.CompanyId == companyId && x.IsDeleted == false).ToList();
         var roleCollection = new List <RoleAc>();
         foreach (var role in roleList)
         {
             var roleAc = new RoleAc();
             roleAc             = ApplicationClassHelper.ConvertType <Role, RoleAc>(role);
             roleAc.IsAdminRole = false;
             roleCollection.Add(roleAc);
         }
         return(roleCollection);
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
コード例 #6
0
 /// <summary>
 /// this method is used to get all role wise permission.
 /// </summary>
 /// <returns></returns>
 public List <RoleAc> GetAllRolePermissionlist(int companyId)
 {
     try
     {
         var roleDetail     = _rolePermissionDataRepository.Fetch(x => x.CompanyId == companyId).ToList();
         var roleList       = roleDetail.GroupBy(x => new { x.RoleId, x.Role.RoleName }).ToList();
         var roleCollection = new List <RoleAc>();
         foreach (var role in roleList)
         {
             var roleAc = new RoleAc();
             roleAc.Id       = role.Key.RoleId;
             roleAc.RoleName = role.Key.RoleName;
             roleCollection.Add(roleAc);
         }
         return(roleCollection);
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
コード例 #7
0
        /// <summary>
        /// this method is used to get all permission list
        /// </summary>
        /// <returns></returns>
        public IOrderedEnumerable <RoleAc> GetAllRoleList(int companyId)
        {
            try
            {
                var roleCollection = new List <RoleAc>();
                foreach (var role in _roleRepository.Fetch(x => !x.IsDeleted && x.RoleName != StringConstants.AdminRoleName && x.RoleName != StringConstants.SuperAdminRoleName && x.CompanyId == companyId).ToList())
                {
                    var roleAc = new RoleAc();
                    roleAc          = ApplicationClassHelper.ConvertType <Role, RoleAc>(role);
                    roleAc.Id       = role.Id;
                    roleAc.RoleName = role.RoleName;
                    roleCollection.Add(roleAc);
                }

                return(roleCollection.OrderBy(x => x.RoleName));
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }
コード例 #8
0
 public Role AddNewRole(RoleAc role, int companyId)
 {
     try
     {
         var roles = new Role
         {
             RoleName        = role.RoleName,
             RoleNameSl      = role.RoleNameSl,
             CompanyId       = companyId,
             CreatedDateTime = DateTime.UtcNow,
             IsDeleted       = false
         };
         _roleContext1.Add(roles);
         _roleContext1.SaveChanges();
         return(roles);
     }
     catch (Exception ex)
     {
         _errorLog.LogException(ex);
         throw;
     }
 }
コード例 #9
0
        public IHttpActionResult SaveRole(RoleAc role)
        {
            try
            {
                //get Company Id by user id
                string        userId        = HttpContext.Current.User.Identity.GetUserId();
                CompanyDetail companyDetail = _companyRepository.GetCompanyDetailByUserId(userId);
                int           companyId     = 0;
                if (companyDetail != null)
                {
                    companyId = companyDetail.Id;
                }

                //check role name exist or not
                if (_roleContext.CheckRoleNameExistOrNot(role, companyId))
                {
                    return(Ok(new { isRoleNameExist = true }));
                }

                if (role.Id == 0)
                {
                    Role roleInfo = _roleContext.AddNewRole(role, companyId);
                    return(Ok(roleInfo));
                }
                else
                {
                    _roleContext.UpdateRole(role);
                    return(Ok(role));
                }
            }
            catch (Exception ex)
            {
                _errorLog.LogException(ex);
                throw;
            }
        }