rails_data 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +165 -0
  3. data/README.md +41 -0
  4. data/Rakefile +37 -0
  5. data/app/assets/config/rails_data_manifest.js +1 -0
  6. data/app/assets/javascripts/channels/done.js +10 -0
  7. data/app/assets/javascripts/controllers/the_data_admin/data_lists/edit.js +1 -0
  8. data/app/assets/javascripts/controllers/the_data_admin/data_lists/new.js +1 -0
  9. data/app/assets/javascripts/controllers/the_data_admin/table_lists/index.js +10 -0
  10. data/app/channels/done_channel.rb +7 -0
  11. data/app/channels/rails_data_connection.rb +29 -0
  12. data/app/controllers/rails_data_admin/base_controller.rb +3 -0
  13. data/app/controllers/rails_data_admin/data_lists_controller.rb +75 -0
  14. data/app/controllers/rails_data_admin/data_records_controller.rb +71 -0
  15. data/app/controllers/rails_data_admin/record_lists_controller.rb +105 -0
  16. data/app/controllers/rails_data_admin/table_lists_controller.rb +115 -0
  17. data/app/helpers/data_records_helper.rb +2 -0
  18. data/app/helpers/rails_data_helper.rb +21 -0
  19. data/app/jobs/table_job.rb +11 -0
  20. data/app/mailers/report_finish_mailer.rb +17 -0
  21. data/app/models/rails_data/concerns/data_cache_service.rb +26 -0
  22. data/app/models/rails_data/concerns/data_export_helper.rb +55 -0
  23. data/app/models/rails_data/concerns/data_import_helper.rb +40 -0
  24. data/app/models/rails_data/concerns/data_import_service.rb +35 -0
  25. data/app/models/rails_data/data_list.rb +47 -0
  26. data/app/models/rails_data/data_lists/data_export.rb +11 -0
  27. data/app/models/rails_data/data_lists/data_import.rb +11 -0
  28. data/app/models/rails_data/data_lists/data_record.rb +18 -0
  29. data/app/models/rails_data/export_services/csv_export_service.rb +24 -0
  30. data/app/models/rails_data/export_services/pdf_export_service.rb +74 -0
  31. data/app/models/rails_data/export_services/xlsx_export_service.rb +51 -0
  32. data/app/models/rails_data/record_list.rb +69 -0
  33. data/app/models/rails_data/table_item.rb +5 -0
  34. data/app/models/rails_data/table_list.rb +47 -0
  35. data/app/pdfs/concerns/pdf_page_helper.rb +37 -0
  36. data/app/pdfs/concerns/pdf_table_helper.rb +107 -0
  37. data/app/pdfs/concerns/pdf_text_helper.rb +18 -0
  38. data/app/pdfs/rails_data_pdf.rb +32 -0
  39. data/app/views/rails_data_admin/base/_nav.html.erb +9 -0
  40. data/app/views/rails_data_admin/data_lists/_item_form.html.erb +15 -0
  41. data/app/views/rails_data_admin/data_lists/add_item.js.erb +4 -0
  42. data/app/views/rails_data_admin/data_lists/edit.html.erb +33 -0
  43. data/app/views/rails_data_admin/data_lists/index.html.erb +43 -0
  44. data/app/views/rails_data_admin/data_lists/new.html.erb +17 -0
  45. data/app/views/rails_data_admin/data_lists/remove_item.js.erb +1 -0
  46. data/app/views/rails_data_admin/data_lists/reportable.html.erb +31 -0
  47. data/app/views/rails_data_admin/data_lists/show.html.erb +20 -0
  48. data/app/views/rails_data_admin/data_records/_item_form.html.erb +15 -0
  49. data/app/views/rails_data_admin/data_records/add_item.js.erb +4 -0
  50. data/app/views/rails_data_admin/data_records/edit.html.erb +33 -0
  51. data/app/views/rails_data_admin/data_records/index.html.erb +57 -0
  52. data/app/views/rails_data_admin/data_records/new.html.erb +16 -0
  53. data/app/views/rails_data_admin/data_records/remove_item.js.erb +1 -0
  54. data/app/views/rails_data_admin/data_records/reportable.html.erb +31 -0
  55. data/app/views/rails_data_admin/data_records/show.html.erb +20 -0
  56. data/app/views/rails_data_admin/record_lists/_edit_columns.html.erb +19 -0
  57. data/app/views/rails_data_admin/record_lists/_edit_table.erb +44 -0
  58. data/app/views/rails_data_admin/record_lists/_index.html.erb +22 -0
  59. data/app/views/rails_data_admin/record_lists/_search_form.html.erb +9 -0
  60. data/app/views/rails_data_admin/record_lists/_show.html.erb +16 -0
  61. data/app/views/rails_data_admin/record_lists/_table.html.erb +12 -0
  62. data/app/views/rails_data_admin/record_lists/edit.html.erb +19 -0
  63. data/app/views/rails_data_admin/record_lists/edit_columns.html.erb +30 -0
  64. data/app/views/rails_data_admin/record_lists/edit_columns.js.erb +9 -0
  65. data/app/views/rails_data_admin/record_lists/find.js.erb +8 -0
  66. data/app/views/rails_data_admin/record_lists/index.html.erb +52 -0
  67. data/app/views/rails_data_admin/record_lists/new.html.erb +19 -0
  68. data/app/views/rails_data_admin/record_lists/show.html.erb +19 -0
  69. data/app/views/rails_data_admin/record_lists/show.js.erb +8 -0
  70. data/app/views/rails_data_admin/record_lists/update_columns.js.erb +8 -0
  71. data/app/views/rails_data_admin/table_lists/_import.html.erb +17 -0
  72. data/app/views/rails_data_admin/table_lists/_index.html.erb +22 -0
  73. data/app/views/rails_data_admin/table_lists/_process.html.erb +5 -0
  74. data/app/views/rails_data_admin/table_lists/_show.html.erb +10 -0
  75. data/app/views/rails_data_admin/table_lists/_table.html.erb +38 -0
  76. data/app/views/rails_data_admin/table_lists/create_import.js.erb +8 -0
  77. data/app/views/rails_data_admin/table_lists/edit.html.erb +19 -0
  78. data/app/views/rails_data_admin/table_lists/find.js.erb +2 -0
  79. data/app/views/rails_data_admin/table_lists/index.html.erb +55 -0
  80. data/app/views/rails_data_admin/table_lists/new.html.erb +19 -0
  81. data/app/views/rails_data_admin/table_lists/new_import.js.erb +30 -0
  82. data/app/views/rails_data_admin/table_lists/run.js.erb +10 -0
  83. data/app/views/rails_data_admin/table_lists/show.html.erb +11 -0
  84. data/app/views/report_finish_mailer/finish_notify.text.erb +5 -0
  85. data/config/initializers/the_data.rb +4 -0
  86. data/config/locales/en.yml +10 -0
  87. data/config/locales/zh.yml +10 -0
  88. data/config/routes.rb +35 -0
  89. data/db/migrate/20150618053929_create_report_lists.rb +51 -0
  90. data/lib/rails_data/config.rb +23 -0
  91. data/lib/rails_data/engine.rb +18 -0
  92. data/lib/rails_data/export.rb +52 -0
  93. data/lib/rails_data/import.rb +42 -0
  94. data/lib/rails_data/record.rb +42 -0
  95. data/lib/rails_data/version.rb +3 -0
  96. data/lib/rails_data.rb +5 -0
  97. data/test/controllers/data_records_controller_test.rb +48 -0
  98. data/test/controllers/rails_data_admin/report_lists_controller_test.rb +49 -0
  99. data/test/controllers/rails_data_admin/table_lists_controller_test.rb +49 -0
  100. data/test/factories/combines.rb +7 -0
  101. data/test/factories/report_lists.rb +14 -0
  102. data/test/factories/table_items.rb +6 -0
  103. data/test/factories/table_lists.rb +6 -0
  104. data/test/integration/navigation_test.rb +10 -0
  105. data/test/models/data_list_test.rb +10 -0
  106. data/test/system/data_records_test.rb +41 -0
  107. data/test/test_helper.rb +21 -0
  108. data/test/the_data_test.rb +7 -0
  109. metadata +247 -0
