enju_circulation 0.1.0.pre27 → 0.1.0.pre28

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 (37) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/lending_policies_controller.rb +1 -1
  3. data/app/models/checkin.rb +2 -1
  4. data/app/models/checkout.rb +13 -3
  5. data/app/models/lending_policy.rb +1 -1
  6. data/app/models/reserve.rb +3 -0
  7. data/app/views/checked_items/edit.html.erb +1 -0
  8. data/db/migrate/20090831220301_create_lending_policies.rb +1 -1
  9. data/db/migrate/20130519065638_add_lock_version_to_reserve.rb +5 -0
  10. data/db/migrate/20130519065837_add_lock_version_to_checkin.rb +5 -0
  11. data/lib/enju_circulation/version.rb +1 -1
  12. data/spec/controllers/checkins_controller_spec.rb +7 -20
  13. data/spec/controllers/checkouts_controller_spec.rb +0 -15
  14. data/spec/controllers/reserves_controller_spec.rb +0 -20
  15. data/spec/dummy/app/controllers/application_controller.rb +1 -114
  16. data/spec/dummy/config/application.rb +2 -3
  17. data/spec/dummy/db/development.sqlite3 +0 -0
  18. data/spec/dummy/db/schema.rb +13 -11
  19. data/spec/dummy/db/test.sqlite3 +0 -0
  20. data/spec/dummy/solr/data/test/index/{_22w.fdt → _2fp.fdt} +0 -0
  21. data/spec/dummy/solr/data/test/index/{_22w.fdx → _2fp.fdx} +0 -0
  22. data/spec/dummy/solr/data/test/index/{_22w.fnm → _2fp.fnm} +0 -0
  23. data/spec/dummy/solr/data/test/index/{_22w.frq → _2fp.frq} +0 -0
  24. data/spec/dummy/solr/data/test/index/{_22w.nrm → _2fp.nrm} +0 -0
  25. data/spec/dummy/solr/data/test/index/{_22w.prx → _2fp.prx} +0 -0
  26. data/spec/dummy/solr/data/test/index/{_22w.tii → _2fp.tii} +0 -0
  27. data/spec/dummy/solr/data/test/index/{_22w.tis → _2fp.tis} +0 -0
  28. data/spec/dummy/solr/data/test/index/segments.gen +0 -0
  29. data/spec/dummy/solr/data/test/index/{segments_45l → segments_4v7} +0 -0
  30. data/spec/fixtures/checkins.yml +6 -0
  31. data/spec/fixtures/circulation_statuses.yml +14 -0
  32. data/spec/fixtures/lending_policies.yml +1 -1
  33. data/spec/fixtures/reserves.yml +18 -1
  34. data/spec/models/checkin_spec.rb +1 -0
  35. data/spec/models/lending_policy_spec.rb +1 -1
  36. data/spec/models/reserve_spec.rb +3 -0
  37. metadata +38 -22
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8834ec4f322b1607843bc523288d8e66b73042b1
4
- data.tar.gz: 906c4b6cf13c0e5511d1dfdd9211e5083fc56783
3
+ metadata.gz: 7614545d4d02474d17463e6ad8ec31b633fa70b0
4
+ data.tar.gz: bf94c2558f49d871971c52efd33811146cc3c9f9
5
5
  SHA512:
6
- metadata.gz: 58349e1775b6e5f763e34f1523dd6c370923eafc264a8eeaddd39f549c36907fb88a92b804c555f62f16e1b990b75d80a467da55fe6374a3124e136607f2e930
7
- data.tar.gz: 001181fc249806aa564baeb350358936c756db061de28a4f7f887f60d1c72fb40319d2dcc05e720a7fbb4befdb5566315e99ad8e9c54e6a1941ecfe750115040
6
+ metadata.gz: 5654c425686b7f03368d987259de994cb145745f7037947faf02149acda54562cb34f84da81e73ff0ca45f39b84ae73962c4c4b28ed14f2d0cd874bc13f69881
7
+ data.tar.gz: cdb45767a7c3a473cae38ff73b41068ac0cf80525f7b8cefc796ff538c3fd2b7b26a9b4fca99ce56999b622ea95da3e8b6984d948125a7c5ef20067b1a0a6e51
@@ -4,7 +4,7 @@ class LendingPoliciesController < InheritedResources::Base
4
4
  before_filter :prepare_options, :only => [:edit, :update]
5
5
 
6
6
  def index
7
- @lending_policies = @lending_policies.page(params[:page])
7
+ @lending_policies = LendingPolicy.page(params[:page])
8
8
  end
