ecom_core 1.2.31 → 1.2.36

Sign up to get free protection for your applications and to get access to all the features.
Files changed (135) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/ecom/core/{project_crews_controller.rb → site_crews_controller.rb} +5 -4
  3. data/app/controllers/ecom/core/unit_costs_controller.rb +29 -0
  4. data/app/models/ecom/core/attendance_sheet.rb +19 -19
  5. data/app/models/ecom/core/available_unit_of_measurement.rb +10 -0
  6. data/app/models/ecom/core/crew.rb +15 -3
  7. data/app/models/ecom/core/crew_contract.rb +41 -1
  8. data/app/models/ecom/core/crew_contract_transaction.rb +29 -0
  9. data/app/models/ecom/core/crew_id_card.rb +36 -0
  10. data/app/models/ecom/core/crew_time.rb +1 -1
  11. data/app/models/ecom/core/dimension_element.rb +22 -0
  12. data/app/models/ecom/core/inspection_checklist.rb +6 -0
  13. data/app/models/ecom/core/job_card.rb +1 -1
  14. data/app/models/ecom/core/lookahead_plan.rb +41 -0
  15. data/app/models/ecom/core/lookahead_plan_history.rb +16 -0
  16. data/app/models/ecom/core/lookahead_plan_review_time.rb +29 -0
  17. data/app/models/ecom/core/lookahead_plan_task_progress.rb +22 -0
  18. data/app/models/ecom/core/material.rb +6 -0
  19. data/app/models/ecom/core/material_identity.rb +21 -0
  20. data/app/models/ecom/core/material_item.rb +18 -0
  21. data/app/models/ecom/core/material_sub_type.rb +20 -0
  22. data/app/models/ecom/core/measurement_unit.rb +45 -0
  23. data/app/models/ecom/core/overtime_sheet.rb +26 -16
  24. data/app/models/ecom/core/payroll.rb +3 -3
  25. data/app/models/ecom/core/project.rb +0 -3
  26. data/app/models/ecom/core/project_template.rb +11 -0
  27. data/app/models/ecom/core/project_work_item_template.rb +9 -0
  28. data/app/models/ecom/core/resource_requisition.rb +21 -0
  29. data/app/models/ecom/core/resource_requisition_item.rb +45 -0
  30. data/app/models/ecom/core/schedule_setting.rb +8 -6
  31. data/app/models/ecom/core/{project_crew.rb → site.rb} +8 -4
  32. data/app/models/ecom/core/site_crew.rb +27 -0
  33. data/app/models/ecom/core/takeoff.rb +10 -0
  34. data/app/models/ecom/core/task.rb +28 -4
  35. data/app/models/ecom/core/task_attachment.rb +11 -0
  36. data/app/models/ecom/core/task_inspection_checklist.rb +18 -0
  37. data/app/models/ecom/core/task_resource.rb +2 -0
  38. data/app/models/ecom/core/task_template.rb +24 -2
  39. data/app/models/ecom/core/task_template_inspection_checklist.rb +8 -0
  40. data/app/models/ecom/core/unit_cost.rb +27 -0
  41. data/app/models/ecom/core/unit_of_measure.rb +8 -0
  42. data/app/models/ecom/core/work_item_resource_requirement_template.rb +18 -0
  43. data/app/models/ecom/core/work_order.rb +26 -0
  44. data/app/models/ecom/core/work_package.rb +3 -0
  45. data/app/models/ecom/core/work_product.rb +3 -18
  46. data/app/models/ecom/core/work_product_template.rb +2 -2
  47. data/app/serializers/ecom/core/unit_cost_serializer.rb +21 -0
  48. data/app/services/ecom/core/crew_contract_transaction_service.rb +89 -0
  49. data/app/services/ecom/core/site_crew_service.rb +44 -0
  50. data/app/uploaders/ecom/core/photo_uploader.rb +13 -2
  51. data/app/uploaders/ecom/core/task_attachment_uploader.rb +11 -0
  52. data/config/initializers/carrierwave.rb +9 -0
  53. data/config/routes.rb +4 -2
  54. data/db/migrate/20191118052213_create_ecom_core_unit_of_measures.rb +11 -0
  55. data/db/migrate/20191119012030_create_ecom_core_task_templates.rb +10 -1
  56. data/db/migrate/20191119013236_create_ecom_core_work_product_templates.rb +0 -15
  57. data/db/migrate/20191119021405_create_ecom_core_project_templates.rb +15 -0
  58. data/db/migrate/20191119034319_create_ecom_core_project_work_item_templates.rb +20 -0
  59. data/db/migrate/20191201145849_create_ecom_core_sites.rb +16 -0
  60. data/db/migrate/20191202222210_create_ecom_core_work_packages.rb +12 -0
  61. data/db/migrate/20191202235434_create_ecom_core_work_products.rb +2 -18
  62. data/db/migrate/{20191225100054_create_ecom_core_crews.rb → 20191207103729_create_ecom_core_crews.rb} +3 -3
  63. data/db/migrate/20191207103730_create_ecom_core_lookahead_plans.rb +19 -0
  64. data/db/migrate/20191207103731_create_ecom_core_work_orders.rb +23 -0
  65. data/db/migrate/20191207103735_create_ecom_core_tasks.rb +20 -7
  66. data/db/migrate/20191225140433_create_ecom_core_attendance_sheets.rb +4 -4
  67. data/db/migrate/20200126081005_create_ecom_core_payrolls.rb +3 -3
  68. data/db/migrate/20200410090701_create_ecom_core_overtime_sheets.rb +4 -4
  69. data/db/migrate/20200616044231_create_ecom_core_material_sub_types.rb +14 -0
  70. data/db/migrate/20200616051902_create_ecom_core_material_identities.rb +17 -0
  71. data/db/migrate/20200618105233_create_ecom_core_material_items.rb +16 -0
  72. data/db/migrate/20200813165553_create_ecom_core_measurement_units.rb +14 -0
  73. data/db/migrate/20200813165555_create_ecom_core_available_unit_of_measurements.rb +16 -0
  74. data/db/migrate/20200814043632_create_ecom_core_takeoffs.rb +14 -0
  75. data/db/migrate/20200901085227_create_ecom_core_crew_contracts.rb +7 -1
  76. data/db/migrate/20200901134912_create_ecom_core_dimension_elements.rb +23 -0
  77. data/db/migrate/20200919085613_create_ecom_core_job_cards.rb +1 -0
  78. data/db/migrate/20201013072924_create_ecom_core_crew_contract_transactions.rb +16 -0
  79. data/db/migrate/20201013090609_create_ecom_core_site_crews.rb.rb +22 -0
  80. data/db/migrate/20201013094100_create_ecom_core_crew_id_cards.rb +16 -0
  81. data/db/migrate/20201113050953_create_ecom_core_task_inspection_checklists.rb +22 -0
  82. data/db/migrate/20201113094302_create_ecom_core_task_template_inspection_checklists.rb +17 -0
  83. data/db/migrate/20201121064916_create_ecom_core_unit_costs.rb +30 -0
  84. data/db/migrate/20201122123227_create_ecom_core_lookahead_plan_backlogs.rb +18 -0
  85. data/db/migrate/20201122170645_create_ecom_core_lookahead_plan_histories.rb +21 -0
  86. data/db/migrate/20201122170724_create_ecom_core_lookahead_plan_task_progresses.rb +21 -0
  87. data/db/migrate/20201123134917_create_ecom_core_task_attachments.rb +15 -0
  88. data/db/migrate/20201124171642_create_ecom_core_lookahead_plan_review_times.rb +17 -0
  89. data/db/migrate/20201125191158_create_ecom_core_work_item_resource_requirement_templates.rb +31 -0
  90. data/db/migrate/20201126191334_create_ecom_core_resource_requisitions.rb +23 -0
  91. data/db/migrate/20201126191349_create_ecom_core_resource_requisition_items.rb +33 -0
  92. data/lib/ecom/core/version.rb +1 -1
  93. data/spec/factories/ecom/core/attendance_sheets.rb +1 -1
  94. data/spec/factories/ecom/core/available_unit_of_measurements.rb +6 -0
  95. data/spec/factories/ecom/core/crew_contract_transactions.rb +8 -0
  96. data/spec/factories/ecom/core/crew_contracts.rb +12 -0
  97. data/spec/factories/ecom/core/crew_id_cards.rb +8 -0
  98. data/spec/factories/ecom/core/dimension_elements.rb +8 -0
  99. data/spec/factories/ecom/core/inspection_checklists.rb +5 -0
  100. data/spec/factories/ecom/core/lookahead_plan_histories.rb +9 -0
  101. data/spec/factories/ecom/core/lookahead_plan_review_times.rb +8 -0
  102. data/spec/factories/ecom/core/lookahead_plan_task_progresses.rb +9 -0
  103. data/spec/factories/ecom/core/lookahead_plans.rb +10 -0
  104. data/spec/factories/ecom/core/maintenance_statuses.rb +1 -1
  105. data/spec/factories/ecom/core/material_identities.rb +6 -0
  106. data/spec/factories/ecom/core/material_items.rb +6 -0
  107. data/spec/factories/ecom/core/material_sub_types.rb +6 -0
  108. data/spec/factories/ecom/core/materials.rb +5 -0
  109. data/spec/factories/ecom/core/measurement_units.rb +16 -0
  110. data/spec/factories/ecom/core/overtime_sheets.rb +1 -1
  111. data/spec/factories/ecom/core/payrolls.rb +1 -1
  112. data/spec/factories/ecom/core/project_templates.rb +8 -0
  113. data/spec/factories/ecom/core/project_work_item_templates.rb +7 -0
  114. data/spec/factories/ecom/core/resource_requisition_items.rb +12 -0
  115. data/spec/factories/ecom/core/resource_requisitions.rb +9 -0
  116. data/spec/factories/ecom/core/site_crews.rb +10 -0
  117. data/spec/factories/ecom/core/sites.rb +8 -0
  118. data/spec/factories/ecom/core/takeoffs.rb +6 -0
  119. data/spec/factories/ecom/core/task_attachments.rb +8 -0
  120. data/spec/factories/ecom/core/task_inspection_checklists.rb +11 -0
  121. data/spec/factories/ecom/core/task_template_inspection_checklists.rb +7 -0
  122. data/spec/factories/ecom/core/task_templates.rb +12 -1
  123. data/spec/factories/ecom/core/tasks.rb +9 -3
  124. data/spec/factories/ecom/core/unit_costs.rb +13 -0
  125. data/spec/factories/ecom/core/unit_of_measures.rb +7 -0
  126. data/spec/factories/ecom/core/work_item_resource_requirement_templates.rb +10 -0
  127. data/spec/factories/ecom/core/work_orders.rb +10 -0
  128. data/spec/factories/ecom/core/work_packages.rb +6 -0
  129. data/spec/factories/ecom/core/work_product_templates.rb +0 -1
  130. data/spec/factories/ecom/core/work_products.rb +1 -8
  131. metadata +155 -9
  132. data/app/services/ecom/core/project_crew_service.rb +0 -39
  133. data/db/migrate/20191225121850_create_ecom_core_project_crews.rb +0 -19
  134. data/db/migrate/20200922044959_add_costs_approved_to_job_card.rb +0 -5
  135. data/spec/factories/ecom/core/project_crews.rb +0 -9
