document_number 0.9.2 → 0.9.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d0a0cbf12a92d015fa9bb072ab1ff7717e5a913d
4
- data.tar.gz: 82a7fb6dcb97a47984505e1517e07dd4f39b84eb
3
+ metadata.gz: 94e91b391bde151ec30880ae48ca3ea60ef405ef
4
+ data.tar.gz: 8068ed44cde39f4305e8c6eb1a783e38808fa36a
5
5
  SHA512:
6
- metadata.gz: 18ea438afa26865a9c3fa249414c1ddeec859973a6a7e0414d2a2b35259bbb633f6de45ff2b3052922b012af52e19660a31afaf95c305a38978f61d118e406b0
7
- data.tar.gz: 6203e40d6826f65adc7ab27c0f9b084a8423ca5b76352e2ed4dc9900a2bb257f25023a3edd001c995e4f167588269a78d070e02396a6c5e7c1dadc965ba804b0
6
+ metadata.gz: 3c55bcb9ae36a556907921415b1b78e0aa2e4326367407bdb565b154e11bf0179e6b1a371f3b172904885a9906f1574654bdd1ce1c6c9ed4f1bf03b2185a1f0d
7
+ data.tar.gz: bb95c2363b6970b6ae1ced18b10b51712690b88b4550f5605b7ff9d18533b5022f7fdabf2f2940fd6e2719a3119cbc04edc1377e7c9b0b6b99fb2d40fafac5a3
@@ -1,9 +1,25 @@
1
- require "document_number/document_number"
1
+ require "document_number/configuration"
2
2
  require "document_number/has_document_number"
3
3
  require "document_number/numerator"
4
+ require "document_number/document_number"
5
+
6
+ module DocumentNumber
7
+ # Default prefix for number
8
+ def self.prefix=(value)
9
+ ::DocumentNumber.configuration.prefix = value
10
+ end
4
11
 
5
- # ActiveRecord::Base.send :include, DocumentNumber
12
+ private
13
+
14
+ def self.configuration
15
+ @@configuration ||= ::DocumentNumber::Configuration.instance
16
+ end
17
+
18
+ def self.configure
19
+ yield configuration
20
+ end
21
+ end
6
22
 
7
23
  ActiveSupport.on_load(:active_record) do
8
- include DocumentNumber::Model
24
+ include ::DocumentNumber::Model
9
25
  end
@@ -0,0 +1,12 @@
1
+ require 'singleton'
2
+
3
+ module DocumentNumber
4
+ class Configuration
5
+ include Singleton
6
+ attr_accessor :prefix
7
+
8
+ def initialize
9
+ @prefix = ''
10
+ end
11
+ end
12
+ end
@@ -18,7 +18,7 @@ module DocumentNumber
18
18
  # :prefix the prefix for number.
19
19
  # :start the start value for number
20
20
  def has_document_number(options = {})
21
- options.reverse_merge! column: :number, prefix: '', start: 1
21
+ options.reverse_merge! :column => :number, :start => 1
22
22
 
23
23
  method_name = "auto_increment_#{options[:column]}"
24
24
 
@@ -27,7 +27,8 @@ module DocumentNumber
27
27
  define_method method_name do
28
28
  return if send(options[:column]).present?
29
29
  number = Numerator.next_number(self, options)
30
- write_attribute options[:column], "#{options[:prefix]}#{number}"
30
+ prefix = options[:prefix].present? ? options[:prefix] : ::DocumentNumber.configuration.prefix
31
+ write_attribute options[:column], "#{prefix}#{number}"
31
32
  end
32
33
  end
33
34
  end
@@ -4,7 +4,8 @@ module DocumentNumber
4
4
  class Numerator
5
5
  def self.next_number(object, options)
6
6
  DocumentNumber.transaction do
7
- document_number = DocumentNumber.lock(true).find_or_initialize_by(document: object.class.to_s.underscore)
7
+ # Rails 3 support
8
+ document_number = DocumentNumber.lock(true).find_or_initialize_by_document(object.class.to_s.underscore)
8
9
 
9
10
  number = document_number.number == 1 ? options[:start] : document_number.number
10
11
 
@@ -1,3 +1,3 @@
1
1
  module DocumentNumber
2
- VERSION = "0.9.2"
2
+ VERSION = "0.9.3"
3
3
  end
File without changes
@@ -627,3 +627,81 @@
627
627
  SQL (0.1ms) INSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 05:43:07.033904"], ["number", "2"], ["updated_at", "2014-06-11 05:43:07.033904"]]
628
628
   (0.1ms) RELEASE SAVEPOINT active_record_1
629
629
   (0.5ms) rollback transaction
