unidom-certificate 0.3 → 1.0

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: 921a866879b9dd27268ed691d958809433f07deb
4
- data.tar.gz: 6be6334765933ac2f46135c99e1e997107db0cc9
3
+ metadata.gz: 0f0d25046797018dfe5c741814115360d3d4b769
4
+ data.tar.gz: f04c4580305a57426b1ef182db518c796b76bac5
5
5
  SHA512:
6
- metadata.gz: cc9b59e910fe87114a443141e295f9b3845646665607d65773a21fa71b664347a3b2502e42333605fe99009a548454e4e6d6d16db3383fef0282051a045f4398
7
- data.tar.gz: 28b38c4c2e50d8aae6b1676c09da834c3c0fda5fde28a65db9acf16aa73d4f5607c1253f78b8b05e3797211d5598fbdb007449ce9255bfbf0efa312b0663b3b6
6
+ metadata.gz: b19552378a35a01eea9708c188a4dfa1ab66edf5f7777404f772b30ddb7c236f58472647bed082ab53056a49b0ecdba5325f7084a0bf42746bd06fbac543719c
7
+ data.tar.gz: 0908409a75eb1347ea0e0b932d3a6616d6e8925dce2e8a1d3017a92833e3d1da726b82f47124fe5b3f1a75680564b49f33b7c53865dc0143b0d7a39d222d666c
data/README.md CHANGED
@@ -26,5 +26,5 @@ The migration versions start with 200102.
26
26
  officer = Person.create name: 'John'
27
27
  mall = Shop.create name: 'WalMart'
28
28
  certification = BusinessLicense.create number: '8888-6666'
29
- certificating = Unidom::Certificate::Certificating.certificate(certification, mall, certificator: officer, opened_at: Time.now)
29
+ certificating = Unidom::Certificate::Certificating.certificate(certification: certification, certificated: mall, certificator: officer, opened_at: Time.now)
30
30
  ```
@@ -10,4 +10,4 @@
10
10
  // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11
11
  // about supported directives.
12
12
  //
13
- //= require_tree .
13
+ //= require_self
@@ -10,6 +10,5 @@
10
10
  * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
11
11
  * file per style scope.
12
12
  *
13
- *= require_tree .
14
13
  *= require_self
15
14
  */
@@ -14,10 +14,15 @@ class Unidom::Certificate::Certificating < ActiveRecord::Base
14
14
  scope :certificated_is, ->(certificated) { where certificated: certificated }
15
15
  scope :certification_is, ->(certification) { where certification: certification }
16
16
 
17
- def self.certificate(certification, certificated, certificator: nil, opened_at: Time.now)
17
+ def self.certificate(certification: nil, certificated: nil, certificator: nil, opened_at: Time.now)
18
+
19
+ raise ArgumentError.new('certification is required.') if certification.blank?
20
+ raise ArgumentError.new('certificated is required.') if certificated.blank?
21
+
18
22
  self.certification_is(certification).certificated_is(certificated).valid_at.alive.first_or_create! opened_at: opened_at,
19
23
  certificator_id: (certificator.present? ? certificator.id : Unidom::Common::NULL_UUID),
20
24
  certificator_type: (certificator.present? ? certificator.class.name : '')
25
+
21
26
  end
22
27
 
23
28
  end
@@ -0,0 +1,15 @@
1
+ module Unidom::Certificate::Concerns::AsCertificated
2
+
3
+ extend ActiveSupport::Concern
4
+
5
+ self.included do |includer|
6
+
7
+ has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certificated
8
+
9
+ def is_certificated_by!(certification, opened_at: Time.now)
10
+ certificatings.create! certification: certification, opened_at: opened_at
11
+ end
12
+
13
+ end
14
+
15
+ end
@@ -0,0 +1,15 @@
1
+ module Unidom::Certificate::Concerns::AsCertification
2
+
3
+ extend ActiveSupport::Concern
4
+
5
+ self.included do |includer|
6
+
7
+ has_many :certificatings, class_name: 'Unidom::Certificate::Certificating', as: :certification
8
+
9
+ def certificate!(certificated, opened_at: Time.now)
10
+ certificatings.create! certificated: certificated, opened_at: opened_at
11
+ end
12
+
13
+ end
14
+
15
+ end
@@ -0,0 +1,15 @@
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
@@ -2,13 +2,14 @@
2
2
  <html>
3
3
  <head>
4
4
  <title>Unidom Certificate</title>
5
- <%= stylesheet_link_tag 'unidom/certificate/application', media: 'all' %>
6
- <%= javascript_include_tag 'unidom/certificate/application' %>
5
+ <%= stylesheet_link_tag 'unidom/certificate/application', media: 'all' %>
7
6
  <%= csrf_meta_tags %>
8
7
  </head>
9
8
  <body>
10
9
 
11
10
  <%= yield %>
12
11
 
12
+ <%= javascript_include_tag 'unidom/certificate/application' %>
13
+
13
14
  </body>
14
15
  </html>
@@ -1,5 +1,5 @@
1
1
  module Unidom
2
2
  module Certificate
3
- VERSION = '0.3'.freeze
3
+ VERSION = '1.0'.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: '0.3'
4
+ version: '1.0'
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-04-06 00:00:00.000000000 Z
11
+ date: 2016-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unidom-common
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.7'
19
+ version: '0.9'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.7'
26
+ version: '0.9'
27
27
  description: Unidom (UNIfied Domain Object Model) is a series of domain model engines.
28
28
  The Certificate domain model engine includes Identity Card and Business License
29
29
  models. Unidom (统一领域对象模型)是一系列的领域模型引擎。证书领域模型引擎包括身份证和营业执照的模型。
@@ -41,6 +41,9 @@ files:
41
41
  - app/controllers/unidom/certificate/application_controller.rb
42
42
  - app/helpers/unidom/certificate/application_helper.rb
43
43
  - app/models/unidom/certificate/certificating.rb
44
+ - app/models/unidom/certificate/concerns/as_certificated.rb
45
+ - app/models/unidom/certificate/concerns/as_certification.rb
46
+ - app/models/unidom/certificate/concerns/as_certificator.rb
44
47
  - app/views/layouts/unidom/certificate/application.html.erb
45
48
  - config/routes.rb
46
49
  - db/migrate/20010201000000_create_unidom_certificatings.rb
@@ -68,7 +71,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
68
71
  version: '0'
69
72
  requirements: []
70
73
  rubyforge_project:
71
- rubygems_version: 2.4.5.1
74
+ rubygems_version: 2.6.4
72
75
  signing_key:
73
76
  specification_version: 4
74
77
  summary: Unidom Certificate Domain Model Engine 证书领域模型引擎