enju_circulation 0.3.7 → 0.3.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/checkins_controller.rb +2 -2
  3. data/app/controllers/checkouts_controller.rb +2 -2
  4. data/app/controllers/demands_controller.rb +1 -1
  5. data/app/controllers/manifestation_checkout_stats_controller.rb +2 -2
  6. data/app/controllers/manifestation_reserve_stats_controller.rb +2 -2
  7. data/app/controllers/reserves_controller.rb +2 -2
  8. data/app/controllers/user_checkout_stats_controller.rb +2 -2
  9. data/app/controllers/user_reserve_stats_controller.rb +2 -2
  10. data/app/models/checkin.rb +1 -1
  11. data/app/models/checkout.rb +2 -2
  12. data/app/models/checkout_stat_has_user.rb +1 -1
  13. data/app/models/concerns/enju_circulation/enju_item.rb +2 -0
  14. data/app/models/lending_policy.rb +3 -3
  15. data/app/models/manifestation_checkout_stat_transition.rb +1 -1
  16. data/app/models/manifestation_reserve_stat_transition.rb +1 -1
  17. data/app/models/reserve.rb +4 -4
  18. data/app/models/reserve_state_machine.rb +2 -3
  19. data/app/models/reserve_transition.rb +1 -1
  20. data/app/models/user_checkout_stat_transition.rb +1 -1
  21. data/app/models/user_group_has_checkout_type.rb +6 -6
  22. data/app/models/user_reserve_stat_transition.rb +1 -1
  23. data/app/views/checkouts/{index.txt.ruby → index.text.ruby} +0 -0
  24. data/app/views/manifestation_checkout_stats/{show.txt.erb → show.text.erb} +0 -0
  25. data/app/views/manifestation_reserve_stats/{show.txt.erb → show.text.erb} +0 -0
  26. data/app/views/reserves/{index.txt.ruby → index.text.ruby} +0 -0
  27. data/app/views/user_checkout_stats/{show.txt.erb → show.text.erb} +0 -0
  28. data/app/views/user_reserve_stats/{show.txt.erb → show.text.erb} +0 -0
  29. data/lib/enju_circulation/version.rb +1 -1
  30. data/lib/generators/enju_circulation/setup/setup_generator.rb +0 -5
  31. data/spec/controllers/checkins_controller_spec.rb +130 -8
  32. data/spec/controllers/checkouts_controller_spec.rb +5 -5
  33. data/spec/controllers/reserves_controller_spec.rb +9 -9
  34. data/spec/controllers/withdraws_controller_spec.rb +26 -0
  35. data/spec/dummy/db/migrate/20200425072340_create_manifestation_custom_properties.rb +12 -0
  36. data/spec/dummy/db/migrate/20200425072349_create_item_custom_properties.rb +12 -0
  37. data/spec/dummy/db/migrate/20200425074758_create_manifestation_custom_values.rb +12 -0
  38. data/spec/dummy/db/migrate/20200425074822_create_item_custom_values.rb +12 -0
  39. data/spec/dummy/db/schema.rb +43 -10
  40. data/spec/fixtures/checkins.yml +1 -1
  41. data/spec/fixtures/checkout_stat_has_users.yml +1 -1
  42. data/spec/fixtures/checkouts.yml +2 -2
  43. data/spec/fixtures/lending_policies.yml +3 -3
  44. data/spec/fixtures/reserve_transitions.yml +1 -1
  45. data/spec/fixtures/reserves.yml +3 -3
  46. data/spec/fixtures/user_group_has_checkout_types.yml +6 -6
  47. data/spec/models/checkin_spec.rb +1 -1
  48. data/spec/models/checkout_spec.rb +2 -2
  49. data/spec/models/checkout_stat_has_user_spec.rb +1 -1
  50. data/spec/models/lending_policy_spec.rb +3 -3
  51. data/spec/models/reserve_spec.rb +3 -3
  52. data/spec/models/user_group_has_checkout_type_spec.rb +6 -6
  53. data/spec/system/reserves_spec.rb +1 -1
  54. metadata +391 -361
  55. data/spec/dummy/db/migrate/20191219122214_create_custom_properties.rb +0 -12