@@ -0,0 +1,8 @@
1
+ FactoryBot.define do
2
+ factory :dimension_element, class: Ecom::Core::DimensionElement do
3
+ association :work_product
4
+ association :measurement_unit
5
+ amount { 5 }
6
+ dimension_element_name { Ecom::Core::DimensionElement::DIMENSION_ELEMENT_NAMES.sample }
7
+ end
8
+ end
@@ -0,0 +1,5 @@
1
+ FactoryBot.define do
2
+ factory :inspection_checklist, class: Ecom::Core::InspectionChecklist, parent: :lookup do
3
+ type { 'Ecom::Core::InspectionChecklist' }
4
+ end
5
+ end
@@ -0,0 +1,9 @@
1
+ FactoryBot.define do
2
+ factory :lookahead_plan_history, class: Ecom::Core::LookaheadPlanHistory do
3
+ association :lookahead_plan
4
+ association :task
5
+ start_date { Time.now }
6
+ end_date { Time.now + 2.day }
7
+ lookahead_plan_revision_number { 1 }
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ FactoryBot.define do
2
+ factory :lookahead_plan_review_time, class: Ecom::Core::LookaheadPlanReviewTime do
3
+ association :lookahead_plan
4
+ review_time { Time.now + 10.day }
5
+ status { :awaiting }
6
+ lookahead_plan_revision_number { 0 }
7
+ end
8
+ end
@@ -0,0 +1,9 @@
1
+ FactoryBot.define do
2
+ factory :lookahead_plan_task_progress, class: Ecom::Core::LookaheadPlanTaskProgress do
3
+ association :lookahead_plan
4
+ association :task
5
+ started_on { Time.now }
6
+ ended_on { Time.now + 2.day }
7
+ lookahead_plan_revision_number { 1 }
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ FactoryBot.define do
2
+ factory :lookahead_plan, class: Ecom::Core::LookaheadPlan do
3
+ name { FFaker::Name.name }
4
+ start_date { Time.now }
5
+ end_date { (Time.now + 1.day).to_s }
6
+ status { :new }
7
+ revision_number { 1 }
8
+ association :prepared_by, factory: :user
9
+ end
10
+ end
@@ -1,5 +1,5 @@
1
1
  FactoryBot.define do