9
9
 
10
10
  private
@@ -45,7 +45,7 @@ class Checkin < ActiveRecord::Base
45
45
  unless checkout.user.try(:save_checkout_history)
46
46
  checkout.user = nil
47
47
  end
48
- checkout.save!
48
+ checkout.save(:validate => false)
49
49
  unless checkout.item.shelf.library == current_user.library
50
50
  message << I18n.t('checkin.other_library_item')
51
51
  end
@@ -95,5 +95,6 @@ end
95
95
  # basket_id :integer
96
96
  # created_at :datetime not null
97
97
  # updated_at :datetime not null
98
+ # lock_version :integer default(0), not null
98
99
  #
99
100
 
@@ -56,14 +56,24 @@ class Checkout < ActiveRecord::Base
56
56
  end
57
57
 
58
58
  def renewable?
59
+ return nil if checkin
60
+ messages = []
59
61
  if !operator and overdue?
60
- errors[:base] << I18n.t('checkout.you_have_overdue_item')
62
+ messages << I18n.t('checkout.you_have_overdue_item')
61
63
  end
62
64
  if !operator and reserved?
63
- errors[:base] << I18n.t('checkout.this_item_is_reserved')
65
+ messages << I18n.t('checkout.this_item_is_reserved')
64
66
  end
65
67
  if !operator and over_checkout_renewal_limit?
66
- errors[:base] << I18n.t('checkout.excessed_renewal_limit')
68
+ messages << I18n.t('checkout.excessed_renewal_limit')
69
+ end
70
+ if messages.empty?
71
+ true
72
+ else
73
+ messages.each do |message|
74
+ errors[:base] << message
75
+ end
76
+ false
67
77
  end
68
78
  end
69
79
 
@@ -24,7 +24,7 @@ end
24
24
  # loan_period :integer default(0), not null
25
25
  # fixed_due_date :datetime
26
26
  # renewal :integer default(0), not null
27
- # fine :decimal(, ) default(0.0), not null
27
+ # fine :integer default(0), not null
28
28
  # note :text
29
29
  # position :integer
30
30
  # created_at :datetime not null
@@ -441,5 +441,8 @@ end
441
441
  # state :string(255)
442
442
  # expiration_notice_to_patron :boolean default(FALSE)
443
443
  # expiration_notice_to_library :boolean default(FALSE)
444
+ # retained_at :datetime
445
+ # postponed_at :datetime
446
+ # lock_version :integer default(0), not null
444
447
  #
445
448
 
@@ -13,6 +13,7 @@
13
13
  </div>
14
14
 
15
15
  <div class="actions">
16
+ <%= f.hidden_field :lock_version %>
16
17
  <%= f.submit %>
17
18
  </div>
18
19
  <%- end -%>
@@ -6,7 +6,7 @@ class CreateLendingPolicies < ActiveRecord::Migration
6
6
  t.integer :loan_period, :default => 0, :null => false
7
7
  t.datetime :fixed_due_date
8
8
  t.integer :renewal, :default => 0, :null => false
9
- t.decimal :fine, :default => 0, :null => false
9
+ t.integer :fine, :default => 0, :null => false
10
10
  t.text :note
11
11
  t.integer :position
12
12
 
@@ -0,0 +1,5 @@
1
+ class AddLockVersionToReserve < ActiveRecord::Migration
2
+ def change
3
+ add_column :reserves, :lock_version, :integer, :default => 0, :null => false
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class AddLockVersionToCheckin < ActiveRecord::Migration
2
+ def change
3
+ add_column :checkins, :lock_version, :integer, :default => 0, :null => false
4
+ end
5
+ end
@@ -1,3 +1,3 @@
1
1
  module EnjuCirculation
2
- VERSION = "0.1.0.pre27"
2
+ VERSION = "0.1.0.pre28"
3
3
  end
@@ -66,11 +66,6 @@ describe CheckinsController do
66
66
  get :show, :id => checkin.id
67
67
  assigns(:checkin).should eq(checkin)
68
68
  end
69
-
70
- it "should not show missing checkin" do
71
- get :show, :id => 'missing'
72
- response.should be_missing
73
- end
74
69
  end
75
70
 
76
71
  describe "When logged in as Librarian" do
@@ -151,11 +146,6 @@ describe CheckinsController do
151
146
  get :edit, :id => checkin.id
152
147
  assigns(:checkin).should eq(checkin)
153
148
  end
154
-
155
- it "should not edit missing checkin" do
156
- get :edit, :id => 'missing'
157
- response.should be_missing
158
- end
159
149
  end