@@ -0,0 +1,12 @@
1
+ class CreateManifestationCustomProperties < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :manifestation_custom_properties do |t|
4
+ t.string :name, null: false, comment: 'ラベル名', index: {unique: true}
5
+ t.text :display_name, null: false, comment: '表示名'
6
+ t.text :note, comment: '備考'
7
+ t.integer :position, default: 1, null: false
8
+
9
+ t.timestamps
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class CreateItemCustomProperties < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :item_custom_properties do |t|
4
+ t.string :name, null: false, comment: 'ラベル名', index: {unique: true}
5
+ t.text :display_name, null: false, comment: '表示名'
6
+ t.text :note, comment: '備考'
7
+ t.integer :position, default: 1, null: false
8
+
9
+ t.timestamps
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class CreateManifestationCustomValues < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :manifestation_custom_values do |t|
4
+ t.references :manifestation_custom_property, null: false, foreign_key: true, index: {name: 'index_manifestation_custom_values_on_custom_property_id'}
5
+ t.references :manifestation, null: false, foreign_key: true
6
+ t.text :value
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :manifestation_custom_values, [:manifestation_custom_property_id, :manifestation_id], unique: true, name: 'index_manifestation_custom_values_on_property_manifestation'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class CreateItemCustomValues < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :item_custom_values do |t|
4
+ t.references :item_custom_property, null: false, foreign_key: true, index: {name: 'index_item_custom_values_on_custom_property_id'}
5
+ t.references :item, null: false, foreign_key: true
6
+ t.text :value
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :item_custom_values, [:item_custom_property_id, :item_id], unique: true, name: 'index_item_custom_values_on_custom_item_property_and_item_id'
11
+ end
12
+ end
@@ -10,7 +10,7 @@
10
10
  #
11
11
  # It's strongly recommended that you check this file into your version control system.
12
12
 
13
- ActiveRecord::Schema.define(version: 2019_12_19_122214) do
13
+ ActiveRecord::Schema.define(version: 2020_04_25_074822) do
14
14
 
15
15
  create_table "accepts", force: :cascade do |t|
16
16
  t.integer "basket_id"
@@ -361,15 +361,6 @@ ActiveRecord::Schema.define(version: 2019_12_19_122214) do
361
361
  t.index ["work_id"], name: "index_creates_on_work_id"
362
362
  end
363
363
 
364
- create_table "custom_properties", force: :cascade do |t|
365
- t.integer "resource_id", null: false
366
- t.string "resource_type", null: false
367
- t.text "label", null: false
368
- t.text "value"
369
- t.datetime "created_at", null: false
370
- t.datetime "updated_at", null: false
371
- end
372
-
373
364
  create_table "demands", force: :cascade do |t|
374
365
  t.integer "user_id"
375
366
  t.integer "item_id"
@@ -552,6 +543,27 @@ ActiveRecord::Schema.define(version: 2019_12_19_122214) do
552
543
  t.index ["user_id"], name: "index_import_requests_on_user_id"
553
544
  end
554
545
 
546
+ create_table "item_custom_properties", force: :cascade do |t|
547
+ t.string "name", null: false
548
+ t.text "display_name", null: false
549
+ t.text "note"
550
+ t.integer "position", default: 1, null: false
551
+ t.datetime "created_at", null: false
552
+ t.datetime "updated_at", null: false
553
+ t.index ["name"], name: "index_item_custom_properties_on_name", unique: true
554
+ end
555
+
556
+ create_table "item_custom_values", force: :cascade do |t|
557
+ t.integer "item_custom_property_id", null: false
558
+ t.integer "item_id", null: false
559
+ t.text "value"
560
+ t.datetime "created_at", null: false
561
+ t.datetime "updated_at", null: false
562
+ t.index ["item_custom_property_id", "item_id"], name: "index_item_custom_values_on_custom_item_property_and_item_id", unique: true
563
+ t.index ["item_custom_property_id"], name: "index_item_custom_values_on_custom_property_id"
564
+ t.index ["item_id"], name: "index_item_custom_values_on_item_id"
565
+ end
566
+
555
567
  create_table "item_has_use_restrictions", force: :cascade do |t|
556
568
  t.integer "item_id", null: false
557
569
  t.integer "use_restriction_id", null: false
@@ -729,6 +741,27 @@ ActiveRecord::Schema.define(version: 2019_12_19_122214) do
729
741
  t.index ["user_id"], name: "index_manifestation_checkout_stats_on_user_id"
730
742
  end
731
743
 