2
2
  factory :maintenance_status, class: Ecom::Core::MaintenanceStatus, parent: :lookup do
3
- type { 'Ecom::Core::MaintenanceStatus'}
3
+ type { 'Ecom::Core::MaintenanceStatus' }
4
4
  end
5
5
  end
@@ -0,0 +1,6 @@
1
+ FactoryBot.define do
2
+ factory :material_identity, class: Ecom::Core::MaterialIdentity do
3
+ association :material_type
4
+ material_sub_type { association :material_sub_type, material_type_id: material_type.id }
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ FactoryBot.define do
2
+ factory :material_item, class: Ecom::Core::MaterialItem do
3
+ association :material_identity
4
+ serial_number { "SN_#{(Time.now.to_f * 1000).to_i}" }
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ FactoryBot.define do
2
+ factory :material_sub_type, class: Ecom::Core::MaterialSubType do
3
+ name { FFaker::Name.name }
4
+ association :material_type
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ FactoryBot.define do
2
+ factory :material, class: Ecom::Core::Material, parent: :lookup do
3
+ type { 'Ecom::Core::Material' }
4
+ end
5
+ end
@@ -0,0 +1,16 @@
1
+ FactoryBot.define do
2
+ factory :measurement_unit, class: Ecom::Core::MeasurementUnit do
3
+ name { 'Meter' }
4
+ abbrivation { 'm' }
5
+ physical_quantity { Ecom::Core::MeasurementUnit::LENGTH }
6
+ is_si_unit { true }
7
+ conversion_factor { 1 }
8
+ system_of_measurement { Ecom::Core::MeasurementUnit::METRIC }
9
+
10
+ factory :non_si_measurement_unit do
11
+ name { 'kilometer' }
12
+ is_si_unit { false }
13
+ conversion_factor { 0.001 }
14
+ end
15
+ end
16
+ end
@@ -5,6 +5,6 @@ FactoryBot.define do
5
5
  submitted_at { nil }
6
6
  approved_at { nil }
7
7
  status { Ecom::Core::StatusConstants::OPEN }
8
- association :project
8
+ association :site
9
9
  end
10
10
  end
@@ -3,6 +3,6 @@ FactoryBot.define do
3
3
  month { 1 }
4
4
  year { 2000 }
5
5
  approved { false }
6
- association :project
6
+ association :site
7
7
  end
8
8
  end