160
150
 
161
151
  describe "When logged in as Librarian" do
@@ -213,6 +203,13 @@ describe CheckinsController do
213
203
  response.should redirect_to(basket_checkins_url(assigns(:checkin).basket))
214
204
  assigns(:checkin).item.circulation_status.name.should eq 'Available On Shelf'
215
205
  end
206
+
207
+ it "should checkin the overdue item" do
208
+ post :create, :checkin => {:item_identifier => '00014'}, :basket_id => 9
209
+ response.should redirect_to(basket_checkins_url(assigns(:checkin).basket))
210
+ assigns(:checkin).checkout.should be_valid
211
+ assigns(:checkin).item.circulation_status.name.should eq 'Available On Shelf'
212
+ end
216
213
  end
217
214
  end
218
215
 
@@ -347,11 +344,6 @@ describe CheckinsController do
347
344
  response.should redirect_to(@checkin)
348
345
  end
349
346
  end
350
-
351
- it "should not update missing checkin" do
352
- put :update, :id => 'missing', :checkin => { }
353
- response.should be_missing
354
- end
355
347
  end
356
348
 
357
349
  describe "When logged in as Librarian" do
@@ -442,11 +434,6 @@ describe CheckinsController do
442
434
  delete :destroy, :id => @checkin.id
443
435
  response.should redirect_to(checkins_url)
444
436
  end
445
-
446
- it "should not destroy missing checkin" do
447
- delete :destroy, :id => 'missing'
448
- response.should be_missing
449
- end
450
437
  end
451
438
 
452
439
  describe "When logged in as Librarian" do
@@ -180,11 +180,6 @@ describe CheckoutsController do
180
180
  response.should be_forbidden
181
181
  assigns(:checkout).should eq checkouts(:checkout_00001)
182
182
  end
183
-
184
- it "should not show missing checkout" do
185
- get :show, :id => 'missing'
186
- response.should be_missing
187
- end
188
183
  end
189
184
 
190
185
  describe "When not logged in" do
@@ -273,11 +268,6 @@ describe CheckoutsController do
273
268
  end
274
269
  end
275
270
 
276
- it "should not update missing checkout" do
277
- put :update, :id => 'missing', :checkout => { }
278
- response.should be_missing
279
- end
280
-
281
271
  it "should remove its own checkout history" do
282
272
  put :remove_all, :user_id => users(:user1).username
283
273
  users(:user1).checkouts.returned.count.should eq 0
@@ -444,11 +434,6 @@ describe CheckoutsController do
444
434
  delete :destroy, :id => @returned_checkout.id
445
435
  response.should redirect_to(user_checkouts_url(@returned_checkout.user))
446
436
  end
447
-
448
- it "should not destroy missing checkout" do
449
- delete :destroy, :id => 'missing'
450
- response.should be_missing
451
- end
452
437
  end
453
438
 
454
439
  describe "When logged in as Librarian" do
@@ -146,11 +146,6 @@ describe ReservesController do
146
146
  assigns(:reserve).should eq(reserve)
147
147
  end
148
148
 
149
- it "should not show missing reserve" do
150
- get :show, :id => 'missing'
151
- response.should be_missing
152
- end
153
-
154
149
  it "should show other user's reservation" do
155
150
  get :show, :id => 3
156
151
  response.should be_success
@@ -290,11 +285,6 @@ describe ReservesController do
290
285
  assigns(:reserve).should eq(reserve)
291
286
  end
292
287
 
293
- it "should not edit missing reserve" do
294
- get :edit, :id => 'missing'
295
- response.should be_missing
296
- end
297
-
298
288
  it "should edit other user's reservation" do
299
289
  get :edit, :id => 3
300
290
  response.should be_success
@@ -667,11 +657,6 @@ describe ReservesController do
667
657
  response.should redirect_to reserve_url(assigns(:reserve))
668
658
  end
669
659
 
670
- it "should not update missing reserve" do
671
- put :update, :id => 'missing', :reserve => {:user_number => users(:user1).user_number}
672
- response.should be_missing
673
- end
674
-
675
660
  it "should update my reservation" do
676
661
  put :update, :id => 3, :reserve => {:user_number => users(:user1).user_number}
677
662
  flash[:notice].should eq I18n.t('controller.successfully_updated', :model => I18n.t('activerecord.models.reserve'))
@@ -731,11 +716,6 @@ describe ReservesController do
731
716
  delete :destroy, :id => 3
732
717
  response.should redirect_to reserves_url
733
718
  end
