Module: JPSClient::API::Permission

Included in:
Client
Defined in:
lib/jpsclient/api/permission.rb

Overview

Permission 相关 API 处理权限管理相关接口

Instance Method Summary collapse

Instance Method Details

#create_permission(name:, code:, description: nil) ⇒ Hash

创建权限

Parameters:

  • name (String)

    权限名称(必需)

  • code (String)

    权限代码(必需)

  • description (String) (defaults to: nil)

    权限描述(可选)

Returns:

  • (Hash)

    API响应

Raises:



40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/jpsclient/api/permission.rb', line 40

def create_permission(name:, code:, description: nil)
  config = @request_config && @request_config["permission_create"]
  raise JPSClient::ExceptionError, "Missing config for permission_create" unless config && config["url"]

  path = config["url"]

  body = {
    name: name,
    code: code
  }
  body[:description] = description if description

  return request_with_auth(:post, path, body: body)
end

#delete_permission(id:) ⇒ Hash

删除权限

Parameters:

  • id (String, Integer)

    权限ID(必需)

Returns:

  • (Hash)

    API响应

Raises:



80
81
82
83
84
85
86
87
88
# File 'lib/jpsclient/api/permission.rb', line 80

def delete_permission(id:)
  config = @request_config && @request_config["permission_delete"]
  raise JPSClient::ExceptionError, "Missing config for permission_delete" unless config && config["url"]

  path = config["url"]
  body = { id: id }

  return request_with_auth(:post, path, body: body)
end

#get_permission_detail(id:) ⇒ Hash

获取权限详情

Parameters:

  • id (String, Integer)

    权限ID(必需)

Returns:

  • (Hash)

    API响应

Raises:



24
25
26
27
28
29
30
31
32
# File 'lib/jpsclient/api/permission.rb', line 24

def get_permission_detail(id:)
  config = @request_config && @request_config["permission_detail"]
  raise JPSClient::ExceptionError, "Missing config for permission_detail" unless config && config["url"]

  path = config["url"]
  params = { id: id }

  return request_with_auth(:get, path, params: params)
end

#get_permission_list(params: {}) ⇒ Hash

获取权限列表

Parameters:

  • params (Hash) (defaults to: {})

    请求参数(可选)

Returns:

  • (Hash)

    API响应

Raises:



11
12
13
14
15
16
17
18
# File 'lib/jpsclient/api/permission.rb', line 11

def get_permission_list(params: {})
  config = @request_config && @request_config["permission_list"]
  raise JPSClient::ExceptionError, "Missing config for permission_list" unless config && config["url"]

  path = config["url"]

  return request_with_auth(:get, path, params: params)
end

#update_permission(id:, name: nil, code: nil, description: nil) ⇒ Hash

更新权限

Parameters:

  • id (String, Integer)

    权限ID(必需)

  • name (String) (defaults to: nil)

    权限名称(可选)

  • code (String) (defaults to: nil)

    权限代码(可选)

  • description (String) (defaults to: nil)

    权限描述(可选)

Returns:

  • (Hash)

    API响应

Raises:



62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/jpsclient/api/permission.rb', line 62

def update_permission(id:, name: nil, code: nil, description: nil)
  config = @request_config && @request_config["permission_update"]
  raise JPSClient::ExceptionError, "Missing config for permission_update" unless config && config["url"]

  path = config["url"]

  body = { id: id }
  body[:name] = name if name
  body[:code] = code if code
  body[:description] = description if description

  return request_with_auth(:post, path, body: body)
end