document_number 0.9.2 → 0.9.3
Sign up to get free protection for your applications and to get access to all the features.
- 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