@@ -0,0 +1,52 @@
1
+ module RailsData::Export
2
+
3
+ # extend RailsData::Export
4
+ # config do
5
+ # collect -> (params) { User.default_where(params) }
6
+ # column :name, header: 'My name', field: -> {}
7
+ # column :email, header: 'Email', field: -> {}
8
+ # end
9
+ attr_reader :collection,
10
+ :columns,
11
+ :parameters
12
+
13
+ def config(*args, &block)
14
+ block.call(*args) if block_given?
15
+ end
16
+
17
+ def collect(collection)
18
+ @collection = collection
19
+ @parameters ||= []
20
+ if collection.respond_to?(:call)
21
+ _params = collection.parameters.to_combined_h
22
+ @parameters << _params[:key] if _params[:key]
23
+ end
24
+ end
25
+
26
+ def column(name, header: nil, field: nil, footer: nil)
27
+ @columns ||= {}
28
+ name = name.to_sym
29
+
30
+ if @columns.keys.include?(name)
31
+ warn 'The column is repeated'
32
+ end
33
+
34
+ @columns[name] = {}
35
+
36
+ if header.nil?
37
+ @columns[name][:header] = name.titleize
38
+ else
39
+ @columns[name][:header] = header
40
+ end
41
+ @columns[name][:field] = field
42
+ @columns[name][:footer] = footer if footer
43
+
44
+ if field.respond_to?(:call)
45
+ _params = field.parameters.to_combined_h
46
+ @parameters << _params[:key] if _params[:key]
47
+ end
48
+
49
+ self
50
+ end
51
+
52
+ end
@@ -0,0 +1,42 @@
1
+ module RailsData::Import
2
+
3
+ # extend RailsData::Import
4
+ # config do
5
+ # model BankPayment
6
+ # column :amount, header: 'My name', field: -> {}
7
+ # column :email, header: 'Email', field: -> {}
8
+ # end
9
+ attr_reader :record, :columns
10
+
11
+ def config(&block)
12
+ block.call if block_given?
13
+ end
14
+
15
+ def model(class_name)
16
+ if class_name.respond_to?(:ancestors) && class_name.ancestors.include?(ActiveRecord::Base)
17
+ @record = class_name
18
+ else
19
+ raise 'The collection must be a subclass of ActiveRecord::Base'
20
+ end
21
+ end
22
+
23
+ def column(name, header: nil, field: nil)
24
+ @columns ||= {}
25
+ name = name.to_sym
26
+
27
+ @columns[name] = {}
28
+
29
+ if header.is_a?(String) && header.size > 0
30
+ @columns[name][:header] = header
31
+ else
32
+ warn 'wrong header type'
33
+ end
34
+
35
+ if field.respond_to?(:call)
36
+ @columns[name][:field] = field
37
+ end
38
+
39
+ self
40
+ end
41
+
42
+ end
@@ -0,0 +1,42 @@
1
+ module RailsData::Record
2
+
3
+ # extend RailsData::Record
4
+ # config do
5
+ # object -> { Order.find order_id }
6
+ # column :amount, header: 'My name', field: -> {}
7
+ # column :email, header: 'Email', field: -> {}
8
+ # end
9
+ attr_reader :record, :columns
10
+
11
+ def config(*args, &block)
12
+ block.call(*args) if block_given?
13
+ end
14
+
15
+ def object(object)
16
+ if object.respond_to?(:call)
17
+ @record = object
18
+ else
19
+ raise 'The Record must be callable'
20
+ end
21
+ end
22
+
23
+ def column(name, field: nil, as: nil)
24
+ @columns ||= {}
25
+ name = name.to_sym
26
+
27
+ @columns[name] = {}
28
+
29
+ if field.respond_to?(:call)
30
+ @columns[name][:field] = field
31
+ end
32
+
33
+ if as
34
+ @columns[name][:as] = as
35
+ else
36
+ @columns[name][:as] = 'string'
37
+ end
38
+
39
+ @columns
40
+ end
41
+
42
+ end
@@ -0,0 +1,3 @@
1
+ module RailsData
2
+ VERSION = '0.0.1'
3
+ end
data/lib/rails_data.rb ADDED
@@ -0,0 +1,5 @@
1
+ require 'rails_data/engine'
2
+ require 'rails_data/config'
3
+ require 'rails_data/export'
4
+ require 'rails_data/import'
5
+ require 'rails_data/record'
@@ -0,0 +1,48 @@
1
+ require 'test_helper'
2
+
3
+ class DataRecordsControllerTest < ActionDispatch::IntegrationTest
4
+ setup do
5
+ @data_record = data_records(:one)
6
+ end
7
+
8
+ test "should get index" do
9
+ get data_records_url
10
+ assert_response :success
11
+ end
12
+
13
+ test "should get new" do
14
+ get new_data_record_url
15
+ assert_response :success
16
+ end
17
+
18
+ test "should create data_record" do
19
+ assert_difference('DataRecord.count') do
20
+ post data_records_url, params: { data_record: { } }
21
+ end
22
+
23
+ assert_redirected_to data_record_url(DataRecord.last)
24
+ end
25
+
26
+ test "should show data_record" do
27
+ get data_record_url(@data_record)
28
+ assert_response :success
29
+ end
30
+
31
+ test "should get edit" do
32
+ get edit_data_record_url(@data_record)
33
+ assert_response :success
34
+ end
35
+
36
+ test "should update data_record" do
37
+ patch data_record_url(@data_record), params: { data_record: { } }
38
+ assert_redirected_to data_record_url(@data_record)
39
+ end
40
+
41
+ test "should destroy data_record" do
42
+ assert_difference('DataRecord.count', -1) do
43
+ delete data_record_url(@data_record)
44
+ end
45
+
46
+ assert_redirected_to data_records_url
47
+ end
48
+ end
@@ -0,0 +1,49 @@
1
+ require 'test_helper'
2
+ class RailsData::ReportListsControllerTest < ActionController::TestCase
3
+
4
+ setup do
5
+ @report_list = create :report_list
6
+ end
7
+
8
+ test "should get index" do
9
+ get :index
10
+ assert_response :success
11
+ assert_not_nil assigns(:data_lists)
12
+ end
13
+
14
+ test "should get new" do
15
+ get :new
16
+ assert_response :success
17
+ end
18
+
19
+ test "should create report_list" do
20
+ assert_difference('TableList.count') do
21
+ post :create, report_list: { }
22
+ end
23
+
24
+ assert_redirected_to report_list_path(assigns(:report_list))
25
+ end
26
+
27
+ test "should show report_list" do
28
+ get :show, id: @report_list
29
+ assert_response :success
30
+ end
31
+
32
+ test "should get edit" do
33
+ get :edit, id: @report_list
34
+ assert_response :success
35
+ end
36
+
37
+ test "should update report_list" do
38
+ patch :update, id: @report_list, report_list: { }
39
+ assert_redirected_to report_list_path(assigns(:report_list))
40
+ end
41
+
42
+ test "should destroy report_list" do
43
+ assert_difference('TableList.count', -1) do
44
+ delete :destroy, id: @report_list
45
+ end
46
+
47
+ assert_redirected_to report_lists_path
48
+ end
49
+ end
@@ -0,0 +1,49 @@
1
+ require 'test_helper'
2
+
3
+ class RailsData::TableListsControllerTest < ActionController::TestCase
4
+ setup do
5
+ @table_list = create :table_list
6
+ end
7
+
8
+ test "should get index" do
9
+ get :index
10
+ assert_response :success
11
+ assert_not_nil assigns(:table_lists)
12
+ end
13
+
14
+ test "should get new" do
15
+ get :new
16
+ assert_response :success
17
+ end
18
+
19
+ test "should create table_list" do
20
+ assert_difference('TableList.count') do
21
+ post :create, table_list: { }
22
+ end
23
+
24
+ assert_redirected_to table_list_path(assigns(:table_list))
25
+ end
26
+
27
+ test "should show table_list" do
28
+ get :show, id: @table_list
29
+ assert_response :success
30
+ end
31
+
32
+ test "should get edit" do
33
+ get :edit, id: @table_list
34
+ assert_response :success
35
+ end
36
+
37
+ test "should update table_list" do
38
+ patch :update, id: @table_list, table_list: { }
39
+ assert_redirected_to table_list_path(assigns(:table_list))
40
+ end
41
+
42
+ test "should destroy table_list" do
43
+ assert_difference('TableList.count', -1) do
44
+ delete :destroy, id: @table_list
45
+ end
46
+
47
+ assert_redirected_to table_lists_path
48
+ end
49
+ end
@@ -0,0 +1,7 @@
1
+ FactoryGirl.define do
2
+
3
+ factory :combine do
4
+
5
+ end
6
+
7
+ end
@@ -0,0 +1,14 @@
1
+ FactoryGirl.define do
2
+
3
+ factory :user do
4
+
5
+ end
6
+
7
+ factory :report_list do
8
+ association :reportable, factory: :user
9
+ reportable_type 'User'
10
+ reportable_id 1
11
+ reportable_name 'user_test'
12
+ end
13
+
14
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ factory :table_item do
3
+
4
+ end
5
+
6
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ factory :table_list do
3
+
4
+ end
5
+
6
+ end
@@ -0,0 +1,10 @@
1
+ require 'test_helper'
2
+
3
+ class NavigationTest < ActionDispatch::IntegrationTest
4
+ fixtures :all
5
+
6
+ # test "the truth" do
7
+ # assert true
8
+ # end
9
+ end
10
+
@@ -0,0 +1,10 @@
1
+ require 'test_helper'
2
+
3
+ class ReportListTest < ActiveSupport::TestCase
4
+
5
+
6
+ test 'create_model' do
7
+ report_list = create :report_list
8
+ end
9
+
10
+ end
@@ -0,0 +1,41 @@
1
+ require "application_system_test_case"
2
+
3
+ class DataRecordsTest < ApplicationSystemTestCase
4
+ setup do
5
+ @data_record = data_records(:one)
6
+ end
7
+
8
+ test "visiting the index" do
9
+ visit data_records_url
10
+ assert_selector "h1", text: "Data Records"
11
+ end
12
+
13
+ test "creating a Data record" do
14
+ visit data_records_url
15
+ click_on "New Data Record"
16
+
17
+ click_on "Create Data record"
18
+
19
+ assert_text "Data record was successfully created"
20
+ click_on "Back"
21
+ end
22
+
23
+ test "updating a Data record" do
24
+ visit data_records_url
25
+ click_on "Edit", match: :first
26
+
27
+ click_on "Update Data record"
28
+
29
+ assert_text "Data record was successfully updated"
30
+ click_on "Back"
31
+ end
32
+
33
+ test "destroying a Data record" do
34
+ visit data_records_url
35
+ page.accept_confirm do
36
+ click_on "Destroy", match: :first
37
+ end
38
+
39
+ assert_text "Data record was successfully destroyed"
40
+ end
41
+ end
@@ -0,0 +1,21 @@
1
+ # Configure Rails Environment
2
+ ENV["RAILS_ENV"] = "test"
3
+
4
+ require File.expand_path("../../test/dummy/config/environment.rb", __FILE__)
5
+ ActiveRecord::Migrator.migrations_paths = [File.expand_path("../../test/dummy/db/migrate", __FILE__)]
6
+ ActiveRecord::Migrator.migrations_paths << File.expand_path('../../db/migrate', __FILE__)
7
+ require "rails/test_help"
8
+
9
+ # Filter out Minitest backtrace while allowing backtrace from other libraries
10
+ # to be shown.
11
+ Minitest.backtrace_filter = Minitest::BacktraceFilter.new
12
+
13
+ # Load support files
14
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
15
+
16
+ class ActiveSupport::TestCase
17
+ include FactoryGirl::Syntax::Methods
18
+ end
19
+
20
+ FactoryGirl.definition_file_paths << RailsData::Engine.root.join('test', 'factories')
21
+ FactoryGirl.find_definitions
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class RailsDataTest < ActiveSupport::TestCase
4
+ test "truth" do
5
+ assert_kind_of Module, RailsData
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,247 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rails_data
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - qinmingyuan
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-09-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '5.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '5.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: write_xlsx
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.83.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.83.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: roo
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: roo-xls
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: prawn
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: prawn-table
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ description: Description of TheData.
98
+ email:
99
+ - mingyuan0715@foxmail.com
100
+ executables: []
101
+ extensions: []
102
+ extra_rdoc_files: []
103
+ files:
104
+ - LICENSE
105
+ - README.md
106
+ - Rakefile
107
+ - app/assets/config/rails_data_manifest.js
108
+ - app/assets/javascripts/channels/done.js
109
+ - app/assets/javascripts/controllers/the_data_admin/data_lists/edit.js
110
+ - app/assets/javascripts/controllers/the_data_admin/data_lists/new.js
111
+ - app/assets/javascripts/controllers/the_data_admin/table_lists/index.js
112
+ - app/channels/done_channel.rb
113
+ - app/channels/rails_data_connection.rb
114
+ - app/controllers/rails_data_admin/base_controller.rb
115
+ - app/controllers/rails_data_admin/data_lists_controller.rb
116
+ - app/controllers/rails_data_admin/data_records_controller.rb
117
+ - app/controllers/rails_data_admin/record_lists_controller.rb
118
+ - app/controllers/rails_data_admin/table_lists_controller.rb
119
+ - app/helpers/data_records_helper.rb
120
+ - app/helpers/rails_data_helper.rb
121
+ - app/jobs/table_job.rb
122
+ - app/mailers/report_finish_mailer.rb
123
+ - app/models/rails_data/concerns/data_cache_service.rb
124
+ - app/models/rails_data/concerns/data_export_helper.rb
125
+ - app/models/rails_data/concerns/data_import_helper.rb
126
+ - app/models/rails_data/concerns/data_import_service.rb
127
+ - app/models/rails_data/data_list.rb
128
+ - app/models/rails_data/data_lists/data_export.rb
129
+ - app/models/rails_data/data_lists/data_import.rb
130
+ - app/models/rails_data/data_lists/data_record.rb
131
+ - app/models/rails_data/export_services/csv_export_service.rb
132
+ - app/models/rails_data/export_services/pdf_export_service.rb
133
+ - app/models/rails_data/export_services/xlsx_export_service.rb
134
+ - app/models/rails_data/record_list.rb
135
+ - app/models/rails_data/table_item.rb
136
+ - app/models/rails_data/table_list.rb
137
+ - app/pdfs/concerns/pdf_page_helper.rb
138
+ - app/pdfs/concerns/pdf_table_helper.rb
139
+ - app/pdfs/concerns/pdf_text_helper.rb
140
+ - app/pdfs/rails_data_pdf.rb
141
+ - app/views/rails_data_admin/base/_nav.html.erb
142
+ - app/views/rails_data_admin/data_lists/_item_form.html.erb
143
+ - app/views/rails_data_admin/data_lists/add_item.js.erb
144
+ - app/views/rails_data_admin/data_lists/edit.html.erb
145
+ - app/views/rails_data_admin/data_lists/index.html.erb
146
+ - app/views/rails_data_admin/data_lists/new.html.erb
147
+ - app/views/rails_data_admin/data_lists/remove_item.js.erb
148
+ - app/views/rails_data_admin/data_lists/reportable.html.erb
149
+ - app/views/rails_data_admin/data_lists/show.html.erb
150
+ - app/views/rails_data_admin/data_records/_item_form.html.erb
151
+ - app/views/rails_data_admin/data_records/add_item.js.erb
152
+ - app/views/rails_data_admin/data_records/edit.html.erb
153
+ - app/views/rails_data_admin/data_records/index.html.erb
154
+ - app/views/rails_data_admin/data_records/new.html.erb
155
+ - app/views/rails_data_admin/data_records/remove_item.js.erb
156
+ - app/views/rails_data_admin/data_records/reportable.html.erb
157
+ - app/views/rails_data_admin/data_records/show.html.erb
158
+ - app/views/rails_data_admin/record_lists/_edit_columns.html.erb
159
+ - app/views/rails_data_admin/record_lists/_edit_table.erb
160
+ - app/views/rails_data_admin/record_lists/_index.html.erb
161
+ - app/views/rails_data_admin/record_lists/_search_form.html.erb
162
+ - app/views/rails_data_admin/record_lists/_show.html.erb
163
+ - app/views/rails_data_admin/record_lists/_table.html.erb
164
+ - app/views/rails_data_admin/record_lists/edit.html.erb
165
+ - app/views/rails_data_admin/record_lists/edit_columns.html.erb
166
+ - app/views/rails_data_admin/record_lists/edit_columns.js.erb
167
+ - app/views/rails_data_admin/record_lists/find.js.erb
168
+ - app/views/rails_data_admin/record_lists/index.html.erb
169
+ - app/views/rails_data_admin/record_lists/new.html.erb
170
+ - app/views/rails_data_admin/record_lists/show.html.erb
171
+ - app/views/rails_data_admin/record_lists/show.js.erb
172
+ - app/views/rails_data_admin/record_lists/update_columns.js.erb
173
+ - app/views/rails_data_admin/table_lists/_import.html.erb
174
+ - app/views/rails_data_admin/table_lists/_index.html.erb
175
+ - app/views/rails_data_admin/table_lists/_process.html.erb
176
+ - app/views/rails_data_admin/table_lists/_show.html.erb
177
+ - app/views/rails_data_admin/table_lists/_table.html.erb
178
+ - app/views/rails_data_admin/table_lists/create_import.js.erb
179
+ - app/views/rails_data_admin/table_lists/edit.html.erb
180
+ - app/views/rails_data_admin/table_lists/find.js.erb
181
+ - app/views/rails_data_admin/table_lists/index.html.erb
182
+ - app/views/rails_data_admin/table_lists/new.html.erb
183
+ - app/views/rails_data_admin/table_lists/new_import.js.erb
184
+ - app/views/rails_data_admin/table_lists/run.js.erb
185
+ - app/views/rails_data_admin/table_lists/show.html.erb
186
+ - app/views/report_finish_mailer/finish_notify.text.erb
187
+ - config/initializers/the_data.rb
188
+ - config/locales/en.yml
189
+ - config/locales/zh.yml
190
+ - config/routes.rb
191
+ - db/migrate/20150618053929_create_report_lists.rb
192
+ - lib/rails_data.rb
193
+ - lib/rails_data/config.rb
194
+ - lib/rails_data/engine.rb
195
+ - lib/rails_data/export.rb
196
+ - lib/rails_data/import.rb
197
+ - lib/rails_data/record.rb
198
+ - lib/rails_data/version.rb
199
+ - test/controllers/data_records_controller_test.rb
200
+ - test/controllers/rails_data_admin/report_lists_controller_test.rb
201
+ - test/controllers/rails_data_admin/table_lists_controller_test.rb
202
+ - test/factories/combines.rb
203
+ - test/factories/report_lists.rb
204
+ - test/factories/table_items.rb
205
+ - test/factories/table_lists.rb
206
+ - test/integration/navigation_test.rb
207
+ - test/models/data_list_test.rb
208
+ - test/system/data_records_test.rb
209
+ - test/test_helper.rb
210
+ - test/the_data_test.rb
211
+ homepage: https://github.com/yougexiangfa/the_data
212
+ licenses:
213
+ - LGPL-3.0
214
+ metadata: {}
215
+ post_install_message:
216
+ rdoc_options: []
217
+ require_paths:
218
+ - lib
219
+ required_ruby_version: !ruby/object:Gem::Requirement
220
+ requirements:
221
+ - - ">="
222
+ - !ruby/object:Gem::Version
223
+ version: '0'
224
+ required_rubygems_version: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - ">="
227
+ - !ruby/object:Gem::Version
228
+ version: '0'
229
+ requirements: []
230
+ rubyforge_project:
231
+ rubygems_version: 2.7.7
232
+ signing_key:
233
+ specification_version: 4
234
+ summary: Data Import & Export for Rails
235
+ test_files:
236
+ - test/integration/navigation_test.rb
237
+ - test/models/data_list_test.rb
238
+ - test/the_data_test.rb
239
+ - test/system/data_records_test.rb
240
+ - test/factories/table_lists.rb
241
+ - test/factories/combines.rb
242
+ - test/factories/report_lists.rb
243
+ - test/factories/table_items.rb
244
+ - test/test_helper.rb
245
+ - test/controllers/rails_data_admin/report_lists_controller_test.rb
246
+ - test/controllers/rails_data_admin/table_lists_controller_test.rb
247
+ - test/controllers/data_records_controller_test.rb