Example #1
0
        public ResponseDtoContainer ChangeUserPermissons(List <PermissionDto> permissions, long userId)
        {
            ResponseDtoContainer        container  = new ResponseDtoContainer();
            List <PermissionToUserDto>  updateList = new List <PermissionToUserDto>();
            PermissionToUserTDataAccess puDa       = new PermissionToUserTDataAccess();

            foreach (var item in permissions)
            {
                var pu = puDa.GetSingle(it => it.PermissionId == item.PermissionId && it.UserId == userId);
                if (pu != null)
                {
                    if (item.AccessType == Common.Enums.AccessType.None)
                    {
                        puDa.Delete(pu);
                    }
                    else
                    {
                        pu.PermissionAccess = (short)item.AccessType;
                        updateList.Add(pu);
                    }
                    ResponseDto response = new ResponseDto(pu.Response);
                    container.ResponseDtoList.Add(response);
                }
                else if (pu == null && (item.AccessType == Common.Enums.AccessType.Access || item.AccessType == Common.Enums.AccessType.Deny))
                {
                    PermissionToUserDto newPermission = new PermissionToUserDto()
                    {
                        PermissionId     = item.PermissionId,
                        UserId           = userId,
                        PermissionAccess = (short)item.AccessType
                    };
                    puDa.Insert(newPermission);
                    ResponseDto response = new ResponseDto(newPermission.Response);
                    container.ResponseDtoList.Add(response);
                }
                else
                {
                    item.Response.AddBusinessException("موجود نیست", BusinessExceptionEnum.Operational);
                }
            }
            puDa.Update(updateList);
            return(container);
        }
Example #2
0
        public Framework.Common.Service.Message.ResponseDto RevokeUserPermission(Common.DTO.UserDto user, int permissionId)
        {
            ResponseDto response   = new ResponseDto();
            var         permission = this.GetSingle(it => it.PermissionId == permissionId);

            if (permission != null)
            {
                PermissionToUserTDataAccess perToUserDa = new PermissionToUserTDataAccess();
                var permissionList = perToUserDa.GetAll(it => it.PermissionId == permissionId && it.UserId == user.UserId).ToList();
                if (permissionList != null && permissionList.Count > 0)
                {
                    perToUserDa.Delete(permissionList);
                }
            }
            else
            {
                response.Response.AddBusinessException("چنین دسترسی وجود ندارد", BusinessExceptionEnum.Operational);
            }
            return(response);
        }
Example #3
0
        public Framework.Common.Service.Message.ResponseDto GrantUserPermission(Common.DTO.UserDto user, int permissionId)
        {
            ResponseDto response   = new ResponseDto();
            var         permission = this.GetSingle(it => it.PermissionId == permissionId);

            if (permission != null)
            {
                PermissionToUserTDataAccess perToUserDa = new PermissionToUserTDataAccess();
                PermissionToUserDto         perToUser   = new PermissionToUserDto()
                {
                    UserId       = user.UserId,
                    PermissionId = permissionId
                };
                perToUserDa.Insert(perToUser);
            }
            else
            {
                response.Response.AddBusinessException("چنین دسترسی وجود ندارد", BusinessExceptionEnum.Operational);
            }
            return(response);
        }