@@ -0,0 +1,8 @@
1
+ FactoryBot.define do
2
+ factory :project_template, class: Ecom::Core::ProjectTemplate do
3
+ code { FFaker::Name.name }
4
+ name { FFaker::Name.name }
5
+ description { FFaker::Name.name }
6
+ association :task_template_type
7
+ end
8
+ end
@@ -0,0 +1,7 @@
1
+ FactoryBot.define do
2
+ factory :project_work_item_template, class: Ecom::Core::ProjectWorkItemTemplate do
3
+ association :task_template
4
+ association :work_product_template
5
+ association :project_template
6
+ end
7
+ end
@@ -0,0 +1,12 @@
1
+ FactoryBot.define do
2
+ factory :resource_requisition_item, class: Ecom::Core::ResourceRequisitionItem do
3
+ association :resource_requisition
4
+ association :resource_type
5
+ requested_quantity { 2000 }
6
+ association :requested_quantity_measurement_unit, factory: :measurement_unit
7
+ association :awaiting_quantity_measurement_unit, factory: :non_si_measurement_unit
8
+ awaiting_quantity { 1 }
9
+ due_date { Time.now + 1.week }
10
+ status { 'Pending' }
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+ FactoryBot.define do
2
+ factory :resource_requisition, class: Ecom::Core::ResourceRequisition do
3
+ association :lookahead_plan
4
+ association :reviewed_by, factory: :user
5
+ association :approved_by, factory: :user
6
+ status { 'Draft' }
7
+ delivery_point { FFaker::Name.name }
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ FactoryBot.define do
2
+ factory :site_crew, class: Ecom::Core::SiteCrew do
3
+ association :crew
4
+ association :site
5
+ site_crew_type { Ecom::Core::SiteCrew::SITE_CREW_TYPES.sample }
6
+ start_date { Time.now }
7
+ end_date { Time.now + 1.month }
8
+ status { 'Active' }
9
+ end
10
+ end
@@ -0,0 +1,8 @@
1
+ FactoryBot.define do
2
+ factory :site, class: Ecom::Core::Site do
3
+ name { FFaker::Name.name }
4
+ address { FFaker::Address.street_address }
5
+ association :project
6
+ status { Ecom::Core::Site::STATUSES.sample }
7
+ end
8
+ end
@@ -0,0 +1,6 @@
1
+ FactoryBot.define do
2
+ factory :takeoff, class: Ecom::Core::Takeoff do
3
+ association :task
4
+ takeoff_quantity { 33 }
5
+ end
6
+ end
@@ -0,0 +1,8 @@
1
+ FactoryBot.define do
2
+ factory :task_attachment, class: Ecom::Core::TaskAttachment do
3
+ title { FFaker::Name.name }
4
+ description { FFaker::Name.name }
5
+ file { FFaker::Name.name }
6
+ association :task
7
+ end
8
+ end
@@ -0,0 +1,11 @@
1
+ FactoryBot.define do
2
+ factory :task_inspection_checklist, class: Ecom::Core::TaskInspectionChecklist do
3
+ name { FFaker::Name.name }
4
+ date_of_inspection { Date.today }
5
+ association :inspected_by, factory: :user
6
+ status { Ecom::Core::TaskInspectionChecklist::NOT_INSPECTED }
7
+ remark { FFaker::Name.name }
8
+ recommendation { FFaker::Name.name }
9
+ association :task
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+ FactoryBot.define do
2
+ factory :task_template_inspection_checklist, class: Ecom::Core::TaskTemplateInspectionChecklist do
3
+ association :task_template
4
+ association :inspection_checklist
5
+ standard { FFaker::Name.name }
6
+ end
7
+ end
@@ -6,7 +6,18 @@ FactoryBot.define do
6
6
  name { FFaker::Name.name }
7
7
  description { FFaker::Name.name }
8
8
  association :task_template_type
9
+ association :unit_of_measure
9
10
  has_takeoff_fields { false }
10
- fields { [{ name: 'length', label: 'Length' }] }
11
+ takeoff_fields { [{ name: 'length', label: 'Length' }] }
12
+ percentage_contribution { nil }
13
+ task_sequence { 1 }
14
+ has_inspection { false }
15
+ discipline { false }
16
+ task_completion_detail do
17
+ [
18
+ { name: 'length', label: 'Length' },
19
+ { name: 'width', label: 'Width' }
20
+ ]
21
+ end
11
22
  end
12
23
  end
@@ -10,10 +10,16 @@ FactoryBot.define do
10
10
  status { :new }
11
11
  percent_completed { 0 }
12
12
  remark { FFaker::Name.name }
13
+ inspection_submission_date { Date.today }
14
+ inspection_status { Ecom::Core::Task::NOT_INSPECTED }
15
+ change_order { false }
16
+ change_order_for { nil }
17
+ percentage_contribution { nil }
18
+ quantity { nil }
13
19
  association :performer, factory: :user
14
- association :approver, factory: :user
15
- association :supervisor, factory: :user
16
- association :quality_controller, factory: :user
20
+ association :client_consultant, factory: :user
21
+ association :foreman, factory: :user
22
+ association :inspector, factory: :user
17
23
  association :task_template
18
24
  association :work_product
19
25
  association :work_package
@@ -0,0 +1,13 @@
1
+ FactoryBot.define do
2
+ factory :unit_cost, class: Ecom::Core::UnitCost do
3
+ association :resource_type
4
+ quantity { 55 }
5
+ association :measurement_unit
6
+ price { 100 }
7
+ association :currency
8
+ effective_date { Time.now }
9
+ active { true }
10
+ utilization_factor { 1 }
11
+ association :set_by, factory: :user
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ FactoryBot.define do
2
+ factory :unit_of_measure, class: Ecom::Core::UnitOfMeasure do
3
+ code { FFaker::Name.name }
4
+ name { FFaker::Name.name }
5
+ description { FFaker::Name.name }
6
+ end
7
+ end
@@ -0,0 +1,10 @@
1
+ FactoryBot.define do
2
+ factory :work_item_resource_requirement_template, class: Ecom::Core::WorkItemResourceRequirementTemplate do
3
+ association :project_work_item_template
4
+ association :resource_type
5
+ work_item_quantity { 120 }
6
+ association :work_item_quantity_measurement_unit, factory: :non_si_measurement_unit
7
+ resource_quantity { 100 }
8
+ association :resource_quantity_measurement_unit, factory: :non_si_measurement_unit
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ FactoryBot.define do
2
+ factory :work_order, class: Ecom::Core::WorkOrder do
3
+ name { FFaker::Name.unique.name }
4
+ association :assigned_to, factory: :crew
5
+ association :generated_by, factory: :user
6
+ start_date { (Time.now + 1.day).to_s }
7
+ end_date { (Time.now + 1.month).to_s }
8
+ status { Ecom::Core::WorkOrder::STATUSES.sample }
9
+ end
10
+ end
@@ -7,6 +7,12 @@ FactoryBot.define do
7
7
  description { FFaker::Name.name }