744
+ create_table "manifestation_custom_properties", force: :cascade do |t|
745
+ t.string "name", null: false
746
+ t.text "display_name", null: false
747
+ t.text "note"
748
+ t.integer "position", default: 1, null: false
749
+ t.datetime "created_at", null: false
750
+ t.datetime "updated_at", null: false
751
+ t.index ["name"], name: "index_manifestation_custom_properties_on_name", unique: true
752
+ end
753
+
754
+ create_table "manifestation_custom_values", force: :cascade do |t|
755
+ t.integer "manifestation_custom_property_id", null: false
756
+ t.integer "manifestation_id", null: false
757
+ t.text "value"
758
+ t.datetime "created_at", null: false
759
+ t.datetime "updated_at", null: false
760
+ t.index ["manifestation_custom_property_id", "manifestation_id"], name: "index_manifestation_custom_values_on_property_manifestation", unique: true
761
+ t.index ["manifestation_custom_property_id"], name: "index_manifestation_custom_values_on_custom_property_id"
762
+ t.index ["manifestation_id"], name: "index_manifestation_custom_values_on_manifestation_id"
763
+ end
764
+
732
765
  create_table "manifestation_relationship_types", force: :cascade do |t|
733
766
  t.string "name", null: false
734
767
  t.text "display_name"
@@ -50,5 +50,5 @@ checkin_00005:
50
50
  # basket_id :integer
51
51
  # created_at :datetime
52
52
  # updated_at :datetime
53
- # lock_version :integer default(0), not null
53
+ # lock_version :integer default("0"), not null
54
54
  #
@@ -17,7 +17,7 @@ two:
17
17
  # id :integer not null, primary key
18
18
  # user_checkout_stat_id :integer not null
19
19
  # user_id :integer not null
20
- # checkouts_count :integer default(0), not null
20
+ # checkouts_count :integer default("0"), not null
21
21
  # created_at :datetime
22
22
  # updated_at :datetime
23
23
  #
@@ -167,8 +167,8 @@ checkout_00014:
167
167
  # librarian_id :integer
168
168
  # basket_id :integer
169
169
  # due_date :datetime
170
- # checkout_renewal_count :integer default(0), not null
171
- # lock_version :integer default(0), not null
170
+ # checkout_renewal_count :integer default("0"), not null
171
+ # lock_version :integer default("0"), not null
172
172
  # created_at :datetime
173
173
  # updated_at :datetime
174
174
  # shelf_id :integer
@@ -87,10 +87,10 @@ lending_policy_00009:
87
87
  # id :integer not null, primary key
88
88
  # item_id :integer not null
89
89
  # user_group_id :integer not null
90
- # loan_period :integer default(0), not null
90
+ # loan_period :integer default("0"), not null
91
91
  # fixed_due_date :datetime
92
- # renewal :integer default(0), not null
93
- # fine :integer default(0), not null
92
+ # renewal :integer default("0"), not null
93
+ # fine :integer default("0"), not null
94
94
  # note :text
95
95
  # position :integer
96
96
  # created_at :datetime
@@ -95,7 +95,7 @@ reserve_transition_00015:
95
95
  #
96
96
  # id :integer not null, primary key
97
97
  # to_state :string
98
- # metadata :text default({})
98
+ # metadata :text default("{}")
99
99
  # sort_key :integer
100
100
  # reserve_id :integer
101
101
  # created_at :datetime
@@ -154,10 +154,10 @@ reserve_00015:
154
154
  # canceled_at :datetime
155
155
  # expired_at :datetime
156
156
  # deleted_at :datetime
157
- # expiration_notice_to_patron :boolean default(FALSE)
158
- # expiration_notice_to_library :boolean default(FALSE)
157
+ # expiration_notice_to_patron :boolean default("0")
158
+ # expiration_notice_to_library :boolean default("0")
159
159
  # pickup_location_id :integer
160
160
  # retained_at :datetime
161
161
  # postponed_at :datetime
162
- # lock_version :integer default(0), not null
162
+ # lock_version :integer default("0"), not null
163
163
  #
@@ -95,12 +95,12 @@ user_group_has_checkout_type_00008:
95
95
  # id :integer not null, primary key
96
96
  # user_group_id :integer not null
97
97
  # checkout_type_id :integer not null