734
-
735
- it "should not destroy missing reserve" do
736
- delete :destroy, :id => 'missing'
737
- response.should be_missing
738
- end
739
719
  end
740
720
 
741
721
  describe "When logged in as Librarian" do
@@ -1,121 +1,8 @@
1
1
  class ApplicationController < ActionController::Base
2
2
  protect_from_forgery
3
3
 
4
- rescue_from CanCan::AccessDenied, :with => :render_403
5
- rescue_from ActiveRecord::RecordNotFound, :with => :render_404
6
-
7
- before_filter :set_locale
8
-
4
+ enju_leaf
9
5
  enju_biblio
10
6
  enju_library
11
7
  enju_circulation
12
-
13
- private
14
- def render_403
15
- return if performed?
16
- if user_signed_in?
17
- respond_to do |format|
18
- format.html {render :template => 'page/403', :status => 403}
19
- format.mobile {render :template => 'page/403', :status => 403}
20
- format.xml {render :template => 'page/403', :status => 403}
21
- format.json
22
- end
23
- else
24
- respond_to do |format|
25
- format.html {redirect_to new_user_session_url}
26
- format.mobile {redirect_to new_user_session_url}
27
- format.xml {render :template => 'page/403', :status => 403}
28
- format.json
29
- end
30
- end
31
- end
32
-
33
- def render_404
34
- return if performed?
35
- respond_to do |format|
36
- format.html {render :template => 'page/404', :status => 404}
37
- format.mobile {render :template => 'page/404', :status => 404}
38
- format.xml {render :template => 'page/404', :status => 404}
39
- format.json
40
- end
41
- end
42
-
43
- def access_denied
44
- raise CanCan::AccessDenied
45
- end
46
-
47
- def get_user
48
- @user = User.where(:username => params[:user_id]).first if params[:user_id]
49
- end
50
-
51
- def get_manifestation
52
- @manifestation = Manifestation.find(params[:manifestation_id]) if params[:manifestation_id]
53
- authorize! :show, @manifestation if @manifestation
54
- end
55
-
56
- def get_user_group
57
- @user_group = UserGroup.find(params[:user_group_id]) if params[:user_group_id]
58
- end
59
-
60
- def set_locale
61
- if params[:locale]
62
- unless I18n.available_locales.include?(params[:locale].to_s.intern)
63
- raise InvalidLocaleError
64
- end
65
- end
66
- if user_signed_in?
67
- locale = params[:locale] || session[:locale] || current_user.locale.try(:to_sym)
68
- else
69
- locale = params[:locale] || session[:locale]
70
- end
71
- if locale
72
- I18n.locale = @locale = session[:locale] = locale.to_sym
73
- else
74
- I18n.locale = @locale = session[:locale] = I18n.default_locale
75
- end
76
- rescue InvalidLocaleError
77
- @locale = I18n.default_locale
78
- end
79
-
80
- def solr_commit
81
- Sunspot.commit
82
- end
83
-
84
- def convert_charset
85
- case params[:format]
86
- when 'csv'
87
- return unless Setting.csv_charset_conversion
88
- # TODO: 他の言語
89
- if @locale.to_sym == :ja
90
- headers["Content-Type"] = "text/csv; charset=Shift_JIS"
91
- response.body = NKF::nkf('-Ws', response.body)
92
- end
93
- when 'xml'
94
- if @locale.to_sym == :ja
95
- headers["Content-Type"] = "application/xml; charset=Shift_JIS"
96
- response.body = NKF::nkf('-Ws', response.body)
97
- end
98
- end
99
- end
100
-
101
- def store_page
102
- flash[:page] = params[:page] if params[:page].to_i > 0
103
- end
104
-
105
- def store_location
106
- if request.get? and request.format.try(:html?) and !request.xhr?
107
- session[:user_return_to] = request.fullpath
108
- end
109
- end
110
-
111
- def move_position(resource, direction)
112
- if ['higher', 'lower'].include?(direction)
113
- resource.send("move_#{direction}")
114
- redirect_to url_for(:controller => resource.class.to_s.pluralize.underscore)
115
- return
116
- end
117
- end
118
- end
119
-
120
- class InvalidLocaleError < StandardError
121
8
  end
@@ -3,7 +3,7 @@ require File.expand_path('../boot', __FILE__)
3
3
  require 'rails/all'
4
4
 
5
5
  Bundler.require
6
- require "enju_circulation"
6
+ require 'enju_circulation'
7
7
 
8
8
  module Dummy
9
9
  class Application < Rails::Application
@@ -55,6 +55,5 @@ module Dummy
55
55
  end