8
8
  start_date { Date.yesterday }
9
9
  end_date { Date.today }
10
+ location { FFaker::Name.name }
11
+ budget { 1000 }
12
+ resource_required { FFaker::Name.name }
13
+ concerns { FFaker::Name.name }
14
+ association :site_engineer, factory: :user
15
+ association :project_manager, factory: :user
10
16
  association :project
11
17
  end
12
18
  end
@@ -7,6 +7,5 @@ FactoryBot.define do
7
7
  "Name#{n}"
8
8
  end
9
9
  description { FFaker::Name.name }
10
- association :task_template_type
11
10
  end
12
11
  end
@@ -2,19 +2,12 @@ FactoryBot.define do
2
2
  factory :work_product, class: Ecom::Core::WorkProduct do
3
3
  name { FFaker::Name.name }
4
4
  description { FFaker::Name.name }
5
- design_reference_no { FFaker::Guid.guid }
6
- dimension { [{ label: 'Length', name: 'length', value: 12 }] }
5
+ design_reference { FFaker::Guid.guid }
7
6
  association :product_group
8
7
  association :work_product_template
9
8
  association :project
10
- status { Ecom::Core::WorkProduct::NEW }
11
- percent_completed { FFaker::Random.rand(1..100) }
12
9
  remark { FFaker::Name.name }
13
- association :approver, factory: :user
14
- association :supervisor, factory: :user
15
- association :quality_controller, factory: :user
16
10
  start_date { 1.day.ago }
17
11
  completion_date { Time.now.next_week }
18
- tasks_generated { false }
19
12
  end
20
13
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ecom_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.31
4
+ version: 1.2.36
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henock L.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-25 00:00:00.000000000 Z
11
+ date: 2020-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aasm
@@ -142,6 +142,68 @@ dependencies:
142
142
  - - "~>"
143
143
  - !ruby/object:Gem::Version
144
144
  version: 6.0.3
145
+ - !ruby/object:Gem::Dependency
146
+ name: json-schema
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ type: :runtime
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ - !ruby/object:Gem::Dependency
160
+ name: fog-google
161
+ requirement: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ type: :runtime
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: '0'
173
+ - !ruby/object:Gem::Dependency
174
+ name: google-api-client
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - ">"
178
+ - !ruby/object:Gem::Version
179
+ version: 0.8.5
180
+ - - "<"
181
+ - !ruby/object:Gem::Version
182
+ version: '0.9'
183
+ type: :runtime
184
+ prerelease: false
185
+ version_requirements: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ">"
188
+ - !ruby/object:Gem::Version
189
+ version: 0.8.5
190
+ - - "<"
191
+ - !ruby/object:Gem::Version
192
+ version: '0.9'
193
+ - !ruby/object:Gem::Dependency
194
+ name: mime-types
195
+ requirement: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - ">="
198
+ - !ruby/object:Gem::Version
199
+ version: '0'
200
+ type: :runtime
201
+ prerelease: false
202
+ version_requirements: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ version: '0'
145
207
  - !ruby/object:Gem::Dependency
146
208
  name: factory_bot_rails
147
209
  requirement: !ruby/object:Gem::Requirement
@@ -248,14 +310,16 @@ files:
248
310
  - app/controllers/ecom/core/equipment_types_controller.rb
249
311
  - app/controllers/ecom/core/material_types_controller.rb
250
312
  - app/controllers/ecom/core/menus_controller.rb
251
- - app/controllers/ecom/core/project_crews_controller.rb
252
313
  - app/controllers/ecom/core/projects_controller.rb
314
+ - app/controllers/ecom/core/site_crews_controller.rb
315
+ - app/controllers/ecom/core/unit_costs_controller.rb
253
316
  - app/controllers/ecom/core/user_roles_controller.rb
254
317
  - app/controllers/ecom/core/users_controller.rb
255
318
  - app/models/ecom/core/application_module.rb
256
319
  - app/models/ecom/core/application_record.rb
257
320
  - app/models/ecom/core/attendance_sheet.rb
258
321
  - app/models/ecom/core/attendance_sheet_entry.rb
322
+ - app/models/ecom/core/available_unit_of_measurement.rb
259
323
  - app/models/ecom/core/booked_item.rb
260
324
  - app/models/ecom/core/booking.rb
261
325
  - app/models/ecom/core/company.rb
@@ -264,11 +328,14 @@ files:
264
328
  - app/models/ecom/core/country.rb
265
329
  - app/models/ecom/core/crew.rb
266
330
  - app/models/ecom/core/crew_contract.rb
331
+ - app/models/ecom/core/crew_contract_transaction.rb
332
+ - app/models/ecom/core/crew_id_card.rb
267
333
  - app/models/ecom/core/crew_overtime.rb
268
334
  - app/models/ecom/core/crew_time.rb
269
335
  - app/models/ecom/core/crew_type.rb
