Class: AbstractReport
Constant Summary
Constants included
from JSONModel
JSONModel::REFERENCE_KEY_REGEX
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from JSONModel
JSONModel, #JSONModel, add_error_handler, all, allow_unmapped_enum_value, backend_url, check_valid_refs, client_mode?, custom_validations, destroy_model, enum_default_value, enum_values, handle_error, init, load_schema, #models, models, parse_jsonmodel_ref, parse_reference, repository, repository_for, schema_src, set_publish_flags!, set_repository, strict_mode, strict_mode?, validate_schema, with_repository
included
Constructor Details
#initialize(params, job, db) ⇒ AbstractReport
Returns a new instance of AbstractReport.
18
19
20
21
22
23
24
25
26
|
# File 'backend/app/model/reports/abstract_report.rb', line 18
def initialize(params, job, db)
@repo_id = params[:repo_id] if params.has_key?(:repo_id) && params[:repo_id] != ''
@format = params[:format] if params.has_key?(:format) && params[:format] != ''
@expand_csv = !(params.has_key?('csv_show_json') ? params['csv_show_json'] : false)
@params = params
@db = db
@job = job
@info = {}
end
|
Instance Attribute Details
#db ⇒ Object
Returns the value of attribute db
12
13
14
|
# File 'backend/app/model/reports/abstract_report.rb', line 12
def db
@db
end
|
#expand_csv ⇒ Object
Returns the value of attribute expand_csv
16
17
18
|
# File 'backend/app/model/reports/abstract_report.rb', line 16
def expand_csv
@expand_csv
end
|
Returns the value of attribute format
10
11
12
|
# File 'backend/app/model/reports/abstract_report.rb', line 10
def format
@format
end
|
#info ⇒ Object
Returns the value of attribute info
14
15
16
|
# File 'backend/app/model/reports/abstract_report.rb', line 14
def info
@info
end
|
#job ⇒ Object
Returns the value of attribute job
13
14
15
|
# File 'backend/app/model/reports/abstract_report.rb', line 13
def job
@job
end
|
#page_break ⇒ Object
Returns the value of attribute page_break
15
16
17
|
# File 'backend/app/model/reports/abstract_report.rb', line 15
def page_break
@page_break
end
|
#params ⇒ Object
Returns the value of attribute params
11
12
13
|
# File 'backend/app/model/reports/abstract_report.rb', line 11
def params
@params
end
|
#repo_id ⇒ Object
Returns the value of attribute repo_id
9
10
11
|
# File 'backend/app/model/reports/abstract_report.rb', line 9
def repo_id
@repo_id
end
|
Class Method Details
.code ⇒ Object
76
77
78
|
# File 'backend/app/model/reports/abstract_report.rb', line 76
def self.code
self.name.gsub(/(.)([A-Z])/, '\1_\2').downcase
end
|
Instance Method Details
#after_tasks ⇒ Object
70
|
# File 'backend/app/model/reports/abstract_report.rb', line 70
def after_tasks; end
|
#code ⇒ Object
72
73
74
|
# File 'backend/app/model/reports/abstract_report.rb', line 72
def code
self.class.code
end
|
#current_user ⇒ Object
44
45
46
|
# File 'backend/app/model/reports/abstract_report.rb', line 44
def current_user
@job.owner
end
|
#fix_row(row) ⇒ Object
68
|
# File 'backend/app/model/reports/abstract_report.rb', line 68
def fix_row(row) end
|
#get_content ⇒ Object
48
49
50
51
52
53
54
55
56
57
58
|
# File 'backend/app/model/reports/abstract_report.rb', line 48
def get_content
array = []
query.each do |result|
row = result.to_hash
fix_row(row)
array.push(row)
end
info[:repository] = repository
after_tasks
array
end
|
#identifier_field ⇒ Object
80
81
82
|
# File 'backend/app/model/reports/abstract_report.rb', line 80
def identifier_field
nil
end
|
#layout ⇒ Object
40
41
42
|
# File 'backend/app/model/reports/abstract_report.rb', line 40
def layout
AppConfig[:report_page_layout]
end
|
#orientation ⇒ Object
36
37
38
|
# File 'backend/app/model/reports/abstract_report.rb', line 36
def orientation
'portrait'
end
|
#query ⇒ Object
60
61
62
|
# File 'backend/app/model/reports/abstract_report.rb', line 60
def query
db.fetch(query_string)
end
|
#query_string ⇒ Object
64
65
66
|
# File 'backend/app/model/reports/abstract_report.rb', line 64
def query_string
raise 'Please specify a query string to return your reportable results'
end
|
#repository ⇒ Object
84
85
86
|
# File 'backend/app/model/reports/abstract_report.rb', line 84
def repository
Repository.get_or_die(repo_id).name
end
|
#special_translation(key, subreport_code) ⇒ Object
88
89
90
|
# File 'backend/app/model/reports/abstract_report.rb', line 88
def special_translation(key, subreport_code)
nil
end
|
#title ⇒ Object
32
33
34
|
# File 'backend/app/model/reports/abstract_report.rb', line 32
def title
I18n.t("reports.#{code}.title", :default => code)
end
|