56
56
 
57
57
  require 'nkf'
58
- require 'enju_biblio'
59
- require 'enju_library'
58
+ require 'enju_leaf'
60
59
  require 'mobylette'
@@ -11,7 +11,7 @@
11
11
  #
12
12
  # It's strongly recommended to check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(:version => 20130509185724) do
14
+ ActiveRecord::Schema.define(:version => 20130519065837) do
15
15
 
16
16
  create_table "baskets", :force => true do |t|
17
17
  t.integer "user_id"
@@ -57,11 +57,12 @@ ActiveRecord::Schema.define(:version => 20130509185724) do
57
57
  add_index "checked_items", ["item_id"], :name => "index_checked_items_on_item_id"
58
58
 
59
59
  create_table "checkins", :force => true do |t|
60
- t.integer "item_id", :null => false
60
+ t.integer "item_id", :null => false
61
61
  t.integer "librarian_id"
62
62
  t.integer "basket_id"
63
- t.datetime "created_at", :null => false
64
- t.datetime "updated_at", :null => false
63
+ t.datetime "created_at", :null => false
64
+ t.datetime "updated_at", :null => false
65
+ t.integer "lock_version", :default => 0, :null => false
65
66
  end
66
67
 
67
68
  add_index "checkins", ["basket_id"], :name => "index_checkins_on_basket_id"
@@ -307,16 +308,16 @@ ActiveRecord::Schema.define(:version => 20130509185724) do
307
308
  add_index "languages", ["name"], :name => "index_languages_on_name", :unique => true
308
309
 
309
310
  create_table "lending_policies", :force => true do |t|
310
- t.integer "item_id", :null => false
311
- t.integer "user_group_id", :null => false
312
- t.integer "loan_period", :default => 0, :null => false
311
+ t.integer "item_id", :null => false
312
+ t.integer "user_group_id", :null => false
313
+ t.integer "loan_period", :default => 0, :null => false
313
314
  t.datetime "fixed_due_date"
314
- t.integer "renewal", :default => 0, :null => false
315
- t.decimal "fine", :default => 0.0, :null => false
315
+ t.integer "renewal", :default => 0, :null => false
316
+ t.integer "fine", :default => 0, :null => false
316
317
  t.text "note"
317
318
  t.integer "position"
318
- t.datetime "created_at", :null => false
319
- t.datetime "updated_at", :null => false
319
+ t.datetime "created_at", :null => false
320
+ t.datetime "updated_at", :null => false
320
321
  end
321
322
 
322
323
  add_index "lending_policies", ["item_id", "user_group_id"], :name => "index_lending_policies_on_item_id_and_user_group_id", :unique => true
@@ -751,6 +752,7 @@ ActiveRecord::Schema.define(:version => 20130509185724) do
751
752
  t.boolean "expiration_notice_to_library", :default => false
752
753
  t.datetime "retained_at"
753
754
  t.datetime "postponed_at"
755
+ t.integer "lock_version", :default => 0, :null => false
754
756
  end
755
757
 
756
758
  add_index "reserves", ["item_id"], :name => "index_reserves_on_item_id"
Binary file
@@ -6,6 +6,7 @@ checkin_00001:
6
6
  librarian_id: 1
7
7
  created_at: 2008-01-22 12:58:54.347742 +09:00
8
8
  basket_id: 9
9
+ lock_version: 0
9
10
  checkin_00002:
10
11
  item_id: 9
11
12
  updated_at: 2007-12-14 00:28:41.854022 +09:00
@@ -13,6 +14,7 @@ checkin_00002:
13
14
  librarian_id: 2
14
15
  created_at: 2007-12-14 00:28:41.854022 +09:00
15
16
  basket_id: 10
17
+ lock_version: 0
16
18
  checkin_00003:
17
19
  item_id: 8
18
20
  updated_at: 2007-12-20 21:24:18.729192 +09:00
@@ -20,6 +22,7 @@ checkin_00003:
20
22
  librarian_id: 1
21
23
  created_at: 2007-12-20 21:24:18.729192 +09:00
22
24
  basket_id: 10
25
+ lock_version: 0
23
26
  checkin_00004:
24
27
  item_id: 7
25
28
  updated_at: 2008-01-23 00:39:27.785676 +09:00
@@ -27,6 +30,7 @@ checkin_00004:
27
30
  librarian_id: 2
28
31
  created_at: 2008-01-23 00:39:27.785676 +09:00
29
32
  basket_id: 10
33
+ lock_version: 0
30
34
  checkin_00005:
