unidom-certificate 1.0 → 1.1

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: 0f0d25046797018dfe5c741814115360d3d4b769
4
- data.tar.gz: f04c4580305a57426b1ef182db518c796b76bac5
3
+ metadata.gz: 59c1801b6a03f0ee8e7c04ea2bd1c58a11072674
4
+ data.tar.gz: 5b1b47d9ee6303419b3a2161e46ed0d8429c19b2
5
5
  SHA512:
6
- metadata.gz: b19552378a35a01eea9708c188a4dfa1ab66edf5f7777404f772b30ddb7c236f58472647bed082ab53056a49b0ecdba5325f7084a0bf42746bd06fbac543719c
7
- data.tar.gz: 0908409a75eb1347ea0e0b932d3a6616d6e8925dce2e8a1d3017a92833e3d1da726b82f47124fe5b3f1a75680564b49f33b7c53865dc0143b0d7a39d222d666c
6
+ metadata.gz: 5b8e65abb0589b461667a4a91a0470c00179a98111af544e73bb8d72d0ad705ef5122f12b5c1e48c7b6b20d8b82212df2964bcb220f3fd9f2028889bd52e1ed9
7
+ data.tar.gz: 28fa725945612250691713e0cde253e0694989edddff01b34f2e6642ef86c7578cbb1f27ff65a52bd42a3590152b32d0289ff8192205be5ecdd12f0242ee52e5
data/README.md CHANGED
@@ -23,8 +23,22 @@ The migration versions start with 200102.
23
23
 
24
24
  ## Call the Model
25
25
  ```ruby
26
- officer = Person.create name: 'John'
27
- mall = Shop.create name: 'WalMart'
28
- certification = BusinessLicense.create number: '8888-6666'
29
- certificating = Unidom::Certificate::Certificating.certificate(certification: certification, certificated: mall, certificator: officer, opened_at: Time.now)
26
+ officer = Unidom::Party::Person.create! name: 'John'
27
+ mall = Unidom::Party::Shop.create! name: 'WalMart'
28
+ certification = Unidom::Certificate::China::BusinessLicense.registration_number_is('123456789012345').valid_at.alive.first_or_create! name: 'WalMart', address: 'Beijing', legal_representative_name: 'Tim'
29
+ certificating = Unidom::Certificate::Certificating.certificate!(certification: certification, certificated: mall, certificator: officer, opened_at: Time.now)
30
30
  ```
31
+
32
+ ## Include the Concerns
33
+ ```ruby
34
+ include Unidom::Certificate::Concerns::AsCertificated
35
+ include Unidom::Certificate::Concerns::AsCertification
36
+ ```
37
+
38
+ ### As Certificated concern
39
+ The As Certificated concern do the following tasks for the includer automatically:
40
+ 1. Define the has_many :certificatings macro as: ``has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certificated``
41
+
42
+ ### As Certification concern
43
+ The As Certification concern do the following tasks for the includer automatically:
44
+ 1. Define the has_many :certificatings macro as: ``has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certification``
@@ -15,14 +15,26 @@ class Unidom::Certificate::Certificating < ActiveRecord::Base
15
15
  scope :certification_is, ->(certification) { where certification: certification }
16
16
 
17
17
  def self.certificate(certification: nil, certificated: nil, certificator: nil, opened_at: Time.now)
18
+ certificate! certification: certification, certificated: certificated, certificator: certificator, opened_at: opened_at
19
+ end
18
20
 
19
- raise ArgumentError.new('certification is required.') if certification.blank?
20
- raise ArgumentError.new('certificated is required.') if certificated.blank?
21
-
22
- self.certification_is(certification).certificated_is(certificated).valid_at.alive.first_or_create! opened_at: opened_at,
23
- certificator_id: (certificator.present? ? certificator.id : Unidom::Common::NULL_UUID),
24
- certificator_type: (certificator.present? ? certificator.class.name : '')
21
+ def self.certificate!(certification: nil, certificated: nil, certificator: nil, opened_at: Time.now)
22
+ raise ArgumentError.new('The certification argument is required.') if certification.blank?
23
+ raise ArgumentError.new('The certificated argument is required.' ) if certificated.blank?
24
+ raise ArgumentError.new('The opened_at argument is required.' ) if opened_at.blank?
25
+
26
+ attributes = { opened_at: opened_at }
27
+ if certificator.present?
28
+ attributes[:certificator] = certificator
29
+ else
30
+ attributes[:certificator_id] = Unidom::Common::NULL_UUID
31
+ attributes[:certificator_type] = ''
32
+ end
33
+ self.certification_is(certification).certificated_is(certificated).valid_at.alive.first_or_create! attributes
34
+ end
25
35
 
36
+ class << self
37
+ deprecate certificate: :certificate!, deprecator: ActiveSupport::Deprecation.new('2.0', 'unidom-certificate')
26
38
  end
27
39
 
28
40
  end
@@ -6,10 +6,6 @@ module Unidom::Certificate::Concerns::AsCertificated
6
6
 
7
7
  has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certificated
8
8
 
9
- def is_certificated_by!(certification, opened_at: Time.now)
10
- certificatings.create! certification: certification, opened_at: opened_at
11
- end
12
-
13
9
  end
14
10
 
15
11
  end
@@ -6,10 +6,6 @@ module Unidom::Certificate::Concerns::AsCertification
6
6
 
7
7
  has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certification
8
8
 
9
- def certificate!(certificated, opened_at: Time.now)
10
- certificatings.create! certificated: certificated, opened_at: opened_at
11
- end
12
-
13
9
  end
14
10
 
15
11
  end
@@ -1,5 +1,5 @@
1
1
  module Unidom
2
2
  module Certificate
3
- VERSION = '1.0'.freeze
3
+ VERSION = '1.1'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unidom-certificate
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: '1.1'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Topbit Du
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-13 00:00:00.000000000 Z
11
+ date: 2016-07-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unidom-common
@@ -43,7 +43,6 @@ files:
43
43
  - app/models/unidom/certificate/certificating.rb
44
44
  - app/models/unidom/certificate/concerns/as_certificated.rb
45
45
  - app/models/unidom/certificate/concerns/as_certification.rb
46
- - app/models/unidom/certificate/concerns/as_certificator.rb
47
46
  - app/views/layouts/unidom/certificate/application.html.erb
48
47
  - config/routes.rb
49
48
  - db/migrate/20010201000000_create_unidom_certificatings.rb
@@ -1,15 +0,0 @@
1
- module Unidom::Certificate::Concerns::AsCertificator
2
-
3
- extend ActiveSupport::Concern
4
-
5
- self.included do |includer|
6
-
7
- has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certificator
8
-
9
- def certificate!(certificated: certificated, certification: certification, opened_at: Time.now)
10
- certificatings.create! certificated: certificated, certification: certification, opened_at: opened_at
11
- end
12
-
13
- end
14
-
15
- end