Module: Legion::Extensions::ServiceNow::PerformanceAnalytics::Runners::PerformanceAnalytics

Includes:
Helpers::Lex, Helpers::Client
Included in:
Client
Defined in:
lib/legion/extensions/service_now/performance_analytics/runners/performance_analytics.rb

Instance Method Summary collapse

Methods included from Helpers::Client

#connection, #fetch_oauth2_token, #handle_response

Instance Method Details

#get_scorecard(indicator_sys_id:, sysparm_breakdown: nil, sysparm_include_scores: true, sysparm_per_page: 10) ⇒ Object



24
25
26
27
28
29
30
31
# File 'lib/legion/extensions/service_now/performance_analytics/runners/performance_analytics.rb', line 24

def get_scorecard(indicator_sys_id:, sysparm_breakdown: nil,
                  sysparm_include_scores: true, sysparm_per_page: 10, **)
  params = { sysparm_include_scores: sysparm_include_scores,
             sysparm_per_page:       sysparm_per_page }
  params[:sysparm_breakdown] = sysparm_breakdown if sysparm_breakdown
  resp = connection(**).get("/api/now/pa/scorecards/#{indicator_sys_id}", params)
  { scorecard: resp.body['result'] }
end

#get_widget_data(widget_sys_id:, sysparm_uuid: nil) ⇒ Object



11
12
13
14
15
16
# File 'lib/legion/extensions/service_now/performance_analytics/runners/performance_analytics.rb', line 11

def get_widget_data(widget_sys_id:, sysparm_uuid: nil, **)
  params = {}
  params[:sysparm_uuid] = sysparm_uuid if sysparm_uuid
  resp = connection(**).get("/api/now/pa/widgets/#{widget_sys_id}", params)
  { widget: resp.body['result'] }
end

#list_breakdownsObject



39
40
41
42
# File 'lib/legion/extensions/service_now/performance_analytics/runners/performance_analytics.rb', line 39

def list_breakdowns(**)
  resp = connection(**).get('/api/now/pa/breakdowns')
  { breakdowns: resp.body['result'] }
end

#list_indicators(sysparm_limit: 100, sysparm_offset: 0) ⇒ Object



33
34
35
36
37
# File 'lib/legion/extensions/service_now/performance_analytics/runners/performance_analytics.rb', line 33

def list_indicators(sysparm_limit: 100, sysparm_offset: 0, **)
  params = { sysparm_limit: sysparm_limit, sysparm_offset: sysparm_offset }
  resp = connection(**).get('/api/now/pa/indicators', params)
  { indicators: resp.body['result'] }
end

#list_widgets(sysparm_limit: 100, sysparm_offset: 0) ⇒ Object



18
19
20
21
22
# File 'lib/legion/extensions/service_now/performance_analytics/runners/performance_analytics.rb', line 18

def list_widgets(sysparm_limit: 100, sysparm_offset: 0, **)
  params = { sysparm_limit: sysparm_limit, sysparm_offset: sysparm_offset }
  resp = connection(**).get('/api/now/pa/widgets', params)
  { widgets: resp.body['result'] }
end