31
35
  item_id: 6
32
36
  updated_at: 2007-12-20 21:25:04.619479 +09:00
@@ -34,6 +38,7 @@ checkin_00005:
34
38
  librarian_id: 1
35
39
  created_at: 2007-12-20 21:25:04.619479 +09:00
36
40
  basket_id: 10
41
+ lock_version: 0
37
42
 
38
43
  # == Schema Information
39
44
  #
@@ -45,5 +50,6 @@ checkin_00005:
45
50
  # basket_id :integer
46
51
  # created_at :datetime not null
47
52
  # updated_at :datetime not null
53
+ # lock_version :integer default(0), not null
48
54
  #
49
55
 
@@ -104,3 +104,17 @@ circulation_status_00016:
104
104
  id: 16
105
105
  note: ""
106
106
  position: 16
107
+
108
+ # == Schema Information
109
+ #
110
+ # Table name: circulation_statuses
111
+ #
112
+ # id :integer not null, primary key
113
+ # name :string(255) not null
114
+ # display_name :text
115
+ # note :text
116
+ # position :integer
117
+ # created_at :datetime not null
118
+ # updated_at :datetime not null
119
+ #
120
+
@@ -90,7 +90,7 @@ lending_policy_00009:
90
90
  # loan_period :integer default(0), not null
91
91
  # fixed_due_date :datetime
92
92
  # renewal :integer default(0), not null
93
- # fine :decimal(, ) default(0.0), not null
93
+ # fine :integer default(0), not null
94
94
  # note :text
95
95
  # position :integer
96
96
  # created_at :datetime not null
@@ -8,6 +8,7 @@ reserve_00001:
8
8
  created_at: 2007-09-01 14:14:52.356803 +09:00
9
9
  expired_at: <%= 1.week.from_now %>
10
10
  state: requested
11
+ lock_version: 0
11
12
  reserve_00002:
12
13
  updated_at: 2007-09-01 14:20:05.530854 +09:00
13
14
  manifestation_id: 5
@@ -17,6 +18,7 @@ reserve_00002:
17
18
  created_at: 2007-09-01 14:20:05.530854 +09:00
18
19
  expired_at: <%= 1.week.from_now %>
19
20
  state: requested
21
+ lock_version: 0
20
22
  reserve_00003:
21
23
  updated_at: 2007-09-02 17:46:52.791614 +09:00
22
24
  manifestation_id: 6
@@ -26,6 +28,7 @@ reserve_00003:
26
28
  created_at: 2007-09-02 17:46:52.791614 +09:00
27
29
  expired_at: <%= 1.week.from_now %>
28
30
  state: requested
31
+ lock_version: 0
29
32
  reserve_00004:
30
33
  updated_at: 2007-09-02 18:37:25.576087 +09:00
31
34
  manifestation_id: 7
@@ -35,6 +38,7 @@ reserve_00004:
35
38
  created_at: 2007-09-02 18:37:25.576087 +09:00
36
39
  expired_at: <%= 1.week.from_now %>
37
40
  state: requested
41
+ lock_version: 0
38
42
  reserve_00005:
39
43
  updated_at: 2007-09-02 19:16:55.714812 +09:00
40
44
  manifestation_id: 8
@@ -44,6 +48,7 @@ reserve_00005:
44
48
  created_at: 2007-09-02 19:16:55.714812 +09:00
45
49
  expired_at: <%= 1.week.from_now %>
46
50
  state: requested
51
+ lock_version: 0
47
52
  reserve_00006:
48
53
  updated_at: 2007-09-02 19:20:06.530854 +09:00
49
54
  manifestation_id: 4
@@ -53,6 +58,7 @@ reserve_00006:
53
58
  created_at: 2007-09-02 19:20:06.530854 +09:00
54
59
  expired_at: <%= 1.week.from_now %>
55
60
  state: requested
61
+ lock_version: 0
56
62
  reserve_00007:
57
63
  updated_at: 2007-09-02 19:20:07.530854 +09:00
58
64
  manifestation_id: 2
@@ -62,6 +68,7 @@ reserve_00007:
62
68
  created_at: 2007-09-02 19:20:07.530854 +09:00
63
69
  expired_at: <%= 1.week.from_now %>
64
70
  state: requested
71
+ lock_version: 0
65
72
  reserve_00008:
66
73
  updated_at: 2007-09-02 19:46:53.791614 +09:00
67
74
  manifestation_id: 6
@@ -71,6 +78,7 @@ reserve_00008:
71
78
  created_at: 2007-09-02 19:46:53.791614 +09:00
