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 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.