From d52d83327f0133ebced485c1718fb98c36a4703a Mon Sep 17 00:00:00 2001 From: Daniel Spitzer Date: Sun, 14 Jul 2024 13:11:51 +0200 Subject: [PATCH] Zeiterfassung Anpassungen Jobrad Feature * Jobrad ist nun direkt in die Verrechnung inkludiert mit eigener DB Spalte * Migration Jobrad Verrechnung * Diverse Bugfixes --- .../TimerecordingBilling/DetailClosed.php | 2 +- .../default/TimerecordingEmployee/Index.php | 2 +- .../TimerecordingBillingController.php | 10 +++--- .../TimerecordingBillingEmployeeModel.php | 1 + ...ing_billing_employee_add_field_jobbike.php | 31 +++++++++++++++++++ 5 files changed, 40 insertions(+), 6 deletions(-) create mode 100644 db/migrations/20240714103718_timerecording_billing_employee_add_field_jobbike.php diff --git a/Layout/default/TimerecordingBilling/DetailClosed.php b/Layout/default/TimerecordingBilling/DetailClosed.php index dfe07220b..4694df457 100644 --- a/Layout/default/TimerecordingBilling/DetailClosed.php +++ b/Layout/default/TimerecordingBilling/DetailClosed.php @@ -193,7 +193,7 @@ } ?> - () timerecordingEmployee->user->name ?> timerecordingEmployee->jobbike == 1) ? '
' : '' ?> + () timerecordingEmployee->user->name ?> jobbike == 1) ? '
' : '' ?> ishours / 3600, 2), "2", ",", ".") ?> ishourssum / 3600, 2), "2", ",", ".") ?> diff --git a/Layout/default/TimerecordingEmployee/Index.php b/Layout/default/TimerecordingEmployee/Index.php index e8fa5f6de..0d041b4be 100644 --- a/Layout/default/TimerecordingEmployee/Index.php +++ b/Layout/default/TimerecordingEmployee/Index.php @@ -163,7 +163,7 @@ $type[3] = "Lehrling"; var hidesearch = [ 6, 7, 8, 9, 10,13]; var columnfilter = [0,11,12]; superexpertEnabled()): ?> - var columnfilter = [0,12]; + var columnfilter = [0,12,13]; hidesearch = [ 6, 7, 8, 9, 10, 11,14]; diff --git a/application/TimerecordingBilling/TimerecordingBillingController.php b/application/TimerecordingBilling/TimerecordingBillingController.php index 28afc5708..4a159d00c 100644 --- a/application/TimerecordingBilling/TimerecordingBillingController.php +++ b/application/TimerecordingBilling/TimerecordingBillingController.php @@ -269,7 +269,7 @@ class TimerecordingBillingController extends mfBaseController if ($timerecordingBillingEmployee->overtime50free > 64800) { $bodyarray = [$monthbmd, "1", $employee_number, "3110", "18", "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); - if ($timerecordingBillingEmployee->timerecordingEmployee->jobbike == 1) { + if ($timerecordingBillingEmployee->jobbike == 1) { $bodyarray = [$monthbmd, "1", $employee_number, "3115", "18", "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); $bodyarray = [$monthbmd, "1", $employee_number, "3116", "18", "", "", "", "", "", ""]; @@ -285,7 +285,7 @@ class TimerecordingBillingController extends mfBaseController $overtime50free = str_replace(".", ",", $overtime50free); $bodyarray = [$monthbmd, "1", $employee_number, "3110", $overtime50free, "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); - if ($timerecordingBillingEmployee->timerecordingEmployee->jobbike == 1) { + if ($timerecordingBillingEmployee->jobbike == 1) { $bodyarray = [$monthbmd, "1", $employee_number, "3115", $overtime50free, "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); $bodyarray = [$monthbmd, "1", $employee_number, "3116", $overtime50free, "", "", "", "", "", ""]; @@ -303,7 +303,7 @@ class TimerecordingBillingController extends mfBaseController if ($timerecordingBillingEmployee->overtime100free > 64800) { $bodyarray = [$monthbmd, "1", $employee_number, "3160", "18", "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); - if ($timerecordingBillingEmployee->timerecordingEmployee->jobbike == 1) { + if ($timerecordingBillingEmployee->jobbike == 1) { $bodyarray = [$monthbmd, "1", $employee_number, "3165", "18", "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); $bodyarray = [$monthbmd, "1", $employee_number, "3166", "18", "", "", "", "", "", ""]; @@ -318,7 +318,7 @@ class TimerecordingBillingController extends mfBaseController } else { $bodyarray = [$monthbmd, "1", $employee_number, "3160", $overtime100free, "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); - if ($timerecordingBillingEmployee->timerecordingEmployee->jobbike == 1) { + if ($timerecordingBillingEmployee->jobbike == 1) { $bodyarray = [$monthbmd, "1", $employee_number, "3165", $overtime100free, "", "", "", "", "", ""]; fputcsv($file, $bodyarray, ";"); $bodyarray = [$monthbmd, "1", $employee_number, "3166", $overtime100free, "", "", "", "", "", ""]; @@ -421,6 +421,7 @@ class TimerecordingBillingController extends mfBaseController if ($export == 0) { $reponse[$employee_number]['employee_id'] = $timerecordingsEmolyee->id; $reponse[$employee_number]['user_id'] = $timerecordingsEmolyee->user_id; + $reponse[$employee_number]['jobbike'] = $timerecordingsEmolyee->jobbike; $reponse[$employee_number]['homeoffice'] = $timerecording['time']['homeoffice']; $reponse[$employee_number]['istimeall'] = $timerecording['time']['isorder']; $reponse[$employee_number]['musttime'] = $timerecording['time']['mustorder']; @@ -557,6 +558,7 @@ class TimerecordingBillingController extends mfBaseController $data = []; $data['timerecordingBilling_id'] = $id; $data['timerecordingEmployee_id'] = $timerecording['employee_id']; + $data['jobbike'] = $timerecording['jobbike']; $data['musthours'] = $timerecording['musttime']; $data['overtime50'] = $timerecording['overtimes']['O50pfl']; $data['overtime50free'] = $timerecording['overtimes']['O50free']; diff --git a/application/TimerecordingBillingEmployee/TimerecordingBillingEmployeeModel.php b/application/TimerecordingBillingEmployee/TimerecordingBillingEmployeeModel.php index b785ce307..4718a5c64 100644 --- a/application/TimerecordingBillingEmployee/TimerecordingBillingEmployeeModel.php +++ b/application/TimerecordingBillingEmployee/TimerecordingBillingEmployeeModel.php @@ -20,6 +20,7 @@ class TimerecordingBillingEmployeeModel private $nlz; private $nlz_detail; private $holidays; + private $jobbike; private $transfer_plushours; private $transfer_overtime; private $transfer_bpahours; diff --git a/db/migrations/20240714103718_timerecording_billing_employee_add_field_jobbike.php b/db/migrations/20240714103718_timerecording_billing_employee_add_field_jobbike.php new file mode 100644 index 000000000..3fffc5f54 --- /dev/null +++ b/db/migrations/20240714103718_timerecording_billing_employee_add_field_jobbike.php @@ -0,0 +1,31 @@ +getEnvironment() == "thetool") { + $table = $this->table("TimerecordingBillingEmployee", ["signed" => true]); + $table->addColumn("jobbike", "integer", ["null" => false, "default" => 0, "after" => "holidays"]); + $table->update(); + } + + if($this->getEnvironment() == "addressdb") { + + } + } + + public function down(): void + { + if($this->getEnvironment() == "thetool") { + $this->table("TimerecordingBillingEmployee")->removeColumn("jobbike")->save(); + } + + if($this->getEnvironment() == "addressdb") { + + } + } +}