72
79
  expired_at: <%= 1.week.ago %>
73
80
  state: expired
81
+ lock_version: 0
74
82
  reserve_00009:
75
83
  updated_at: 2007-09-02 19:46:54.791614 +09:00
76
84
  manifestation_id: 7
@@ -80,6 +88,7 @@ reserve_00009:
80
88
  created_at: 2007-09-02 19:46:54.791614 +09:00
81
89
  expired_at: <%= 1.day.ago %>
82
90
  state: requested
91
+ lock_version: 0
83
92
  reserve_00010:
84
93
  updated_at: 2007-09-02 19:46:55.791614 +09:00
85
94
  manifestation_id: 8
@@ -91,6 +100,7 @@ reserve_00010:
91
100
  checked_out_at: <%= 1.week.ago %>
92
101
  state: completed
93
102
  item_id: 25
103
+ lock_version: 0
94
104
  reserve_00011:
95
105
  updated_at: 2007-09-03 14:20:05.530854 +09:00
96
106
  manifestation_id: 7
@@ -100,6 +110,7 @@ reserve_00011:
100
110
  created_at: 2007-09-03 14:20:05.530854 +09:00
101
111
  expired_at: <%= 1.day.ago %>
102
112
  state: expired
113
+ lock_version: 0
103
114
  reserve_00012:
104
115
  updated_at: 2007-09-03 14:20:06.530854 +09:00
105
116
  manifestation_id: 8
@@ -109,6 +120,7 @@ reserve_00012:
109
120
  created_at: 2007-09-03 14:20:06.530854 +09:00
110
121
  expired_at: <%= 1.day.ago %>
111
122
  state: retained
123
+ lock_version: 0
112
124
  reserve_00013:
113
125
  updated_at: 2007-09-03 14:20:07.530854 +09:00
114
126
  manifestation_id: 11
@@ -118,6 +130,7 @@ reserve_00013:
118
130
  created_at: 2007-09-03 14:20:07.530854 +09:00
119
131
  expired_at: <%= 1.day.ago %>
120
132
  state: requested
133
+ lock_version: 0
121
134
  reserve_00014:
122
135
  updated_at: 2007-09-03 14:20:08.530854 +09:00
123
136
  manifestation_id: 11
@@ -129,6 +142,7 @@ reserve_00014:
129
142
  expired_at: <%= 1.day.from_now %>
130
143
  state: retained
131
144
  item_id: 21
145
+ lock_version: 0
132
146
  reserve_00015:
133
147
  updated_at: 2007-09-03 14:20:09.530854 +09:00
134
148
  manifestation_id: 11
@@ -138,7 +152,7 @@ reserve_00015:
138
152
  created_at: 2007-09-03 14:20:09.530854 +09:00
139
153
  expired_at: <%= 1.day.from_now %>
140
154
  state: requested
141
-
155
+ lock_version: 0
142
156
 
143
157
  # == Schema Information
144
158
  #
@@ -158,5 +172,8 @@ reserve_00015:
158
172
  # state :string(255)
159
173
  # expiration_notice_to_patron :boolean default(FALSE)
160
174
  # expiration_notice_to_library :boolean default(FALSE)
175
+ # retained_at :datetime
176
+ # postponed_at :datetime
177
+ # lock_version :integer default(0), not null
161
178
  #
162
179
 
@@ -44,5 +44,6 @@ end
44
44
  # basket_id :integer
45
45
  # created_at :datetime not null
46
46
  # updated_at :datetime not null
47
+ # lock_version :integer default(0), not null
47
48
  #
48
49
 
@@ -16,7 +16,7 @@ end
16
16
  # loan_period :integer default(0), not null
17
17
  # fixed_due_date :datetime
18
18
  # renewal :integer default(0), not null
19
- # fine :decimal(, ) default(0.0), not null
19
+ # fine :integer default(0), not null
20
20
  # note :text
21
21
  # position :integer
22
22
  # created_at :datetime not null
@@ -117,5 +117,8 @@ end
117
117
  # state :string(255)
118
118
  # expiration_notice_to_patron :boolean default(FALSE)
119
119
  # expiration_notice_to_library :boolean default(FALSE)
120
+ # retained_at :datetime
121
+ # postponed_at :datetime
122
+ # lock_version :integer default(0), not null
120
123
  #
