jobshop 0.0.167 → 0.0.179
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -2
- data/Rakefile +2 -1
- data/app/assets/javascripts/application.js +1 -0
- data/app/controllers/jobshop/application_controller.rb +3 -1
- data/app/controllers/jobshop/dashboards_controller.rb +11 -0
- data/app/controllers/jobshop/departments_controller.rb +52 -0
- data/app/controllers/jobshop/employees_controller.rb +77 -0
- data/app/controllers/jobshop/organizations_controller.rb +29 -0
- data/app/controllers/jobshop/rfqs_controller.rb +49 -0
- data/app/controllers/jobshop/roles_controller.rb +52 -0
- data/app/helpers/jobshop/application_helper.rb +10 -0
- data/app/listeners/jobshop/assignment_listener.rb +13 -0
- data/app/mailers/jobshop/rfq_responder_mailer.rb +1 -1
- data/app/models/jobshop/auditing.rb +20 -0
- data/app/models/jobshop/collection.rb +2 -7
- data/app/models/jobshop/customer.rb +6 -17
- data/app/models/jobshop/customer/category.rb +2 -8
- data/app/models/jobshop/customer/contact.rb +3 -8
- data/app/models/jobshop/department.rb +10 -0
- data/app/models/jobshop/department/assignment.rb +15 -0
- data/app/models/jobshop/employee.rb +13 -6
- data/app/models/jobshop/employment.rb +8 -8
- data/app/models/jobshop/inspection.rb +1 -1
- data/app/models/jobshop/inspection/boolean_criterion.rb +13 -17
- data/app/models/jobshop/inspection/criterion.rb +9 -10
- data/app/models/jobshop/inspection/deviation_criterion.rb +10 -12
- data/app/models/jobshop/inspection/limit_criterion.rb +12 -10
- data/app/models/jobshop/inspection/report.rb +22 -34
- data/app/models/jobshop/mailman.rb +2 -4
- data/app/models/jobshop/order.rb +3 -27
- data/app/models/jobshop/order_line.rb +4 -10
- data/app/models/jobshop/organization.rb +8 -15
- data/app/models/jobshop/organization_state.rb +10 -0
- data/app/models/jobshop/place.rb +3 -8
- data/app/models/jobshop/product.rb +4 -7
- data/app/models/jobshop/rfq.rb +32 -14
- data/app/models/jobshop/rfq/line.rb +28 -0
- data/app/models/jobshop/rfq/line/assignment.rb +25 -0
- data/app/models/jobshop/rfq/line/quantity.rb +23 -0
- data/app/models/jobshop/role.rb +3 -9
- data/app/models/jobshop/role_assignment.rb +10 -4
- data/app/models/jobshop/routing_process.rb +4 -10
- data/app/models/jobshop/routing_step.rb +3 -5
- data/app/models/jobshop/thing.rb +3 -8
- data/app/models/jobshop/user.rb +24 -11
- data/app/views/jobshop/dashboards/show.html.haml +35 -0
- data/app/views/jobshop/departments/_form.html.haml +12 -0
- data/app/views/jobshop/departments/edit.html.haml +7 -0
- data/app/views/jobshop/departments/index.html.haml +17 -0
- data/app/views/jobshop/departments/new.html.haml +5 -0
- data/app/views/jobshop/departments/show.html.haml +15 -0
- data/app/views/jobshop/employees/_form.html.haml +46 -0
- data/app/views/jobshop/employees/edit.html.haml +1 -0
- data/app/views/jobshop/employees/index.html.haml +12 -0
- data/app/views/jobshop/employees/new.html.haml +1 -0
- data/app/views/jobshop/employees/show.html.haml +16 -0
- data/app/views/jobshop/organizations/_form.html.haml +10 -0
- data/app/views/jobshop/organizations/edit.html.haml +7 -0
- data/app/views/jobshop/organizations/index.html.haml +19 -0
- data/app/views/jobshop/organizations/new.html.haml +5 -0
- data/app/views/jobshop/organizations/show.html.haml +16 -0
- data/app/views/jobshop/rfqs/_form.html.haml +60 -0
- data/app/views/jobshop/rfqs/edit.html.haml +4 -0
- data/app/views/jobshop/rfqs/index.html.haml +2 -0
- data/app/views/jobshop/roles/_form.html.haml +11 -0
- data/app/views/jobshop/roles/edit.html.haml +7 -0
- data/app/views/jobshop/roles/index.html.haml +21 -0
- data/app/views/jobshop/roles/new.html.haml +5 -0
- data/app/views/jobshop/roles/show.html.haml +3 -0
- data/app/views/layouts/jobshop/application.html.haml +50 -2
- data/config/initializers/devise.rb +2 -2
- data/config/routes.rb +18 -0
- data/db/migrate/20170311194758_initialize_jobshop.rb +4 -39
- data/db/migrate/20171216021339_create_organizations.rb +3 -8
- data/db/migrate/20171216021350_create_users.rb +28 -0
- data/db/migrate/20171216021400_create_employees.rb +27 -9
- data/db/migrate/20171216021853_create_customers.rb +29 -14
- data/db/migrate/20171216022020_create_places.rb +3 -4
- data/db/migrate/20171216022135_create_products.rb +4 -4
- data/db/migrate/20171216022605_create_orders.rb +27 -13
- data/db/migrate/20171216023018_create_roles.rb +30 -27
- data/db/migrate/20171216035357_create_things.rb +26 -23
- data/db/migrate/20171219022118_create_routing_processes.rb +28 -33
- data/db/migrate/20180107203241_create_inspections.rb +48 -115
- data/db/migrate/20181117023949_create_rfqs.rb +74 -15
- data/db/migrate/20181118014603_create_mailmen.rb +5 -6
- data/db/migrate/20190309163306_create_departments.rb +38 -0
- data/db/migrate/support/temporal_tables.sql +210 -0
- data/db/seeds.rb +92 -64
- data/exe/jobshop +1 -0
- data/lib/generators/jobshop/app/app_generator.rb +13 -3
- data/lib/generators/jobshop/app/templates/Procfile.tt +1 -1
- data/lib/generators/jobshop/app/templates/config/databases/postgresql.yml.tt +24 -0
- data/lib/generators/jobshop/app/templates/config/puma.rb.tt +44 -0
- data/lib/generators/jobshop/canary/canary_generator.rb +21 -9
- data/lib/generators/jobshop/dev_cert/dev_cert_generator.rb +124 -0
- data/lib/jobshop.rb +1 -1
- data/lib/jobshop/cli.rb +3 -3
- data/lib/jobshop/cli/app_generator.rb +15 -10
- data/lib/jobshop/cli/application.rb +7 -7
- data/lib/jobshop/cli/base.rb +65 -0
- data/lib/jobshop/cli/canary.rb +120 -22
- data/lib/jobshop/configuration.rb +1 -1
- data/lib/jobshop/engine.rb +8 -4
- data/lib/jobshop/helpers/migration.rb +27 -66
- data/lib/jobshop/mailroom/base_handler.rb +1 -1
- data/lib/jobshop/mailroom/null_handler.rb +1 -1
- data/lib/jobshop/mailroom/postmaster.rb +1 -1
- data/lib/jobshop/mailroom/rfq_handler.rb +1 -1
- data/lib/jobshop/version.rb +2 -2
- data/lib/tasks/jobshop_tasks.rake +15 -1
- metadata +114 -61
- data/app/controllers/jobshop/organizations/lookups_controller.rb +0 -18
- data/app/models/jobshop/employment_version.rb +0 -10
- data/app/models/jobshop/inspection/result.rb +0 -46
- data/app/models/jobshop/inspection/tuple.rb +0 -17
- data/app/models/jobshop/rfq_line.rb +0 -12
- data/db/migrate/20171216021554_create_people.rb +0 -43
- data/lib/generators/jobshop/app/templates/config/database.yml.tt +0 -19
@@ -5,7 +5,7 @@ module Jobshop
|
|
5
5
|
attr_accessor :aws, :smtp, :mailer_host, :session_store_url
|
6
6
|
|
7
7
|
def initialize
|
8
|
-
self.mailer_host = ENV.fetch("JOBSHOP_MAILER_HOST", "
|
8
|
+
self.mailer_host = ENV.fetch("JOBSHOP_MAILER_HOST", "https://jobshop.test:8443")
|
9
9
|
self.session_store_url = ENV.fetch("JOBSHOP_SESSION_STORE_URL", "")
|
10
10
|
|
11
11
|
self.aws = ActiveSupport::OrderedOptions.new
|
data/lib/jobshop/engine.rb
CHANGED
@@ -1,8 +1,11 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "devise"
|
4
4
|
require "haml-rails"
|
5
|
+
require "sass-rails"
|
6
|
+
require "statesman"
|
5
7
|
require "unitwise"
|
8
|
+
require "wisper"
|
6
9
|
|
7
10
|
module Jobshop
|
8
11
|
class Engine < ::Rails::Engine
|
@@ -12,9 +15,11 @@ module Jobshop
|
|
12
15
|
|
13
16
|
config.generators do |g|
|
14
17
|
g.orm :active_record, primary_key_type: :uuid
|
18
|
+
g.orm :active_record, foreign_key_type: :uuid
|
15
19
|
g.test_framework :rspec, view_specs: false
|
16
20
|
g.helper false
|
17
21
|
g.javascripts false
|
22
|
+
g.stylesheets false
|
18
23
|
end
|
19
24
|
|
20
25
|
ActiveSupport::Inflector.inflections do |inflect|
|
@@ -32,7 +37,6 @@ module Jobshop
|
|
32
37
|
initializer "jobshop.active_record_on_load" do
|
33
38
|
ActiveSupport.on_load(:active_record) do
|
34
39
|
require "activerecord_json_validator"
|
35
|
-
require "composite_primary_keys"
|
36
40
|
require "fast_jsonapi"
|
37
41
|
end
|
38
42
|
end
|
@@ -61,13 +65,13 @@ module Jobshop
|
|
61
65
|
initializer "jobshop.redis" do
|
62
66
|
#require "redis-rails"
|
63
67
|
|
64
|
-
Rails.application.config.session_store :cookie_store,
|
68
|
+
Rails.application.config.session_store :cookie_store,
|
69
|
+
key: "_your_app_session"
|
65
70
|
#(:redis_store, {
|
66
71
|
# servers: Jobshop.configuration.session_store_url
|
67
72
|
#})
|
68
73
|
end
|
69
74
|
|
70
|
-
|
71
75
|
initializer "jobshop.aws.config" do
|
72
76
|
require "aws-sdk-core"
|
73
77
|
|
@@ -1,24 +1,10 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Jobshop
|
4
4
|
module Helpers
|
5
5
|
module Migration
|
6
|
-
def idx_table_name_pkey(table_name)
|
7
|
-
execute <<~SQL
|
8
|
-
ALTER TABLE #{table_name}
|
9
|
-
ADD PRIMARY KEY USING INDEX idx_#{table_name}_pkey;
|
10
|
-
SQL
|
11
|
-
end
|
12
|
-
|
13
6
|
def fk_organization(table_name)
|
14
|
-
foreign_key table_name, :jobshop_organizations, :
|
15
|
-
end
|
16
|
-
|
17
|
-
def fk_created_by(table_name)
|
18
|
-
foreign_key table_name, :jobshop_people, {
|
19
|
-
organization_id: :organization_id,
|
20
|
-
created_by_id: :person_id
|
21
|
-
}
|
7
|
+
foreign_key table_name, :jobshop_organizations, { organization_id: :id }
|
22
8
|
end
|
23
9
|
|
24
10
|
def nested_set_attrs(table_name)
|
@@ -27,8 +13,7 @@ module Jobshop
|
|
27
13
|
add_column table_name, :lft, :uuid
|
28
14
|
add_column table_name, :rgt, :uuid
|
29
15
|
|
30
|
-
foreign_key table_name, table_name, {
|
31
|
-
parent_id: reference_column }
|
16
|
+
foreign_key table_name, table_name, { parent_id: reference_column }
|
32
17
|
end
|
33
18
|
|
34
19
|
def foreign_key(table_name, reference_table, columns, options = "")
|
@@ -58,6 +43,8 @@ module Jobshop
|
|
58
43
|
def create_table_with_auditing(table_name, *args) # rubocop: disable Metrics/MethodLength
|
59
44
|
options = args.extract_options!
|
60
45
|
primary_key_columns = options.delete(:primary_key)
|
46
|
+
id_column = options.delete(:id)
|
47
|
+
id_column = :uuid if id_column == nil
|
61
48
|
|
62
49
|
if primary_key_columns.is_a?(Hash)
|
63
50
|
primary_key = []
|
@@ -73,61 +60,35 @@ module Jobshop
|
|
73
60
|
end
|
74
61
|
|
75
62
|
primary_key_hash = Hash[primary_key.zip(types)]
|
76
|
-
auditing_table_name = table_name.to_s.
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
idx_table_name_pkey table_name
|
91
|
-
|
92
|
-
create_table(auditing_table_name, id: false) do |t|
|
93
|
-
# Put auditing columns first for the trigger to work properly
|
94
|
-
# Do not set a default on the primary key because the trigger sets it
|
95
|
-
# If the trigger fails to set the ID then this should probably blow up
|
96
|
-
t.uuid :auditing_id, null: false
|
97
|
-
t.index :auditing_id, unique: true,
|
98
|
-
name: :"idx_#{auditing_table_name}_pkey"
|
99
|
-
|
100
|
-
# Called audited_at so it does not conflict with created_at on the
|
101
|
-
# model being audited
|
102
|
-
t.datetime :audited_at, null: false
|
103
|
-
|
104
|
-
# Version being audited
|
105
|
-
t.bigint :version
|
106
|
-
|
107
|
-
# Put primary keys after auditing columns
|
108
|
-
primary_key_hash.each { |name, type| t.send(type, name, null: false) }
|
63
|
+
auditing_table_name = table_name.to_s.concat("_history")
|
64
|
+
trigger_name = table_name.to_s.concat("_trigger")
|
65
|
+
|
66
|
+
# Create primary table to hold presently valid data
|
67
|
+
create_table table_name, id: id_column do |t|
|
68
|
+
if primary_key_columns
|
69
|
+
primary_key_hash.each do |name, type|
|
70
|
+
next if :id == name
|
71
|
+
t.send(type, name, null: false)
|
72
|
+
end
|
73
|
+
|
74
|
+
t.index primary_key, unique: true,
|
75
|
+
name: :"index_jobshop_#{table_name}"
|
76
|
+
end
|
109
77
|
|
110
|
-
# Preserve column order and put everything else last
|
111
78
|
yield t
|
112
79
|
end
|
113
80
|
|
114
|
-
idx_table_name_pkey auditing_table_name
|
115
|
-
foreign_key auditing_table_name, table_name, primary_key
|
116
|
-
|
117
81
|
execute <<~SQL
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
prepare_auditable();
|
82
|
+
ALTER TABLE #{table_name}
|
83
|
+
ADD COLUMN sys_period tstzrange NOT NULL
|
84
|
+
DEFAULT tstzrange(current_timestamp, NULL);
|
85
|
+
|
86
|
+
CREATE TABLE #{auditing_table_name} (LIKE #{table_name});
|
124
87
|
|
125
|
-
CREATE
|
126
|
-
|
127
|
-
AFTER INSERT OR UPDATE
|
128
|
-
ON #{table_name}
|
88
|
+
CREATE TRIGGER #{trigger_name}
|
89
|
+
BEFORE INSERT OR UPDATE OR DELETE ON #{table_name}
|
129
90
|
FOR EACH ROW EXECUTE PROCEDURE
|
130
|
-
|
91
|
+
versioning('sys_period', '#{auditing_table_name}', true);
|
131
92
|
SQL
|
132
93
|
end
|
133
94
|
end
|
data/lib/jobshop/version.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Jobshop
|
4
4
|
def self.gem_version
|
@@ -8,7 +8,7 @@ module Jobshop
|
|
8
8
|
module VERSION
|
9
9
|
MAJOR = 0
|
10
10
|
MINOR = 0
|
11
|
-
TINY =
|
11
|
+
TINY = 179
|
12
12
|
PRE = nil
|
13
13
|
|
14
14
|
CODE_NAME = "prime time to bump the version"
|
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# This effectively hides `rake jobshop:install:migrations` from `$ rake -T`.
|
4
4
|
Rake::Task["jobshop:install:migrations"].instance_variable_set(:@comments, [])
|
@@ -34,6 +34,20 @@ namespace :jobshop do
|
|
34
34
|
shoryuken -R -q #{queue_name} -r #{postmaster_path}
|
35
35
|
SHELL
|
36
36
|
end
|
37
|
+
|
38
|
+
namespace :webpack do
|
39
|
+
desc "Install dependencies"
|
40
|
+
task :install do
|
41
|
+
Dir.chdir(File.join(__dir__, "../..")) do
|
42
|
+
puts Dir.pwd
|
43
|
+
system "yarn install --no-progress --production"
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
desc "Compile assets"
|
48
|
+
task compile: %i[ yarn environment ] do
|
49
|
+
end
|
50
|
+
end
|
37
51
|
end
|
38
52
|
|
39
53
|
%w( db:migrate db:rollback db:migrate:up db:migrate:down ).each do |t|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jobshop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.179
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Frank J. Mattia
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-01
|
11
|
+
date: 2019-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord_json_validator
|
@@ -30,56 +30,42 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.39.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
40
|
+
version: 1.39.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: aws-sdk-sqs
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.
|
47
|
+
version: 1.15.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: composite_primary_keys
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 11.1.0
|
62
|
-
type: :runtime
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: 11.1.0
|
54
|
+
version: 1.15.0
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
56
|
name: devise
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
72
58
|
requirements:
|
73
59
|
- - "~>"
|
74
60
|
- !ruby/object:Gem::Version
|
75
|
-
version: 4.
|
61
|
+
version: 4.6.0
|
76
62
|
type: :runtime
|
77
63
|
prerelease: false
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
79
65
|
requirements:
|
80
66
|
- - "~>"
|
81
67
|
- !ruby/object:Gem::Version
|
82
|
-
version: 4.
|
68
|
+
version: 4.6.0
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: fast_jsonapi
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,14 +86,14 @@ dependencies:
|
|
100
86
|
requirements:
|
101
87
|
- - "~>"
|
102
88
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
89
|
+
version: 2.0.0
|
104
90
|
type: :runtime
|
105
91
|
prerelease: false
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
108
94
|
- - "~>"
|
109
95
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
96
|
+
version: 2.0.0
|
111
97
|
- !ruby/object:Gem::Dependency
|
112
98
|
name: liner
|
113
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,6 +136,20 @@ dependencies:
|
|
150
136
|
- - "~>"
|
151
137
|
- !ruby/object:Gem::Version
|
152
138
|
version: 1.0.2
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rails
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - '='
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 5.2.3
|
146
|
+
type: :runtime
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - '='
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 5.2.3
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: redis-rails
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
@@ -164,20 +164,34 @@ dependencies:
|
|
164
164
|
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: 5.0.2
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: rolify
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 5.2.0
|
174
|
+
type: :runtime
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 5.2.0
|
167
181
|
- !ruby/object:Gem::Dependency
|
168
182
|
name: sass-rails
|
169
183
|
requirement: !ruby/object:Gem::Requirement
|
170
184
|
requirements:
|
171
185
|
- - "~>"
|
172
186
|
- !ruby/object:Gem::Version
|
173
|
-
version: 5.0.
|
187
|
+
version: 5.0.7
|
174
188
|
type: :runtime
|
175
189
|
prerelease: false
|
176
190
|
version_requirements: !ruby/object:Gem::Requirement
|
177
191
|
requirements:
|
178
192
|
- - "~>"
|
179
193
|
- !ruby/object:Gem::Version
|
180
|
-
version: 5.0.
|
194
|
+
version: 5.0.7
|
181
195
|
- !ruby/object:Gem::Dependency
|
182
196
|
name: shoryuken
|
183
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -198,14 +212,14 @@ dependencies:
|
|
198
212
|
requirements:
|
199
213
|
- - "~>"
|
200
214
|
- !ruby/object:Gem::Version
|
201
|
-
version:
|
215
|
+
version: 4.1.0
|
202
216
|
type: :runtime
|
203
217
|
prerelease: false
|
204
218
|
version_requirements: !ruby/object:Gem::Requirement
|
205
219
|
requirements:
|
206
220
|
- - "~>"
|
207
221
|
- !ruby/object:Gem::Version
|
208
|
-
version:
|
222
|
+
version: 4.1.0
|
209
223
|
- !ruby/object:Gem::Dependency
|
210
224
|
name: unitwise
|
211
225
|
requirement: !ruby/object:Gem::Requirement
|
@@ -221,33 +235,33 @@ dependencies:
|
|
221
235
|
- !ruby/object:Gem::Version
|
222
236
|
version: 2.2.0
|
223
237
|
- !ruby/object:Gem::Dependency
|
224
|
-
name:
|
238
|
+
name: wisper
|
225
239
|
requirement: !ruby/object:Gem::Requirement
|
226
240
|
requirements:
|
227
|
-
- -
|
241
|
+
- - "~>"
|
228
242
|
- !ruby/object:Gem::Version
|
229
|
-
version:
|
243
|
+
version: 2.0.0
|
230
244
|
type: :runtime
|
231
245
|
prerelease: false
|
232
246
|
version_requirements: !ruby/object:Gem::Requirement
|
233
247
|
requirements:
|
234
|
-
- -
|
248
|
+
- - "~>"
|
235
249
|
- !ruby/object:Gem::Version
|
236
|
-
version:
|
250
|
+
version: 2.0.0
|
237
251
|
- !ruby/object:Gem::Dependency
|
238
252
|
name: capybara
|
239
253
|
requirement: !ruby/object:Gem::Requirement
|
240
254
|
requirements:
|
241
255
|
- - "~>"
|
242
256
|
- !ruby/object:Gem::Version
|
243
|
-
version: '3.
|
257
|
+
version: '3.16'
|
244
258
|
type: :development
|
245
259
|
prerelease: false
|
246
260
|
version_requirements: !ruby/object:Gem::Requirement
|
247
261
|
requirements:
|
248
262
|
- - "~>"
|
249
263
|
- !ruby/object:Gem::Version
|
250
|
-
version: '3.
|
264
|
+
version: '3.16'
|
251
265
|
- !ruby/object:Gem::Dependency
|
252
266
|
name: coveralls
|
253
267
|
requirement: !ruby/object:Gem::Requirement
|
@@ -262,34 +276,20 @@ dependencies:
|
|
262
276
|
- - "~>"
|
263
277
|
- !ruby/object:Gem::Version
|
264
278
|
version: '0.8'
|
265
|
-
- !ruby/object:Gem::Dependency
|
266
|
-
name: database_cleaner
|
267
|
-
requirement: !ruby/object:Gem::Requirement
|
268
|
-
requirements:
|
269
|
-
- - "~>"
|
270
|
-
- !ruby/object:Gem::Version
|
271
|
-
version: '1.6'
|
272
|
-
type: :development
|
273
|
-
prerelease: false
|
274
|
-
version_requirements: !ruby/object:Gem::Requirement
|
275
|
-
requirements:
|
276
|
-
- - "~>"
|
277
|
-
- !ruby/object:Gem::Version
|
278
|
-
version: '1.6'
|
279
279
|
- !ruby/object:Gem::Dependency
|
280
280
|
name: factory_bot_rails
|
281
281
|
requirement: !ruby/object:Gem::Requirement
|
282
282
|
requirements:
|
283
283
|
- - "~>"
|
284
284
|
- !ruby/object:Gem::Version
|
285
|
-
version: '
|
285
|
+
version: '5.0'
|
286
286
|
type: :development
|
287
287
|
prerelease: false
|
288
288
|
version_requirements: !ruby/object:Gem::Requirement
|
289
289
|
requirements:
|
290
290
|
- - "~>"
|
291
291
|
- !ruby/object:Gem::Version
|
292
|
-
version: '
|
292
|
+
version: '5.0'
|
293
293
|
- !ruby/object:Gem::Dependency
|
294
294
|
name: faker
|
295
295
|
requirement: !ruby/object:Gem::Requirement
|
@@ -346,20 +346,34 @@ dependencies:
|
|
346
346
|
- - "~>"
|
347
347
|
- !ruby/object:Gem::Version
|
348
348
|
version: '3.5'
|
349
|
+
- !ruby/object:Gem::Dependency
|
350
|
+
name: selenium-webdriver
|
351
|
+
requirement: !ruby/object:Gem::Requirement
|
352
|
+
requirements:
|
353
|
+
- - "~>"
|
354
|
+
- !ruby/object:Gem::Version
|
355
|
+
version: '3.141'
|
356
|
+
type: :development
|
357
|
+
prerelease: false
|
358
|
+
version_requirements: !ruby/object:Gem::Requirement
|
359
|
+
requirements:
|
360
|
+
- - "~>"
|
361
|
+
- !ruby/object:Gem::Version
|
362
|
+
version: '3.141'
|
349
363
|
- !ruby/object:Gem::Dependency
|
350
364
|
name: shoulda-matchers
|
351
365
|
requirement: !ruby/object:Gem::Requirement
|
352
366
|
requirements:
|
353
367
|
- - "~>"
|
354
368
|
- !ruby/object:Gem::Version
|
355
|
-
version: 4.0
|
369
|
+
version: '4.0'
|
356
370
|
type: :development
|
357
371
|
prerelease: false
|
358
372
|
version_requirements: !ruby/object:Gem::Requirement
|
359
373
|
requirements:
|
360
374
|
- - "~>"
|
361
375
|
- !ruby/object:Gem::Version
|
362
|
-
version: 4.0
|
376
|
+
version: '4.0'
|
363
377
|
- !ruby/object:Gem::Dependency
|
364
378
|
name: terminal-table
|
365
379
|
requirement: !ruby/object:Gem::Requirement
|
@@ -400,42 +414,52 @@ files:
|
|
400
414
|
- LICENSE
|
401
415
|
- README.md
|
402
416
|
- Rakefile
|
417
|
+
- app/assets/javascripts/application.js
|
403
418
|
- app/controllers/jobshop/application_controller.rb
|
404
419
|
- app/controllers/jobshop/dashboards_controller.rb
|
405
|
-
- app/controllers/jobshop/
|
420
|
+
- app/controllers/jobshop/departments_controller.rb
|
421
|
+
- app/controllers/jobshop/employees_controller.rb
|
422
|
+
- app/controllers/jobshop/organizations_controller.rb
|
406
423
|
- app/controllers/jobshop/places_controller.rb
|
407
424
|
- app/controllers/jobshop/registrations_controller.rb
|
425
|
+
- app/controllers/jobshop/rfqs_controller.rb
|
426
|
+
- app/controllers/jobshop/roles_controller.rb
|
408
427
|
- app/controllers/jobshop/users_controller.rb
|
428
|
+
- app/helpers/jobshop/application_helper.rb
|
409
429
|
- app/jobs/jobshop/application_job.rb
|
430
|
+
- app/listeners/jobshop/assignment_listener.rb
|
410
431
|
- app/mailers/jobshop/application_mailer.rb
|
411
432
|
- app/mailers/jobshop/rfq_responder_mailer.rb
|
412
433
|
- app/models/jobshop/ability.rb
|
413
434
|
- app/models/jobshop/application_record.rb
|
435
|
+
- app/models/jobshop/auditing.rb
|
414
436
|
- app/models/jobshop/collection.rb
|
415
437
|
- app/models/jobshop/customer.rb
|
416
438
|
- app/models/jobshop/customer/category.rb
|
417
439
|
- app/models/jobshop/customer/contact.rb
|
418
440
|
- app/models/jobshop/dashboard.rb
|
441
|
+
- app/models/jobshop/department.rb
|
442
|
+
- app/models/jobshop/department/assignment.rb
|
419
443
|
- app/models/jobshop/employee.rb
|
420
444
|
- app/models/jobshop/employment.rb
|
421
|
-
- app/models/jobshop/employment_version.rb
|
422
445
|
- app/models/jobshop/inspection.rb
|
423
446
|
- app/models/jobshop/inspection/boolean_criterion.rb
|
424
447
|
- app/models/jobshop/inspection/criterion.rb
|
425
448
|
- app/models/jobshop/inspection/deviation_criterion.rb
|
426
449
|
- app/models/jobshop/inspection/limit_criterion.rb
|
427
450
|
- app/models/jobshop/inspection/report.rb
|
428
|
-
- app/models/jobshop/inspection/result.rb
|
429
|
-
- app/models/jobshop/inspection/tuple.rb
|
430
451
|
- app/models/jobshop/mailman.rb
|
431
452
|
- app/models/jobshop/order.rb
|
432
453
|
- app/models/jobshop/order_line.rb
|
433
454
|
- app/models/jobshop/organization.rb
|
455
|
+
- app/models/jobshop/organization_state.rb
|
434
456
|
- app/models/jobshop/place.rb
|
435
457
|
- app/models/jobshop/product.rb
|
436
458
|
- app/models/jobshop/registration.rb
|
437
459
|
- app/models/jobshop/rfq.rb
|
438
|
-
- app/models/jobshop/
|
460
|
+
- app/models/jobshop/rfq/line.rb
|
461
|
+
- app/models/jobshop/rfq/line/assignment.rb
|
462
|
+
- app/models/jobshop/rfq/line/quantity.rb
|
439
463
|
- app/models/jobshop/role.rb
|
440
464
|
- app/models/jobshop/role_ability.rb
|
441
465
|
- app/models/jobshop/role_assignment.rb
|
@@ -444,8 +468,32 @@ files:
|
|
444
468
|
- app/models/jobshop/thing.rb
|
445
469
|
- app/models/jobshop/user.rb
|
446
470
|
- app/models/jobshop/virtual_record.rb
|
471
|
+
- app/views/jobshop/dashboards/show.html.haml
|
472
|
+
- app/views/jobshop/departments/_form.html.haml
|
473
|
+
- app/views/jobshop/departments/edit.html.haml
|
474
|
+
- app/views/jobshop/departments/index.html.haml
|
475
|
+
- app/views/jobshop/departments/new.html.haml
|
476
|
+
- app/views/jobshop/departments/show.html.haml
|
477
|
+
- app/views/jobshop/employees/_form.html.haml
|
478
|
+
- app/views/jobshop/employees/edit.html.haml
|
479
|
+
- app/views/jobshop/employees/index.html.haml
|
480
|
+
- app/views/jobshop/employees/new.html.haml
|
481
|
+
- app/views/jobshop/employees/show.html.haml
|
482
|
+
- app/views/jobshop/organizations/_form.html.haml
|
483
|
+
- app/views/jobshop/organizations/edit.html.haml
|
484
|
+
- app/views/jobshop/organizations/index.html.haml
|
485
|
+
- app/views/jobshop/organizations/new.html.haml
|
486
|
+
- app/views/jobshop/organizations/show.html.haml
|
447
487
|
- app/views/jobshop/rfq_responder_mailer/verified_contact.html.erb
|
448
488
|
- app/views/jobshop/rfq_responder_mailer/verified_contact.text.erb
|
489
|
+
- app/views/jobshop/rfqs/_form.html.haml
|
490
|
+
- app/views/jobshop/rfqs/edit.html.haml
|
491
|
+
- app/views/jobshop/rfqs/index.html.haml
|
492
|
+
- app/views/jobshop/roles/_form.html.haml
|
493
|
+
- app/views/jobshop/roles/edit.html.haml
|
494
|
+
- app/views/jobshop/roles/index.html.haml
|
495
|
+
- app/views/jobshop/roles/new.html.haml
|
496
|
+
- app/views/jobshop/roles/show.html.haml
|
449
497
|
- app/views/layouts/jobshop/application.html.haml
|
450
498
|
- app/views/layouts/jobshop/mailer.html.erb
|
451
499
|
- app/views/layouts/jobshop/mailer.text.erb
|
@@ -454,8 +502,8 @@ files:
|
|
454
502
|
- config/routes.rb
|
455
503
|
- db/migrate/20170311194758_initialize_jobshop.rb
|
456
504
|
- db/migrate/20171216021339_create_organizations.rb
|
505
|
+
- db/migrate/20171216021350_create_users.rb
|
457
506
|
- db/migrate/20171216021400_create_employees.rb
|
458
|
-
- db/migrate/20171216021554_create_people.rb
|
459
507
|
- db/migrate/20171216021853_create_customers.rb
|
460
508
|
- db/migrate/20171216022020_create_places.rb
|
461
509
|
- db/migrate/20171216022135_create_products.rb
|
@@ -466,22 +514,27 @@ files:
|
|
466
514
|
- db/migrate/20180107203241_create_inspections.rb
|
467
515
|
- db/migrate/20181117023949_create_rfqs.rb
|
468
516
|
- db/migrate/20181118014603_create_mailmen.rb
|
517
|
+
- db/migrate/20190309163306_create_departments.rb
|
518
|
+
- db/migrate/support/temporal_tables.sql
|
469
519
|
- db/seeds.rb
|
470
520
|
- exe/jobshop
|
471
521
|
- lib/generators/jobshop/app/USAGE
|
472
522
|
- lib/generators/jobshop/app/app_generator.rb
|
473
523
|
- lib/generators/jobshop/app/templates/Procfile.tt
|
474
524
|
- lib/generators/jobshop/app/templates/README.md.tt
|
475
|
-
- lib/generators/jobshop/app/templates/config/
|
525
|
+
- lib/generators/jobshop/app/templates/config/databases/postgresql.yml.tt
|
526
|
+
- lib/generators/jobshop/app/templates/config/puma.rb.tt
|
476
527
|
- lib/generators/jobshop/canary/canary_generator.rb
|
477
528
|
- lib/generators/jobshop/canary/templates/config/boot.rb.tt
|
478
529
|
- lib/generators/jobshop/config/config_generator.rb
|
479
530
|
- lib/generators/jobshop/config/templates/config/initializers/jobshop.rb.tt
|
531
|
+
- lib/generators/jobshop/dev_cert/dev_cert_generator.rb
|
480
532
|
- lib/generators/jobshop/orm_helpers.rb
|
481
533
|
- lib/jobshop.rb
|
482
534
|
- lib/jobshop/cli.rb
|
483
535
|
- lib/jobshop/cli/app_generator.rb
|
484
536
|
- lib/jobshop/cli/application.rb
|
537
|
+
- lib/jobshop/cli/base.rb
|
485
538
|
- lib/jobshop/cli/canary.rb
|
486
539
|
- lib/jobshop/configuration.rb
|
487
540
|
- lib/jobshop/engine.rb
|
@@ -512,7 +565,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
512
565
|
- !ruby/object:Gem::Version
|
513
566
|
version: '0'
|
514
567
|
requirements: []
|
515
|
-
rubygems_version: 3.0.
|
568
|
+
rubygems_version: 3.0.3
|
516
569
|
signing_key:
|
517
570
|
specification_version: 4
|
518
571
|
summary: An Open Source Manufacturing Execution System
|