270
336
  - app/models/ecom/core/currency.rb
271
337
  - app/models/ecom/core/custom_payment_detail.rb
338
+ - app/models/ecom/core/dimension_element.rb
272
339
  - app/models/ecom/core/equipment.rb
273
340
  - app/models/ecom/core/equipment_category.rb
274
341
  - app/models/ecom/core/equipment_component.rb
@@ -277,15 +344,25 @@ files:
277
344
  - app/models/ecom/core/equipment_request.rb
278
345
  - app/models/ecom/core/equipment_type.rb
279
346
  - app/models/ecom/core/equipment_valuation.rb
347
+ - app/models/ecom/core/inspection_checklist.rb
280
348
  - app/models/ecom/core/job_card.rb
281
349
  - app/models/ecom/core/location_type.rb
350
+ - app/models/ecom/core/lookahead_plan.rb
351
+ - app/models/ecom/core/lookahead_plan_history.rb
352
+ - app/models/ecom/core/lookahead_plan_review_time.rb
353
+ - app/models/ecom/core/lookahead_plan_task_progress.rb
282
354
  - app/models/ecom/core/lookup.rb
283
355
  - app/models/ecom/core/maintenance_category.rb
284
356
  - app/models/ecom/core/maintenance_cost.rb
285
357
  - app/models/ecom/core/maintenance_service_order.rb
286
358
  - app/models/ecom/core/maintenance_status.rb
287
359
  - app/models/ecom/core/maintenance_type.rb
360
+ - app/models/ecom/core/material.rb
361
+ - app/models/ecom/core/material_identity.rb
362
+ - app/models/ecom/core/material_item.rb
363
+ - app/models/ecom/core/material_sub_type.rb
288
364
  - app/models/ecom/core/material_type.rb
365
+ - app/models/ecom/core/measurement_unit.rb
289
366
  - app/models/ecom/core/menu.rb
290
367
  - app/models/ecom/core/overtime_sheet.rb
291
368
  - app/models/ecom/core/overtime_sheet_entry.rb
@@ -296,46 +373,67 @@ files:
296
373
  - app/models/ecom/core/product_group.rb
297
374
  - app/models/ecom/core/product_type.rb
298
375
  - app/models/ecom/core/project.rb
299
- - app/models/ecom/core/project_crew.rb
376
+ - app/models/ecom/core/project_template.rb
377
+ - app/models/ecom/core/project_work_item_template.rb
300
378
  - app/models/ecom/core/requested_item.rb
379
+ - app/models/ecom/core/resource_requisition.rb
380
+ - app/models/ecom/core/resource_requisition_item.rb
301
381
  - app/models/ecom/core/resource_type.rb
302
382
  - app/models/ecom/core/schedule_setting.rb
303
383
  - app/models/ecom/core/schedule_unit.rb
384
+ - app/models/ecom/core/site.rb
385
+ - app/models/ecom/core/site_crew.rb
304
386
  - app/models/ecom/core/stakeholder.rb
305
387
  - app/models/ecom/core/stakeholder_type.rb
388
+ - app/models/ecom/core/takeoff.rb
306
389
  - app/models/ecom/core/task.rb
390
+ - app/models/ecom/core/task_attachment.rb
391
+ - app/models/ecom/core/task_inspection_checklist.rb
307
392
  - app/models/ecom/core/task_resource.rb
308
393
  - app/models/ecom/core/task_template.rb
394
+ - app/models/ecom/core/task_template_inspection_checklist.rb
309
395
  - app/models/ecom/core/task_template_type.rb
396
+ - app/models/ecom/core/unit_cost.rb
397
+ - app/models/ecom/core/unit_of_measure.rb
310
398
  - app/models/ecom/core/user.rb
311
399
  - app/models/ecom/core/user_role.rb
400
+ - app/models/ecom/core/work_item_resource_requirement_template.rb
401
+ - app/models/ecom/core/work_order.rb
312
402
  - app/models/ecom/core/work_package.rb
313
403
  - app/models/ecom/core/work_product.rb
314
404
  - app/models/ecom/core/work_product_template.rb
315
405
  - app/serializers/ecom/core/application_module_serializer.rb
316
406
  - app/serializers/ecom/core/lookup_serializer.rb
317
407
  - app/serializers/ecom/core/resource_type_serializer.rb
408
+ - app/serializers/ecom/core/unit_cost_serializer.rb
318
409
  - app/serializers/ecom/core/user_role_serializer.rb
319
410
  - app/serializers/ecom/core/user_serializer.rb
411
+ - app/services/ecom/core/crew_contract_transaction_service.rb
320
412
  - app/services/ecom/core/menu_service.rb
321
- - app/services/ecom/core/project_crew_service.rb
413
+ - app/services/ecom/core/site_crew_service.rb
322
414
  - app/services/ecom/core/token_auth_service.rb
323
415
  - app/uploaders/ecom/core/photo_uploader.rb
416
+ - app/uploaders/ecom/core/task_attachment_uploader.rb
324
417
  - app/validators/ecom/core/date_range_validator.rb
325
418
  - config/database.ci.yml
419
+ - config/initializers/carrierwave.rb
326
420
  - config/routes.rb
327
421
  - db/migrate/20190101085530_create_ecom_core_companies.rb
328
422
  - db/migrate/20190101112620_create_ecom_core_lookups.rb
329
423
  - db/migrate/20190101112625_create_ecom_core_overtime_types.rb
424
+ - db/migrate/20191118052213_create_ecom_core_unit_of_measures.rb
330
425
  - db/migrate/20191119010518_create_ecom_core_task_template_types.rb