121
124
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enju_circulation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre27
4
+ version: 0.1.0.pre28
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kosuke Tanabe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-16 00:00:00.000000000 Z
11
+ date: 2013-06-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: enju_biblio
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.0.pre40
19
+ version: 0.1.0.pre41
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.0.pre40
26
+ version: 0.1.0.pre41
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: enju_library
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: 0.1.17.pre12
69
+ - !ruby/object:Gem::Dependency
70
+ name: enju_leaf
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: 1.1.0.rc2
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: 1.1.0.rc2
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: sqlite3
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -395,6 +409,8 @@ files:
395
409
  - db/migrate/20130303124821_add_retained_at_to_reserve.rb
396
410
  - db/migrate/20130304015019_add_postponed_at_to_reserve.rb
397
411
  - db/migrate/20130416054135_add_circulation_status_id_to_item.rb
412
+ - db/migrate/20130519065638_add_lock_version_to_reserve.rb
413
+ - db/migrate/20130519065837_add_lock_version_to_checkin.rb
398
414
  - lib/enju_circulation/controller.rb
399
415
  - lib/enju_circulation/engine.rb
400
416
  - lib/enju_circulation/helper.rb
@@ -570,16 +586,16 @@ files:
570
586
  - spec/dummy/solr/conf/spellings.txt
571
587
  - spec/dummy/solr/conf/stopwords.txt
572
588
  - spec/dummy/solr/conf/synonyms.txt
573
- - spec/dummy/solr/data/test/index/_22w.fdt
574
- - spec/dummy/solr/data/test/index/_22w.fdx
575
- - spec/dummy/solr/data/test/index/_22w.fnm
576
- - spec/dummy/solr/data/test/index/_22w.frq
577
- - spec/dummy/solr/data/test/index/_22w.nrm
578
- - spec/dummy/solr/data/test/index/_22w.prx
579
- - spec/dummy/solr/data/test/index/_22w.tii
580
- - spec/dummy/solr/data/test/index/_22w.tis
589
+ - spec/dummy/solr/data/test/index/_2fp.fdt
590
+ - spec/dummy/solr/data/test/index/_2fp.fdx
591
+ - spec/dummy/solr/data/test/index/_2fp.fnm
592
+ - spec/dummy/solr/data/test/index/_2fp.frq
593
+ - spec/dummy/solr/data/test/index/_2fp.nrm
594
+ - spec/dummy/solr/data/test/index/_2fp.prx
595
+ - spec/dummy/solr/data/test/index/_2fp.tii
596
+ - spec/dummy/solr/data/test/index/_2fp.tis
581
597
  - spec/dummy/solr/data/test/index/segments.gen
582
- - spec/dummy/solr/data/test/index/segments_45l
598
+ - spec/dummy/solr/data/test/index/segments_4v7
583
599
  - spec/dummy/solr/data/test/spellchecker/segments.gen
584
600
  - spec/dummy/solr/data/test/spellchecker/segments_1
585
601
  - spec/factories/basket.rb
@@ -848,16 +864,16 @@ test_files:
848
864
  - spec/dummy/solr/conf/spellings.txt
849
865
  - spec/dummy/solr/conf/stopwords.txt
850
866
  - spec/dummy/solr/conf/synonyms.txt
851
- - spec/dummy/solr/data/test/index/_22w.fdt
852
- - spec/dummy/solr/data/test/index/_22w.fdx
853
- - spec/dummy/solr/data/test/index/_22w.fnm
854
- - spec/dummy/solr/data/test/index/_22w.frq
855
- - spec/dummy/solr/data/test/index/_22w.nrm
856
- - spec/dummy/solr/data/test/index/_22w.prx
857
- - spec/dummy/solr/data/test/index/_22w.tii
858
- - spec/dummy/solr/data/test/index/_22w.tis
867
+ - spec/dummy/solr/data/test/index/_2fp.fdt
868
+ - spec/dummy/solr/data/test/index/_2fp.fdx
869
+ - spec/dummy/solr/data/test/index/_2fp.fnm
870
+ - spec/dummy/solr/data/test/index/_2fp.frq
871
+ - spec/dummy/solr/data/test/index/_2fp.nrm
872
+ - spec/dummy/solr/data/test/index/_2fp.prx
873
+ - spec/dummy/solr/data/test/index/_2fp.tii
874
+ - spec/dummy/solr/data/test/index/_2fp.tis
859
875
  - spec/dummy/solr/data/test/index/segments.gen
860
- - spec/dummy/solr/data/test/index/segments_45l
876
+ - spec/dummy/solr/data/test/index/segments_4v7
861
877
  - spec/dummy/solr/data/test/spellchecker/segments.gen
862
878
  - spec/dummy/solr/data/test/spellchecker/segments_1
863
879
  - spec/factories/basket.rb