630
+  (1.4ms) CREATE TABLE "document_numbers" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "document" varchar(255), "number" integer DEFAULT 1 NOT NULL, "created_at" datetime) 
631
+  (0.5ms) select sqlite_version(*)
632
+  (2.3ms) CREATE UNIQUE INDEX "index_document_numbers_on_document" ON "document_numbers" ("document")
633
+  (1.0ms) CREATE TABLE "inventories" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "number" varchar(255), "created_at" datetime, "updated_at" datetime)
634
+  (1.0ms) CREATE TABLE "invoices" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "number" varchar(255), "created_at" datetime, "updated_at" datetime) 
635
+  (1.3ms) CREATE TABLE "price_adjustments" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "document_number" varchar(255), "created_at" datetime, "updated_at" datetime)
636
+  (1.2ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
637
+  (1.2ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
638
+  (0.2ms) SELECT version FROM "schema_migrations"
639
+  (1.3ms) INSERT INTO "schema_migrations" (version) VALUES ('20140610093243')
640
+  (1.1ms) INSERT INTO "schema_migrations" (version) VALUES ('20140610080445')
641
+  (4.2ms) INSERT INTO "schema_migrations" (version) VALUES ('20140610090526')
642
+  (2.8ms) INSERT INTO "schema_migrations" (version) VALUES ('20140610093227')
643
+  (0.4ms) begin transaction
644
+  (0.1ms) SAVEPOINT active_record_1
645
+ DocumentNumber::DocumentNumber Load (0.1ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'inventory' LIMIT 1
646
+ SQL (0.5ms) INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.320226"], ["document", "inventory"], ["number", 2]]
647
+ SQL (0.1ms) INSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.297186"], ["number", "1"], ["updated_at", "2014-06-11 13:29:12.297186"]]
648
+  (0.1ms) RELEASE SAVEPOINT active_record_1
649
+  (1.1ms) rollback transaction
650
+  (0.1ms) begin transaction
651
+  (0.0ms) SAVEPOINT active_record_1
652
+ SQL (0.2ms) INSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.327147"], ["number", "5"], ["updated_at", "2014-06-11 13:29:12.327147"]]
653
+  (0.0ms) RELEASE SAVEPOINT active_record_1
654
+  (0.0ms) SAVEPOINT active_record_1
655
+ SQL (1.1ms) UPDATE "inventories" SET "updated_at" = '2014-06-11 13:29:12.328408' WHERE "inventories"."id" = 1
656
+  (0.1ms) RELEASE SAVEPOINT active_record_1
657
+  (1.0ms) rollback transaction
658
+  (0.1ms) begin transaction
659
+  (0.0ms) SAVEPOINT active_record_1
660
+ SQL (0.4ms) INSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.333827"], ["number", "500"], ["updated_at", "2014-06-11 13:29:12.333827"]]
661
+  (0.1ms) RELEASE SAVEPOINT active_record_1
662
+  (0.6ms) rollback transaction
663
+  (0.1ms) begin transaction
664
+  (0.0ms) SAVEPOINT active_record_1
665
+ DocumentNumber::DocumentNumber Load (0.2ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'inventory' LIMIT 1
666
+ SQL (0.2ms) INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.338612"], ["document", "inventory"], ["number", 2]]
667
+ SQL (0.1ms) INSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.337366"], ["number", "1"], ["updated_at", "2014-06-11 13:29:12.337366"]]
668
+  (0.1ms) RELEASE SAVEPOINT active_record_1
669
+  (0.0ms) SAVEPOINT active_record_1
670
+ DocumentNumber::DocumentNumber Load (0.1ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'inventory' LIMIT 1
671
+ SQL (0.4ms) UPDATE "document_numbers" SET "number" = ? WHERE "document_numbers"."id" = 1 [["number", 3]]
672
+ SQL (0.1ms) INSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.340364"], ["number", "2"], ["updated_at", "2014-06-11 13:29:12.340364"]]
673
+  (0.1ms) RELEASE SAVEPOINT active_record_1
674
+  (0.5ms) rollback transaction
675
+  (0.1ms) begin transaction
676
+  (0.1ms) SAVEPOINT active_record_1
677
+ DocumentNumber::DocumentNumber Load (0.1ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1
678
+ SQL (0.3ms) INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.352991"], ["document", "price_adjustment"], ["number", 501]]
679
+ SQL (0.1ms) INSERT INTO "price_adjustments" ("created_at", "document_number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.347165"], ["document_number", "500"], ["updated_at", "2014-06-11 13:29:12.347165"]]
680
+  (0.0ms) RELEASE SAVEPOINT active_record_1
681
+  (0.6ms) rollback transaction
682
+  (0.1ms) begin transaction
683
+  (0.1ms) SAVEPOINT active_record_1
684
+ DocumentNumber::DocumentNumber Load (0.3ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1
685
+ SQL (0.4ms) INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.359277"], ["document", "price_adjustment"], ["number", 501]]
686
+ SQL (0.2ms) INSERT INTO "price_adjustments" ("created_at", "document_number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.357100"], ["document_number", "500"], ["updated_at", "2014-06-11 13:29:12.357100"]]
687
+  (0.1ms) RELEASE SAVEPOINT active_record_1
688
+  (0.1ms) SAVEPOINT active_record_1
689
+ DocumentNumber::DocumentNumber Load (0.3ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1
690
+ SQL (0.6ms) UPDATE "document_numbers" SET "number" = ? WHERE "document_numbers"."id" = 1 [["number", 502]]
691
+ SQL (0.2ms) INSERT INTO "price_adjustments" ("created_at", "document_number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.363507"], ["document_number", "501"], ["updated_at", "2014-06-11 13:29:12.363507"]]
692
+  (0.1ms) RELEASE SAVEPOINT active_record_1
693
+  (0.6ms) rollback transaction
694
+  (0.1ms) begin transaction
695
+  (0.1ms) SAVEPOINT active_record_1
696
+ DocumentNumber::DocumentNumber Load (0.3ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1
697
+ SQL (0.5ms) INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.372668"], ["document", "price_adjustment"], ["number", 501]]
698
+ SQL (0.2ms) INSERT INTO "price_adjustments" ("created_at", "document_number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.370718"], ["document_number", "500"], ["updated_at", "2014-06-11 13:29:12.370718"]]
699
+  (0.1ms) RELEASE SAVEPOINT active_record_1
700
+  (1.1ms) rollback transaction
701
+  (0.1ms) begin transaction
702
+  (0.0ms) SAVEPOINT active_record_1
703
+ DocumentNumber::DocumentNumber Load (0.1ms) SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'invoice' LIMIT 1
704
+ SQL (0.4ms) INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.387591"], ["document", "invoice"], ["number", 2]]
705
+ SQL (0.2ms) INSERT INTO "invoices" ("created_at", "number", "updated_at") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.383907"], ["number", "invoice/1"], ["updated_at", "2014-06-11 13:29:12.383907"]]
706
+  (0.1ms) RELEASE SAVEPOINT active_record_1
707
+  (0.5ms) rollback transaction
metadata CHANGED
@@ -1,15 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: document_number
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evgeny Pavlov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-11 00:00:00.000000000 Z
11
+ date: 2014-06-19 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activerecord
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '3.0'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
13
33
  - !ruby/object:Gem::Dependency
14
34
  name: rails
15
35
  requirement: !ruby/object:Gem::Requirement
@@ -17,7 +37,7 @@ dependencies:
17
37
  - - "~>"
18
38
  - !ruby/object:Gem::Version
19
39
  version: '4.0'
20
- type: :runtime
40
+ type: :development
21
41
  prerelease: false
22
42
  version_requirements: !ruby/object:Gem::Requirement
23
43
  requirements:
@@ -145,9 +165,9 @@ extensions: []
145
165
  extra_rdoc_files: []
146
166
  files:
147
167
  - MIT-LICENSE
148
- - README.rdoc
149
168
  - Rakefile
150
169
  - lib/document_number.rb
170
+ - lib/document_number/configuration.rb
151
171
  - lib/document_number/document_number.rb
152
172
  - lib/document_number/has_document_number.rb
153
173
  - lib/document_number/numerator.rb
@@ -191,6 +211,7 @@ files:
191
211
  - spec/dummy/db/migrate/20140610093243_create_price_adjustments.rb
192
212
  - spec/dummy/db/schema.rb
193
213
  - spec/dummy/db/test.sqlite3
214
+ - spec/dummy/log/development.log
194
215
  - spec/dummy/log/test.log
195
216
  - spec/dummy/public/404.html
196
217
  - spec/dummy/public/422.html
@@ -212,7 +233,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
212
233
  requirements:
213
234
  - - ">="
214
235
  - !ruby/object:Gem::Version
215
- version: '0'
236
+ version: 1.8.7
216
237
  required_rubygems_version: !ruby/object:Gem::Requirement
217
238
  requirements:
218
239
  - - ">="
@@ -260,6 +281,7 @@ test_files:
260
281
  - spec/dummy/db/migrate/20140610093243_create_price_adjustments.rb
261
282
  - spec/dummy/db/schema.rb
262
283
  - spec/dummy/db/test.sqlite3
284
+ - spec/dummy/log/development.log
263
285
  - spec/dummy/log/test.log
264
286
  - spec/dummy/public/404.html
265
287
  - spec/dummy/public/422.html
data/README.rdoc DELETED
@@ -1,3 +0,0 @@
1
- = DocumentNumber
2
-
3
- This project rocks and uses MIT-LICENSE.