331
426
  - db/migrate/20191119012030_create_ecom_core_task_templates.rb
332
427
  - db/migrate/20191119013236_create_ecom_core_work_product_templates.rb
428
+ - db/migrate/20191119021405_create_ecom_core_project_templates.rb
429
+ - db/migrate/20191119034319_create_ecom_core_project_work_item_templates.rb
333
430
  - db/migrate/20191119144141_create_ecom_core_stakeholder_types.rb
334
431
  - db/migrate/20191119144618_create_ecom_core_stakeholders.rb
335
432
  - db/migrate/20191119145711_create_ecom_core_resource_types.rb
336
433
  - db/migrate/20191201131341_create_ecom_core_product_types.rb
337
434
  - db/migrate/20191201145816_create_ecom_core_currencies.rb
338
435
  - db/migrate/20191201145848_create_ecom_core_projects.rb
436
+ - db/migrate/20191201145849_create_ecom_core_sites.rb
339
437
  - db/migrate/20191201251015_create_ecom_core_product_groups.rb
340
438
  - db/migrate/20191202105355_create_task_templates_resource_types.rb
341
439
  - db/migrate/20191202220752_create_ecom_core_application_modules.rb
@@ -344,10 +442,11 @@ files:
344
442
  - db/migrate/20191202221423_create_ecom_core_menus.rb
345
443
  - db/migrate/20191202222210_create_ecom_core_work_packages.rb
346
444
  - db/migrate/20191202235434_create_ecom_core_work_products.rb
445
+ - db/migrate/20191207103729_create_ecom_core_crews.rb
446
+ - db/migrate/20191207103730_create_ecom_core_lookahead_plans.rb
447
+ - db/migrate/20191207103731_create_ecom_core_work_orders.rb
347
448
  - db/migrate/20191207103735_create_ecom_core_tasks.rb
348
449
  - db/migrate/20191210724614_create_ecom_core_task_resources.rb
349
- - db/migrate/20191225100054_create_ecom_core_crews.rb
350
- - db/migrate/20191225121850_create_ecom_core_project_crews.rb
351
450
  - db/migrate/20191225140433_create_ecom_core_attendance_sheets.rb
352
451
  - db/migrate/20191225162539_create_ecom_core_attendance_sheet_entries.rb
353
452
  - db/migrate/20191225211712_create_ecom_core_crew_times.rb
@@ -368,14 +467,34 @@ files:
368
467
  - db/migrate/20200602130247_create_ecom_core_requested_items.rb
369
468
  - db/migrate/20200602830603_create_ecom_core_bookings.rb
370
469
  - db/migrate/20200603115317_create_ecom_core_booked_items.rb
470
+ - db/migrate/20200616044231_create_ecom_core_material_sub_types.rb
471
+ - db/migrate/20200616051902_create_ecom_core_material_identities.rb
472
+ - db/migrate/20200618105233_create_ecom_core_material_items.rb
473
+ - db/migrate/20200813165553_create_ecom_core_measurement_units.rb
474
+ - db/migrate/20200813165555_create_ecom_core_available_unit_of_measurements.rb
475
+ - db/migrate/20200814043632_create_ecom_core_takeoffs.rb
371
476
  - db/migrate/20200901085227_create_ecom_core_crew_contracts.rb
477
+ - db/migrate/20200901134912_create_ecom_core_dimension_elements.rb
372
478
  - db/migrate/20200919053331_create_ecom_core_maintenance_types.rb
373
479
  - db/migrate/20200919072216_create_ecom_core_schedule_settings.rb
374
480
  - db/migrate/20200919081338_create_ecom_core_maintenance_service_orders.rb
375
481
  - db/migrate/20200919085613_create_ecom_core_job_cards.rb
376
482
  - db/migrate/20200919101941_create_ecom_core_cost_types.rb
377
483
  - db/migrate/20200919102802_create_ecom_core_maintenance_costs.rb
378
- - db/migrate/20200922044959_add_costs_approved_to_job_card.rb
484
+ - db/migrate/20201013072924_create_ecom_core_crew_contract_transactions.rb
485
+ - db/migrate/20201013090609_create_ecom_core_site_crews.rb.rb
486
+ - db/migrate/20201013094100_create_ecom_core_crew_id_cards.rb
487
+ - db/migrate/20201113050953_create_ecom_core_task_inspection_checklists.rb
488
+ - db/migrate/20201113094302_create_ecom_core_task_template_inspection_checklists.rb
489
+ - db/migrate/20201121064916_create_ecom_core_unit_costs.rb
490
+ - db/migrate/20201122123227_create_ecom_core_lookahead_plan_backlogs.rb
491
+ - db/migrate/20201122170645_create_ecom_core_lookahead_plan_histories.rb
492
+ - db/migrate/20201122170724_create_ecom_core_lookahead_plan_task_progresses.rb
493
+ - db/migrate/20201123134917_create_ecom_core_task_attachments.rb
494
+ - db/migrate/20201124171642_create_ecom_core_lookahead_plan_review_times.rb
495
+ - db/migrate/20201125191158_create_ecom_core_work_item_resource_requirement_templates.rb
496
+ - db/migrate/20201126191334_create_ecom_core_resource_requisitions.rb
497
+ - db/migrate/20201126191349_create_ecom_core_resource_requisition_items.rb
379
498
  - lib/ecom/core.rb
380
499
  - lib/ecom/core/engine.rb
381
500
  - lib/ecom/core/version.rb
@@ -384,19 +503,23 @@ files:
384
503
  - spec/factories/ecom/core/application_modules.rb