98
- # checkout_limit :integer default(0), not null
99
- # checkout_period :integer default(0), not null
100
- # checkout_renewal_limit :integer default(0), not null
101
- # reservation_limit :integer default(0), not null
102
- # reservation_expired_period :integer default(7), not null
103
- # set_due_date_before_closing_day :boolean default(FALSE), not null
98
+ # checkout_limit :integer default("0"), not null
99
+ # checkout_period :integer default("0"), not null
100
+ # checkout_renewal_limit :integer default("0"), not null
101
+ # reservation_limit :integer default("0"), not null
102
+ # reservation_expired_period :integer default("7"), not null
103
+ # set_due_date_before_closing_day :boolean default("0"), not null
104
104
  # fixed_due_date :datetime
105
105
  # note :text
106
106
  # position :integer
@@ -45,5 +45,5 @@ end
45
45
  # basket_id :integer
46
46
  # created_at :datetime
47
47
  # updated_at :datetime
48
- # lock_version :integer default(0), not null
48
+ # lock_version :integer default("0"), not null
49
49
  #
@@ -68,8 +68,8 @@ end
68
68
  # librarian_id :integer
69
69
  # basket_id :integer
70
70
  # due_date :datetime
71
- # checkout_renewal_count :integer default(0), not null
72
- # lock_version :integer default(0), not null
71
+ # checkout_renewal_count :integer default("0"), not null
72
+ # lock_version :integer default("0"), not null
73
73
  # created_at :datetime
74
74
  # updated_at :datetime
75
75
  # shelf_id :integer
@@ -12,7 +12,7 @@ end
12
12
  # id :integer not null, primary key
13
13
  # user_checkout_stat_id :integer not null
14
14
  # user_id :integer not null
15
- # checkouts_count :integer default(0), not null
15
+ # checkouts_count :integer default("0"), not null
16
16
  # created_at :datetime
17
17
  # updated_at :datetime
18
18
  #
@@ -12,10 +12,10 @@ end
12
12
  # id :integer not null, primary key
13
13
  # item_id :integer not null
14
14
  # user_group_id :integer not null
15
- # loan_period :integer default(0), not null
15
+ # loan_period :integer default("0"), not null
16
16
  # fixed_due_date :datetime
17
- # renewal :integer default(0), not null
18
- # fine :integer default(0), not null
17
+ # renewal :integer default("0"), not null
18
+ # fine :integer default("0"), not null
19
19
  # note :text
20
20
  # position :integer
21
21
  # created_at :datetime
@@ -147,10 +147,10 @@ end
147
147
  # canceled_at :datetime
148
148
  # expired_at :datetime
149
149
  # deleted_at :datetime
150
- # expiration_notice_to_patron :boolean default(FALSE)
151
- # expiration_notice_to_library :boolean default(FALSE)
150
+ # expiration_notice_to_patron :boolean default("0")
151
+ # expiration_notice_to_library :boolean default("0")
152
152
  # pickup_location_id :integer
153
153
  # retained_at :datetime
154
154
  # postponed_at :datetime
155
- # lock_version :integer default(0), not null
155
+ # lock_version :integer default("0"), not null
156
156
  #
@@ -32,12 +32,12 @@ end
32
32
  # id :integer not null, primary key
33
33
  # user_group_id :integer not null
34
34
  # checkout_type_id :integer not null
35
- # checkout_limit :integer default(0), not null
36
- # checkout_period :integer default(0), not null
37
- # checkout_renewal_limit :integer default(0), not null
38
- # reservation_limit :integer default(0), not null
39
- # reservation_expired_period :integer default(7), not null
40
- # set_due_date_before_closing_day :boolean default(FALSE), not null
35
+ # checkout_limit :integer default("0"), not null
36
+ # checkout_period :integer default("0"), not null
37
+ # checkout_renewal_limit :integer default("0"), not null
38
+ # reservation_limit :integer default("0"), not null
39
+ # reservation_expired_period :integer default("7"), not null
40
+ # set_due_date_before_closing_day :boolean default("0"), not null
41
41
  # fixed_due_date :datetime
42
42
  # note :text
43
43
  # position :integer
@@ -7,7 +7,7 @@ RSpec.describe 'Reserves', type: :system do
7
7
  describe 'When logged in as Librarian' do
8
8
  it 'should contain user information' do
9
9
  sign_in users(:librarian1)
10
- visit reserves_path(format: :txt)
10
+ visit reserves_path(format: :text)
11
11
  expect(page).to have_content reserves(:reserve_00001).user.username
12
12
  expect(page).to have_content reserves(:reserve_00001).manifestation.original_title
13
13
  end