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 +4 -4
- data/lib/document_number.rb +19 -3
- data/lib/document_number/configuration.rb +12 -0
- data/lib/document_number/has_document_number.rb +3 -2
- data/lib/document_number/numerator.rb +2 -1
- data/lib/document_number/version.rb +1 -1
- data/spec/dummy/log/development.log +0 -0
- data/spec/dummy/log/test.log +78 -0
- metadata +27 -5
- data/README.rdoc +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94e91b391bde151ec30880ae48ca3ea60ef405ef
|
4
|
+
data.tar.gz: 8068ed44cde39f4305e8c6eb1a783e38808fa36a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3c55bcb9ae36a556907921415b1b78e0aa2e4326367407bdb565b154e11bf0179e6b1a371f3b172904885a9906f1574654bdd1ce1c6c9ed4f1bf03b2185a1f0d
|
7
|
+
data.tar.gz: bb95c2363b6970b6ae1ced18b10b51712690b88b4550f5605b7ff9d18533b5022f7fdabf2f2940fd6e2719a3119cbc04edc1377e7c9b0b6b99fb2d40fafac5a3
|
data/lib/document_number.rb
CHANGED
@@ -1,9 +1,25 @@
|
|
1
|
-
require "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
|
-
|
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
|
@@ -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
|
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
|
-
|
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
|
-
|
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
|
|
File without changes
|
data/spec/dummy/log/test.log
CHANGED
@@ -627,3 +627,81 @@
|
|
627
627
|
[1m[36mSQL (0.1ms)[0m [1mINSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 05:43:07.033904"], ["number", "2"], ["updated_at", "2014-06-11 05:43:07.033904"]]
|
628
628
|
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
629
629
|
[1m[36m (0.5ms)[0m [1mrollback transaction[0m
|
630
|
+
[1m[36m (1.4ms)[0m [1mCREATE TABLE "document_numbers" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "document" varchar(255), "number" integer DEFAULT 1 NOT NULL, "created_at" datetime) [0m
|
631
|
+
[1m[35m (0.5ms)[0m select sqlite_version(*)
|
632
|
+
[1m[36m (2.3ms)[0m [1mCREATE UNIQUE INDEX "index_document_numbers_on_document" ON "document_numbers" ("document")[0m
|
633
|
+
[1m[35m (1.0ms)[0m CREATE TABLE "inventories" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "number" varchar(255), "created_at" datetime, "updated_at" datetime)
|
634
|
+
[1m[36m (1.0ms)[0m [1mCREATE TABLE "invoices" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "number" varchar(255), "created_at" datetime, "updated_at" datetime) [0m
|
635
|
+
[1m[35m (1.3ms)[0m CREATE TABLE "price_adjustments" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "document_number" varchar(255), "created_at" datetime, "updated_at" datetime)
|
636
|
+
[1m[36m (1.2ms)[0m [1mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
637
|
+
[1m[35m (1.2ms)[0m CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
|
638
|
+
[1m[36m (0.2ms)[0m [1mSELECT version FROM "schema_migrations"[0m
|
639
|
+
[1m[35m (1.3ms)[0m INSERT INTO "schema_migrations" (version) VALUES ('20140610093243')
|
640
|
+
[1m[36m (1.1ms)[0m [1mINSERT INTO "schema_migrations" (version) VALUES ('20140610080445')[0m
|
641
|
+
[1m[35m (4.2ms)[0m INSERT INTO "schema_migrations" (version) VALUES ('20140610090526')
|
642
|
+
[1m[36m (2.8ms)[0m [1mINSERT INTO "schema_migrations" (version) VALUES ('20140610093227')[0m
|
643
|
+
[1m[36m (0.4ms)[0m [1mbegin transaction[0m
|
644
|
+
[1m[35m (0.1ms)[0m SAVEPOINT active_record_1
|
645
|
+
[1m[36mDocumentNumber::DocumentNumber Load (0.1ms)[0m [1mSELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'inventory' LIMIT 1[0m
|
646
|
+
[1m[35mSQL (0.5ms)[0m INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.320226"], ["document", "inventory"], ["number", 2]]
|
647
|
+
[1m[36mSQL (0.1ms)[0m [1mINSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.297186"], ["number", "1"], ["updated_at", "2014-06-11 13:29:12.297186"]]
|
648
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
649
|
+
[1m[36m (1.1ms)[0m [1mrollback transaction[0m
|
650
|
+
[1m[35m (0.1ms)[0m begin transaction
|
651
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
652
|
+
[1m[35mSQL (0.2ms)[0m 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
|
+
[1m[36m (0.0ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
654
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
655
|
+
[1m[36mSQL (1.1ms)[0m [1mUPDATE "inventories" SET "updated_at" = '2014-06-11 13:29:12.328408' WHERE "inventories"."id" = 1[0m
|
656
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
657
|
+
[1m[36m (1.0ms)[0m [1mrollback transaction[0m
|
658
|
+
[1m[35m (0.1ms)[0m begin transaction
|
659
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
660
|
+
[1m[35mSQL (0.4ms)[0m 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
|
+
[1m[36m (0.1ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
662
|
+
[1m[35m (0.6ms)[0m rollback transaction
|
663
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
664
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
665
|
+
[1m[36mDocumentNumber::DocumentNumber Load (0.2ms)[0m [1mSELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'inventory' LIMIT 1[0m
|
666
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.338612"], ["document", "inventory"], ["number", 2]]
|
667
|
+
[1m[36mSQL (0.1ms)[0m [1mINSERT INTO "inventories" ("created_at", "number", "updated_at") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.337366"], ["number", "1"], ["updated_at", "2014-06-11 13:29:12.337366"]]
|
668
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
669
|
+
[1m[36m (0.0ms)[0m [1mSAVEPOINT active_record_1[0m
|
670
|
+
[1m[35mDocumentNumber::DocumentNumber Load (0.1ms)[0m SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'inventory' LIMIT 1
|
671
|
+
[1m[36mSQL (0.4ms)[0m [1mUPDATE "document_numbers" SET "number" = ? WHERE "document_numbers"."id" = 1[0m [["number", 3]]
|
672
|
+
[1m[35mSQL (0.1ms)[0m 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
|
+
[1m[36m (0.1ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
674
|
+
[1m[35m (0.5ms)[0m rollback transaction
|
675
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
676
|
+
[1m[35m (0.1ms)[0m SAVEPOINT active_record_1
|
677
|
+
[1m[36mDocumentNumber::DocumentNumber Load (0.1ms)[0m [1mSELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1[0m
|
678
|
+
[1m[35mSQL (0.3ms)[0m INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.352991"], ["document", "price_adjustment"], ["number", 501]]
|
679
|
+
[1m[36mSQL (0.1ms)[0m [1mINSERT INTO "price_adjustments" ("created_at", "document_number", "updated_at") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.347165"], ["document_number", "500"], ["updated_at", "2014-06-11 13:29:12.347165"]]
|
680
|
+
[1m[35m (0.0ms)[0m RELEASE SAVEPOINT active_record_1
|
681
|
+
[1m[36m (0.6ms)[0m [1mrollback transaction[0m
|
682
|
+
[1m[35m (0.1ms)[0m begin transaction
|
683
|
+
[1m[36m (0.1ms)[0m [1mSAVEPOINT active_record_1[0m
|
684
|
+
[1m[35mDocumentNumber::DocumentNumber Load (0.3ms)[0m SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1
|
685
|
+
[1m[36mSQL (0.4ms)[0m [1mINSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.359277"], ["document", "price_adjustment"], ["number", 501]]
|
686
|
+
[1m[35mSQL (0.2ms)[0m 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
|
+
[1m[36m (0.1ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
688
|
+
[1m[35m (0.1ms)[0m SAVEPOINT active_record_1
|
689
|
+
[1m[36mDocumentNumber::DocumentNumber Load (0.3ms)[0m [1mSELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1[0m
|
690
|
+
[1m[35mSQL (0.6ms)[0m UPDATE "document_numbers" SET "number" = ? WHERE "document_numbers"."id" = 1 [["number", 502]]
|
691
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "price_adjustments" ("created_at", "document_number", "updated_at") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.363507"], ["document_number", "501"], ["updated_at", "2014-06-11 13:29:12.363507"]]
|
692
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
693
|
+
[1m[36m (0.6ms)[0m [1mrollback transaction[0m
|
694
|
+
[1m[35m (0.1ms)[0m begin transaction
|
695
|
+
[1m[36m (0.1ms)[0m [1mSAVEPOINT active_record_1[0m
|
696
|
+
[1m[35mDocumentNumber::DocumentNumber Load (0.3ms)[0m SELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'price_adjustment' LIMIT 1
|
697
|
+
[1m[36mSQL (0.5ms)[0m [1mINSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.372668"], ["document", "price_adjustment"], ["number", 501]]
|
698
|
+
[1m[35mSQL (0.2ms)[0m 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
|
+
[1m[36m (0.1ms)[0m [1mRELEASE SAVEPOINT active_record_1[0m
|
700
|
+
[1m[35m (1.1ms)[0m rollback transaction
|
701
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
702
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
703
|
+
[1m[36mDocumentNumber::DocumentNumber Load (0.1ms)[0m [1mSELECT "document_numbers".* FROM "document_numbers" WHERE "document_numbers"."document" = 'invoice' LIMIT 1[0m
|
704
|
+
[1m[35mSQL (0.4ms)[0m INSERT INTO "document_numbers" ("created_at", "document", "number") VALUES (?, ?, ?) [["created_at", "2014-06-11 13:29:12.387591"], ["document", "invoice"], ["number", 2]]
|
705
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "invoices" ("created_at", "number", "updated_at") VALUES (?, ?, ?)[0m [["created_at", "2014-06-11 13:29:12.383907"], ["number", "invoice/1"], ["updated_at", "2014-06-11 13:29:12.383907"]]
|
706
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
707
|
+
[1m[36m (0.5ms)[0m [1mrollback transaction[0m
|
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.
|
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
|
+
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: :
|
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:
|
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