385
504
  - spec/factories/ecom/core/attendance_sheet_entries.rb
386
505
  - spec/factories/ecom/core/attendance_sheets.rb
506
+ - spec/factories/ecom/core/available_unit_of_measurements.rb
387
507
  - spec/factories/ecom/core/booked_items.rb
388
508
  - spec/factories/ecom/core/bookings.rb
389
509
  - spec/factories/ecom/core/companies.rb
390
510
  - spec/factories/ecom/core/component_types.rb
391
511
  - spec/factories/ecom/core/cost_types.rb
392
512
  - spec/factories/ecom/core/countries.rb
513
+ - spec/factories/ecom/core/crew_contract_transactions.rb
393
514
  - spec/factories/ecom/core/crew_contracts.rb
515
+ - spec/factories/ecom/core/crew_id_cards.rb
394
516
  - spec/factories/ecom/core/crew_overtimes.rb
395
517
  - spec/factories/ecom/core/crew_times.rb
396
518
  - spec/factories/ecom/core/crew_types.rb
397
519
  - spec/factories/ecom/core/crews.rb
398
520
  - spec/factories/ecom/core/currencies.rb
399
521
  - spec/factories/ecom/core/custom_payment_details.rb
522
+ - spec/factories/ecom/core/dimension_elements.rb
400
523
  - spec/factories/ecom/core/equipment.rb
401
524
  - spec/factories/ecom/core/equipment_categories.rb
402
525
  - spec/factories/ecom/core/equipment_components.rb
@@ -405,15 +528,25 @@ files:
405
528
  - spec/factories/ecom/core/equipment_requests.rb
406
529
  - spec/factories/ecom/core/equipment_types.rb
407
530
  - spec/factories/ecom/core/equipment_valuations.rb
531
+ - spec/factories/ecom/core/inspection_checklists.rb
408
532
  - spec/factories/ecom/core/job_cards.rb
409
533
  - spec/factories/ecom/core/location_types.rb
534
+ - spec/factories/ecom/core/lookahead_plan_histories.rb
535
+ - spec/factories/ecom/core/lookahead_plan_review_times.rb
536
+ - spec/factories/ecom/core/lookahead_plan_task_progresses.rb
537
+ - spec/factories/ecom/core/lookahead_plans.rb
410
538
  - spec/factories/ecom/core/lookups.rb
411
539
  - spec/factories/ecom/core/maintenance_categories.rb
412
540
  - spec/factories/ecom/core/maintenance_costs.rb
413
541
  - spec/factories/ecom/core/maintenance_service_orders.rb
414
542
  - spec/factories/ecom/core/maintenance_statuses.rb
415
543
  - spec/factories/ecom/core/maintenance_types.rb
544
+ - spec/factories/ecom/core/material_identities.rb
545
+ - spec/factories/ecom/core/material_items.rb
546
+ - spec/factories/ecom/core/material_sub_types.rb
416
547
  - spec/factories/ecom/core/material_types.rb
548
+ - spec/factories/ecom/core/materials.rb
549
+ - spec/factories/ecom/core/measurement_units.rb
417
550
  - spec/factories/ecom/core/menus.rb
418
551
  - spec/factories/ecom/core/overtime_sheet_entries.rb
419
552
  - spec/factories/ecom/core/overtime_sheets.rb
@@ -423,20 +556,33 @@ files:
423
556
  - spec/factories/ecom/core/payrolls.rb
424
557
  - spec/factories/ecom/core/product_groups.rb
425
558
  - spec/factories/ecom/core/product_types.rb
426
- - spec/factories/ecom/core/project_crews.rb
559
+ - spec/factories/ecom/core/project_templates.rb
560
+ - spec/factories/ecom/core/project_work_item_templates.rb
427
561
  - spec/factories/ecom/core/projects.rb
428
562
  - spec/factories/ecom/core/requested_items.rb
563
+ - spec/factories/ecom/core/resource_requisition_items.rb
564
+ - spec/factories/ecom/core/resource_requisitions.rb
429
565
  - spec/factories/ecom/core/resource_types.rb
430
566
  - spec/factories/ecom/core/schedule_settings.rb
431
567
  - spec/factories/ecom/core/schedule_units.rb
568
+ - spec/factories/ecom/core/site_crews.rb
569
+ - spec/factories/ecom/core/sites.rb
432
570
  - spec/factories/ecom/core/stakeholder_types.rb
433
571
  - spec/factories/ecom/core/stakeholders.rb
572
+ - spec/factories/ecom/core/takeoffs.rb
573
+ - spec/factories/ecom/core/task_attachments.rb
574
+ - spec/factories/ecom/core/task_inspection_checklists.rb
434
575
  - spec/factories/ecom/core/task_resources.rb
576
+ - spec/factories/ecom/core/task_template_inspection_checklists.rb
435
577
  - spec/factories/ecom/core/task_template_types.rb
436
578
  - spec/factories/ecom/core/task_templates.rb
437
579
  - spec/factories/ecom/core/tasks.rb
580
+ - spec/factories/ecom/core/unit_costs.rb
581
+ - spec/factories/ecom/core/unit_of_measures.rb
438
582
  - spec/factories/ecom/core/user_roles.rb
439
583
  - spec/factories/ecom/core/users.rb
584
+ - spec/factories/ecom/core/work_item_resource_requirement_templates.rb
585
+ - spec/factories/ecom/core/work_orders.rb
440
586
  - spec/factories/ecom/core/work_packages.rb
441
587
  - spec/factories/ecom/core/work_product_templates.rb
442
588
  - spec/factories/ecom/core/work_products.rb