next_sgad 0.1.3
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 +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +34 -0
- data/Rakefile +37 -0
- data/app/assets/config/next_sgad_manifest.js +2 -0
- data/app/assets/javascripts/next_sgad/activities.js +2 -0
- data/app/assets/javascripts/next_sgad/application.js +108 -0
- data/app/assets/javascripts/next_sgad/assessments.js +2 -0
- data/app/assets/javascripts/next_sgad/attendances.js +2 -0
- data/app/assets/javascripts/next_sgad/configurations.js +2 -0
- data/app/assets/javascripts/next_sgad/departments.js +2 -0
- data/app/assets/javascripts/next_sgad/employee_goals.js +2 -0
- data/app/assets/javascripts/next_sgad/employees.js +2 -0
- data/app/assets/javascripts/next_sgad/functions.js +7 -0
- data/app/assets/javascripts/next_sgad/goals.js +2 -0
- data/app/assets/javascripts/next_sgad/jquery.orgchart.min.js +2 -0
- data/app/assets/javascripts/next_sgad/justifications.js +2 -0
- data/app/assets/javascripts/next_sgad/positions.js +2 -0
- data/app/assets/javascripts/next_sgad/results.js +2 -0
- data/app/assets/stylesheets/next_sgad/activities.css +4 -0
- data/app/assets/stylesheets/next_sgad/application.css +77 -0
- data/app/assets/stylesheets/next_sgad/assessments.css +4 -0
- data/app/assets/stylesheets/next_sgad/attendances.css +4 -0
- data/app/assets/stylesheets/next_sgad/configurations.css +4 -0
- data/app/assets/stylesheets/next_sgad/departments.css +4 -0
- data/app/assets/stylesheets/next_sgad/employee_goals.css +4 -0
- data/app/assets/stylesheets/next_sgad/employees.css +4 -0
- data/app/assets/stylesheets/next_sgad/functions.css +4 -0
- data/app/assets/stylesheets/next_sgad/goals.css +4 -0
- data/app/assets/stylesheets/next_sgad/jquery.orgchart.min.css +2 -0
- data/app/assets/stylesheets/next_sgad/justifications.css +4 -0
- data/app/assets/stylesheets/next_sgad/positions.css +4 -0
- data/app/assets/stylesheets/next_sgad/results.css +4 -0
- data/app/controllers/next_sgad/activities_controller.rb +63 -0
- data/app/controllers/next_sgad/application_controller.rb +5 -0
- data/app/controllers/next_sgad/assessments_controller.rb +62 -0
- data/app/controllers/next_sgad/attendances_controller.rb +62 -0
- data/app/controllers/next_sgad/configurations_controller.rb +62 -0
- data/app/controllers/next_sgad/departments_controller.rb +62 -0
- data/app/controllers/next_sgad/employee_goals_controller.rb +62 -0
- data/app/controllers/next_sgad/employees_controller.rb +62 -0
- data/app/controllers/next_sgad/functions_controller.rb +62 -0
- data/app/controllers/next_sgad/goals_controller.rb +62 -0
- data/app/controllers/next_sgad/justifications_controller.rb +62 -0
- data/app/controllers/next_sgad/positions_controller.rb +78 -0
- data/app/controllers/next_sgad/results_controller.rb +62 -0
- data/app/helpers/next_sgad/activities_helper.rb +4 -0
- data/app/helpers/next_sgad/application_helper.rb +4 -0
- data/app/helpers/next_sgad/assessments_helper.rb +4 -0
- data/app/helpers/next_sgad/attendances_helper.rb +4 -0
- data/app/helpers/next_sgad/configurations_helper.rb +4 -0
- data/app/helpers/next_sgad/departments_helper.rb +4 -0
- data/app/helpers/next_sgad/employee_goals_helper.rb +4 -0
- data/app/helpers/next_sgad/employees_helper.rb +4 -0
- data/app/helpers/next_sgad/functions_helper.rb +4 -0
- data/app/helpers/next_sgad/goals_helper.rb +4 -0
- data/app/helpers/next_sgad/justifications_helper.rb +4 -0
- data/app/helpers/next_sgad/positions_helper.rb +55 -0
- data/app/helpers/next_sgad/results_helper.rb +4 -0
- data/app/jobs/next_sgad/application_job.rb +4 -0
- data/app/mailers/next_sgad/application_mailer.rb +6 -0
- data/app/models/next_sgad/activity.rb +4 -0
- data/app/models/next_sgad/application_record.rb +18 -0
- data/app/models/next_sgad/assessment.rb +128 -0
- data/app/models/next_sgad/attendance.rb +70 -0
- data/app/models/next_sgad/configuration.rb +4 -0
- data/app/models/next_sgad/department.rb +20 -0
- data/app/models/next_sgad/employee.rb +28 -0
- data/app/models/next_sgad/employee_goal.rb +36 -0
- data/app/models/next_sgad/function.rb +8 -0
- data/app/models/next_sgad/goal.rb +37 -0
- data/app/models/next_sgad/justification.rb +47 -0
- data/app/models/next_sgad/position.rb +36 -0
- data/app/models/next_sgad/result.rb +27 -0
- data/app/models/next_sgad/setting.rb +13 -0
- data/app/views/layouts/next_sgad/application.html.erb +14 -0
- data/app/views/next_sgad/activities/_form.html.erb +27 -0
- data/app/views/next_sgad/activities/edit.html.erb +6 -0
- data/app/views/next_sgad/activities/index.html.erb +29 -0
- data/app/views/next_sgad/activities/new.html.erb +5 -0
- data/app/views/next_sgad/activities/show.html.erb +14 -0
- data/app/views/next_sgad/assessments/_form.html.erb +27 -0
- data/app/views/next_sgad/assessments/edit.html.erb +6 -0
- data/app/views/next_sgad/assessments/index.html.erb +29 -0
- data/app/views/next_sgad/assessments/new.html.erb +5 -0
- data/app/views/next_sgad/assessments/show.html.erb +14 -0
- data/app/views/next_sgad/attendances/_form.html.erb +37 -0
- data/app/views/next_sgad/attendances/edit.html.erb +6 -0
- data/app/views/next_sgad/attendances/index.html.erb +33 -0
- data/app/views/next_sgad/attendances/new.html.erb +5 -0
- data/app/views/next_sgad/attendances/show.html.erb +24 -0
- data/app/views/next_sgad/configurations/_form.html.erb +32 -0
- data/app/views/next_sgad/configurations/edit.html.erb +6 -0
- data/app/views/next_sgad/configurations/index.html.erb +31 -0
- data/app/views/next_sgad/configurations/new.html.erb +5 -0
- data/app/views/next_sgad/configurations/show.html.erb +19 -0
- data/app/views/next_sgad/departments/_form.html.erb +32 -0
- data/app/views/next_sgad/departments/edit.html.erb +6 -0
- data/app/views/next_sgad/departments/index.html.erb +33 -0
- data/app/views/next_sgad/departments/new.html.erb +5 -0
- data/app/views/next_sgad/departments/show.html.erb +24 -0
- data/app/views/next_sgad/employee_goals/_form.html.erb +42 -0
- data/app/views/next_sgad/employee_goals/edit.html.erb +6 -0
- data/app/views/next_sgad/employee_goals/index.html.erb +35 -0
- data/app/views/next_sgad/employee_goals/new.html.erb +5 -0
- data/app/views/next_sgad/employee_goals/show.html.erb +29 -0
- data/app/views/next_sgad/employees/_form.html.erb +27 -0
- data/app/views/next_sgad/employees/_organigrama.html.erb +7 -0
- data/app/views/next_sgad/employees/edit.html.erb +6 -0
- data/app/views/next_sgad/employees/index.html.erb +31 -0
- data/app/views/next_sgad/employees/new.html.erb +5 -0
- data/app/views/next_sgad/employees/show.html.erb +19 -0
- data/app/views/next_sgad/functions/_form.html.erb +22 -0
- data/app/views/next_sgad/functions/edit.html.erb +6 -0
- data/app/views/next_sgad/functions/index.html.erb +27 -0
- data/app/views/next_sgad/functions/new.html.erb +5 -0
- data/app/views/next_sgad/functions/show.html.erb +9 -0
- data/app/views/next_sgad/goals/_form.html.erb +62 -0
- data/app/views/next_sgad/goals/edit.html.erb +6 -0
- data/app/views/next_sgad/goals/index.html.erb +41 -0
- data/app/views/next_sgad/goals/new.html.erb +5 -0
- data/app/views/next_sgad/goals/show.html.erb +49 -0
- data/app/views/next_sgad/justifications/_form.html.erb +22 -0
- data/app/views/next_sgad/justifications/edit.html.erb +6 -0
- data/app/views/next_sgad/justifications/index.html.erb +27 -0
- data/app/views/next_sgad/justifications/new.html.erb +5 -0
- data/app/views/next_sgad/justifications/show.html.erb +9 -0
- data/app/views/next_sgad/positions/_form.html.erb +43 -0
- data/app/views/next_sgad/positions/edit.html.erb +6 -0
- data/app/views/next_sgad/positions/index.html.erb +94 -0
- data/app/views/next_sgad/positions/new.html.erb +5 -0
- data/app/views/next_sgad/positions/organigram.html.erb +1 -0
- data/app/views/next_sgad/positions/show.html.erb +34 -0
- data/app/views/next_sgad/results/_form.html.erb +37 -0
- data/app/views/next_sgad/results/edit.html.erb +6 -0
- data/app/views/next_sgad/results/index.html.erb +33 -0
- data/app/views/next_sgad/results/new.html.erb +5 -0
- data/app/views/next_sgad/results/show.html.erb +24 -0
- data/config/initializers/core_extentions.rb +1 -0
- data/config/initializers/initializer.rb +1 -0
- data/config/initializers/m.rb +1 -0
- data/config/initializers/semper.rb +1 -0
- data/config/routes.rb +16 -0
- data/db/migrate/20171014174705_create_next_sgad_departments.rb +11 -0
- data/db/migrate/20171014175212_create_next_sgad_employees.rb +11 -0
- data/db/migrate/20171014175507_create_next_sgad_positions.rb +13 -0
- data/db/migrate/20171014183337_create_next_sgad_configurations.rb +11 -0
- data/db/migrate/20171015073528_add_next_sgad_department_to_department.rb +6 -0
- data/db/migrate/20171019142918_remove_table_configurations.rb +5 -0
- data/db/migrate/20171019143336_create_next_sgad_settings.rb +11 -0
- data/db/migrate/20171022113005_add_paygrade_to_next_sgad_employee.rb +6 -0
- data/db/migrate/20171024154422_create_next_sgad_assessments.rb +10 -0
- data/db/migrate/20171024172007_create_next_sgad_goals.rb +18 -0
- data/db/migrate/20171024181227_create_next_sgad_employee_goals.rb +16 -0
- data/db/migrate/20171024192907_corrects_references.rb +8 -0
- data/db/migrate/20171024193750_copies_info_from_old_references.rb +8 -0
- data/db/migrate/20171025093224_change_column_year_from_assessments.rb +6 -0
- data/db/migrate/20171025134655_add_goal_type_to_employee_goals.rb +8 -0
- data/db/migrate/20171025135319_addname_to_next_sgad_employee_goals.rb +5 -0
- data/db/migrate/20171025153545_add_position_reference_to_goals.rb +4 -0
- data/db/migrate/20171026055530_add_position_to_next_sgad_goals.rb +5 -0
- data/db/migrate/20171026060110_add_position_to_next_sgad_employee.rb +5 -0
- data/db/migrate/20171026060351_copies_posiiton_id_to_employees.rb +9 -0
- data/db/migrate/20171026061315_remove_old_reference_columns.rb +8 -0
- data/db/migrate/20171026115447_add_description_to_next_sgad_goals.rb +6 -0
- data/db/migrate/20171026142240_add_position_to_next_sgad_employee_goals.rb +5 -0
- data/db/migrate/20171027210543_create_next_sgad_functions.rb +9 -0
- data/db/migrate/20171027210912_add_function_to_next_sgad_positions.rb +5 -0
- data/db/migrate/20171027213833_create_join_table_goal_position.rb +8 -0
- data/db/migrate/20171027221550_create_join_table_employee_position.rb +8 -0
- data/db/migrate/20171027223737_add_efective_to_next_sgad_positions.rb +5 -0
- data/db/migrate/20171027230032_remove_position_from_next_sgad_employee.rb +6 -0
- data/db/migrate/20171027230033_clear_data.rb +7 -0
- data/db/migrate/20171028061909_add_description_to_next_sgad_functions.rb +5 -0
- data/db/migrate/20171028140106_add_percentages_to_next_sagad_assessments.rb +6 -0
- data/db/migrate/20171029074321_rename_paygrade_and_level_from_employee.rb +7 -0
- data/db/migrate/20171029103212_add_email_to_next_sgad_employee.rb +5 -0
- data/db/migrate/20171029154047_add_coment_to_next_sgad_employee_goals.rb +6 -0
- data/db/migrate/20171029160044_add_amount_to_next_sgad_employee_goals.rb +5 -0
- data/db/migrate/20171101112232_change_self_assessment_from_next_sgad_employee_goals.rb +13 -0
- data/db/migrate/20171106113735_add_first_name_to_next_sgad_employees.rb +24 -0
- data/db/migrate/20171110103155_add_number_to_next_sgad_functions.rb +5 -0
- data/db/migrate/20171111081148_create_next_sgad_justifications.rb +9 -0
- data/db/migrate/20171111093506_create_next_sgad_attendances.rb +13 -0
- data/db/migrate/20171111093524_add_references_to_justifications_and_attendences.rb +10 -0
- data/db/migrate/20171111094154_create_join_table_attendance_justification.rb +8 -0
- data/db/migrate/20171111121753_create_next_sgad_results.rb +13 -0
- data/db/migrate/20171111121935_resolts_relationship.rb +9 -0
- data/db/migrate/20171112004221_add_attendance_percentage_to_next_sgad_assessment.rb +14 -0
- data/db/migrate/20171112121440_add_status_to_next_sgad_justifications.rb +7 -0
- data/db/migrate/20171112172436_add_department_to_attendances.rb +6 -0
- data/db/migrate/20171113125224_add_configuration_columns_to_nexts_sgad_assessment.rb +18 -0
- data/db/migrate/20171113143825_add_max_number_of_absences_for_five_to_next_sgad_assessments.rb +9 -0
- data/db/migrate/20171114135601_change_column_status_from_result.rb +6 -0
- data/db/migrate/20171115085324_create_next_sgad_activities.rb +10 -0
- data/db/migrate/20171115110522_add_column_nature_and_value_to_results.rb +7 -0
- data/db/migrate/20171115111821_remove_unused_columns.rb +19 -0
- data/db/migrate/20171115140048_corrects_status.rb +6 -0
- data/db/migrate/20171115160122_add_justification_status_to_next_sgad_attendances.rb +5 -0
- data/db/migrate/20171115161157_migrate_fill_justification_columns.rb +7 -0
- data/lib/concerns/models/employee.rb +25 -0
- data/lib/generators/initializer/USAGE +8 -0
- data/lib/generators/initializer/initializer_generator.rb +6 -0
- data/lib/generators/initializer/templates/initializer.rb +1 -0
- data/lib/generators/initializer_generator.rb +6 -0
- data/lib/generators/views/USAGE +8 -0
- data/lib/generators/views/views_generator.rb +3 -0
- data/lib/next_sgad/engine.rb +13 -0
- data/lib/next_sgad/version.rb +3 -0
- data/lib/next_sgad.rb +5 -0
- data/lib/tasks/next_sgad_tasks.rake +4 -0
- metadata +268 -0
@@ -0,0 +1,9 @@
|
|
1
|
+
class CopiesPosiitonIdToEmployees < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
data = (NextSgad::Position.all).group_by{|f| [f.class.name, f.employee_id]}
|
4
|
+
NextSgad::Employee.all.each do |e|
|
5
|
+
e.position_id = data[[NextSgad::Position.name, e.id]]&.last&.id
|
6
|
+
e.save
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
class RemoveOldReferenceColumns < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
remove_column :next_sgad_positions, :next_sgad_department_id
|
4
|
+
remove_column :next_sgad_positions, :next_sgad_employee_id
|
5
|
+
remove_column :next_sgad_positions, :next_sgad_position_id
|
6
|
+
remove_column :next_sgad_positions, :employee_id
|
7
|
+
end
|
8
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
class CreateJoinTableGoalPosition < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
create_join_table :next_sgad_positions, :next_sgad_goals do |t|
|
4
|
+
t.index [:next_sgad_position_id, :next_sgad_goal_id], name: 'index_next_sgad_goals_positions_on_position_id_and_goal_id'
|
5
|
+
# t.index [:next_sgad_goal_id, :next_sgad_position_id]
|
6
|
+
end
|
7
|
+
end
|
8
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
class CreateJoinTableEmployeePosition < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
create_join_table :next_sgad_employees, :next_sgad_positions do |t|
|
4
|
+
t.index [:next_sgad_employee_id, :next_sgad_position_id], name: 'idx_nxt_sgad_employees_positions_on_employee_id_and_position_id'
|
5
|
+
# t.index [:next_sgad_position_id, :next_sgad_employee_id]
|
6
|
+
end
|
7
|
+
end
|
8
|
+
end
|
@@ -0,0 +1,6 @@
|
|
1
|
+
class AddPercentagesToNextSagadAssessments < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_assessments, :skills_percentage, :decimal, default: 0, null: false
|
4
|
+
add_column :next_sgad_assessments, :objectives_percentage, :decimal, default: 0, null: false
|
5
|
+
end
|
6
|
+
end
|
@@ -0,0 +1,7 @@
|
|
1
|
+
class RenamePaygradeAndLevelFromEmployee < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
rename_column :next_sgad_employees, :paygrade, :paygrades
|
4
|
+
rename_column :next_sgad_employees, :level, :paygrade
|
5
|
+
rename_column :next_sgad_employees, :paygrades, :level
|
6
|
+
end
|
7
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class ChangeSelfAssessmentFromNextSgadEmployeeGoals < ActiveRecord::Migration[5.1]
|
2
|
+
def up
|
3
|
+
change_column :next_sgad_employee_goals, :self_assessment, :decimal, null: false, default: 0
|
4
|
+
change_column :next_sgad_employee_goals, :supervisor_assessment, :decimal, null: false, default: 0
|
5
|
+
change_column :next_sgad_employee_goals, :final_assessment, :decimal, null: false, default: 0
|
6
|
+
end
|
7
|
+
|
8
|
+
def down
|
9
|
+
change_column :next_sgad_employee_goals, :self_assessment, :integer, null: false, default: 0
|
10
|
+
change_column :next_sgad_employee_goals, :supervisor_assessment, :integer, null: false, default: 0
|
11
|
+
change_column :next_sgad_employee_goals, :final_assessment, :integer, null: false, default: 0
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
class AddFirstNameToNextSgadEmployees < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_employees, :first_name, :string
|
4
|
+
add_column :next_sgad_employees, :last_name, :string
|
5
|
+
add_column :next_sgad_employees, :middle_name, :string
|
6
|
+
|
7
|
+
NextSgad::Employee.all.each do |employee|
|
8
|
+
names = employee.name.split(' ')
|
9
|
+
next if names.size <= 0
|
10
|
+
if names.size == 1
|
11
|
+
employee.first_name = names.first
|
12
|
+
elsif names.size == 2
|
13
|
+
employee.first_name = names.first
|
14
|
+
employee.last_name = names.last
|
15
|
+
|
16
|
+
elsif names.size > 2
|
17
|
+
employee.first_name = names.shift
|
18
|
+
employee.last_name = names.pop
|
19
|
+
employee.middle_name = names.join(' ')
|
20
|
+
end
|
21
|
+
employee.save(validate: false)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreateNextSgadAttendances < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
drop_table :next_sgad_attendances if table_exists? :next_sgad_attendances
|
4
|
+
create_table :next_sgad_attendances do |t|
|
5
|
+
t.datetime :date
|
6
|
+
t.integer :status, defautl: 0, null: false
|
7
|
+
t.text :employee_note
|
8
|
+
t.text :supervisor_note
|
9
|
+
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
class AddReferencesToJustificationsAndAttendences < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_reference :next_sgad_attendances, :assessment, foreign_key: {to_table: :next_sgad_assessments}, index: true
|
4
|
+
add_reference :next_sgad_attendances, :position, foreign_key: {to_table: :next_sgad_positions}, index: true
|
5
|
+
add_reference :next_sgad_attendances, :employee, foreign_key: {to_table: :next_sgad_employees}, index: true
|
6
|
+
add_reference :next_sgad_justifications, :assessment, foreign_key: {to_table: :next_sgad_assessments}, index: true
|
7
|
+
add_reference :next_sgad_justifications, :position, foreign_key: {to_table: :next_sgad_positions}, index: true
|
8
|
+
add_reference :next_sgad_justifications, :employee, foreign_key: {to_table: :next_sgad_employees}, index: true
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
class CreateJoinTableAttendanceJustification < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
create_join_table :next_sgad_attendances, :next_sgad_justifications do |t|
|
4
|
+
t.index [:next_sgad_attendance_id, :next_sgad_justification_id], name: 'indx_nxt_sgd_tndncs_jstns_on_attendence_id_and_justification_id'
|
5
|
+
# t.index [:next_sgad_justification_id, :next_sgad_attendance_id]
|
6
|
+
end
|
7
|
+
end
|
8
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreateNextSgadResults < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
create_table :next_sgad_results do |t|
|
4
|
+
t.string :note
|
5
|
+
t.string :attachment
|
6
|
+
t.integer :state, default: 1, null: false
|
7
|
+
t.integer :result_type
|
8
|
+
t.integer :created_by
|
9
|
+
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
class ResoltsRelationship < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_reference :next_sgad_results, :employee, foreign_key: {to_table: :next_sgad_employees}, index: true
|
4
|
+
add_reference :next_sgad_results, :position, foreign_key: {to_table: :next_sgad_positions}, index: true
|
5
|
+
add_reference :next_sgad_results, :assessment, foreign_key: {to_table: :next_sgad_assessments}, index: true
|
6
|
+
add_reference :next_sgad_results, :employee_goal, foreign_key: {to_table: :next_sgad_employee_goals}, index: true
|
7
|
+
add_reference :next_sgad_results, :goal, foreign_key: {to_table: :next_sgad_goals}, index: true
|
8
|
+
end
|
9
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class AddAttendancePercentageToNextSgadAssessment < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_assessments, :attendance_percentage, :decimal, default: 0, null: false
|
4
|
+
add_column :next_sgad_assessments, :four_hours_late_discount, :decimal, default: 0, null: false
|
5
|
+
add_column :next_sgad_assessments, :three_hours_late_discount, :decimal, default: 0, null: false
|
6
|
+
add_column :next_sgad_assessments, :two_hours_late_discount, :decimal, default: 0, null: false
|
7
|
+
add_column :next_sgad_assessments, :one_hour_late_discount, :decimal, default: 0, null: false
|
8
|
+
add_column :next_sgad_assessments, :presence_discount, :decimal, default: 0, null: false
|
9
|
+
add_column :next_sgad_assessments, :absence_discount, :decimal, default: 0, null: false
|
10
|
+
add_column :next_sgad_assessments, :justified_absence_discount, :decimal, default: 0, null: false
|
11
|
+
add_column :next_sgad_assessments, :vacation_discount, :decimal, default: 0, null: false
|
12
|
+
add_column :next_sgad_assessments, :authorized_leave_discount, :decimal, default: 0, null: false
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,7 @@
|
|
1
|
+
class AddStatusToNextSgadJustifications < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_justifications, :status, :integer, default: 0, null: false
|
4
|
+
add_column :next_sgad_justifications, :employee_note, :text
|
5
|
+
add_column :next_sgad_justifications, :supervisor_note, :text
|
6
|
+
end
|
7
|
+
end
|
@@ -0,0 +1,6 @@
|
|
1
|
+
class AddDepartmentToAttendances < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_reference :next_sgad_attendances, :department, foreign_key: {to_table: :next_sgad_departments}, index: true
|
4
|
+
add_reference :next_sgad_justifications, :department, foreign_key: {to_table: :next_sgad_departments}, index: true
|
5
|
+
end
|
6
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
class AddConfigurationColumnsToNextsSgadAssessment < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_assessments, :number_of_four_hours_delay_to_absence, :integer, default: 0, null: false
|
4
|
+
add_column :next_sgad_assessments, :number_of_three_hours_delay_to_absence, :integer, default: 0, null: false
|
5
|
+
add_column :next_sgad_assessments, :number_of_two_hours_delay_to_absence, :integer, default: 0, null: false
|
6
|
+
add_column :next_sgad_assessments, :number_of_one_hour_delay_to_absence, :integer, default: 0, null: false
|
7
|
+
|
8
|
+
remove_column :next_sgad_assessments, :four_hours_late_discount, :decimal, default: 0, null: false
|
9
|
+
remove_column :next_sgad_assessments, :three_hours_late_discount, :decimal, default: 0, null: false
|
10
|
+
remove_column :next_sgad_assessments, :two_hours_late_discount, :decimal, default: 0, null: false
|
11
|
+
remove_column :next_sgad_assessments, :one_hour_late_discount, :decimal, default: 0, null: false
|
12
|
+
remove_column :next_sgad_assessments, :presence_discount, :decimal, default: 0, null: false
|
13
|
+
remove_column :next_sgad_assessments, :absence_discount, :decimal, default: 0, null: false
|
14
|
+
remove_column :next_sgad_assessments, :justified_absence_discount, :decimal, default: 0, null: false
|
15
|
+
remove_column :next_sgad_assessments, :vacation_discount, :decimal, default: 0, null: false
|
16
|
+
remove_column :next_sgad_assessments, :authorized_leave_discount, :decimal, default: 0, null: false
|
17
|
+
end
|
18
|
+
end
|
data/db/migrate/20171113143825_add_max_number_of_absences_for_five_to_next_sgad_assessments.rb
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
class AddMaxNumberOfAbsencesForFiveToNextSgadAssessments < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_assessments, :max_absences_for_five, :integer, default: 0, null: false
|
4
|
+
add_column :next_sgad_assessments, :max_absences_for_four, :integer, default: 0, null: false
|
5
|
+
add_column :next_sgad_assessments, :max_absences_for_three, :integer, default: 0, null: false
|
6
|
+
add_column :next_sgad_assessments, :max_absences_for_two, :integer, default: 0, null: false
|
7
|
+
add_column :next_sgad_assessments, :max_absences_for_one, :integer, default: 0, null: false
|
8
|
+
end
|
9
|
+
end
|
@@ -0,0 +1,7 @@
|
|
1
|
+
class AddColumnNatureAndValueToResults < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
add_column :next_sgad_results, :result_value, :decimal, null: false, default: 0
|
4
|
+
add_column :next_sgad_results, :result_nature, :integer, null: false, default: 0
|
5
|
+
remove_column :next_sgad_results, :position_id
|
6
|
+
end
|
7
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class RemoveUnusedColumns < ActiveRecord::Migration[5.1]
|
2
|
+
def change
|
3
|
+
# from employees
|
4
|
+
remove_column :next_sgad_employees, :email, :string
|
5
|
+
remove_column :next_sgad_employees, :name, :string
|
6
|
+
# from goals
|
7
|
+
remove_column :next_sgad_goals, :percentage, :decimal
|
8
|
+
remove_column :next_sgad_goals, :percentage_on_the_type, :decimal
|
9
|
+
# from employee goals
|
10
|
+
remove_column :next_sgad_employee_goals, :percentage, :decimal
|
11
|
+
# from justifications
|
12
|
+
remove_column :next_sgad_justifications, :assessment_id, :bigint
|
13
|
+
remove_column :next_sgad_justifications, :position_id, :bigint
|
14
|
+
remove_column :next_sgad_justifications, :department_id, :bigint
|
15
|
+
# Just renames this columns
|
16
|
+
rename_column :next_sgad_goals, :state, :status
|
17
|
+
rename_column :next_sgad_employee_goals, :state, :status
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module NextSgad::Concerns::Models::Employee
|
2
|
+
extend ActiveSupport::Concern
|
3
|
+
|
4
|
+
# 'included do' causes the included code to be evaluated in the
|
5
|
+
# context where it is included (article.rb), rather than being
|
6
|
+
# executed in the module's context (blorgh/concerns/models/article).
|
7
|
+
included do
|
8
|
+
has_many :employee_goals, dependent: :destroy
|
9
|
+
has_and_belongs_to_many :positions, association_foreign_key: :next_sgad_position_id, foreign_key: :next_sgad_employee_id
|
10
|
+
has_one :efective_position, class_name: NextSgad::Position.name, foreign_key: :efective_id
|
11
|
+
|
12
|
+
|
13
|
+
INITIAL_LETTER = "E"
|
14
|
+
validates_presence_of :first_name, :last_name
|
15
|
+
before_save :create_number, on: :create
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
def prints
|
22
|
+
'"#{title}"'
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
# Add initialization content here
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module NextSgad
|
2
|
+
class Engine < ::Rails::Engine
|
3
|
+
isolate_namespace NextSgad
|
4
|
+
require 'jquery-rails'
|
5
|
+
require 'font-awesome-rails'
|
6
|
+
require 'chartjs-ror'
|
7
|
+
# config.to_prepare do
|
8
|
+
# # Make the implementing application's helpers available to the engine.
|
9
|
+
# # This is required for the overriding of engine views and helpers to work correctly.
|
10
|
+
# NextSgad::ApplicationController.helper Rails.application.helpers
|
11
|
+
# end
|
12
|
+
end
|
13
|
+
end
|
data/lib/next_sgad.rb
ADDED