From b8a7d664c2a802691f4c19b039d44b646a5f2bc3 Mon Sep 17 00:00:00 2001 From: JBthePenguin Date: Thu, 10 Jun 2021 00:05:45 +0200 Subject: [PATCH] change date format to have correct order in sql request, next add validate form in php file for available equipment output --- materiels.tar.gz | Bin 20836 -> 21428 bytes src/lib/Equipment.php | 26 ++++++++++----------- src/templates/entrees/index.tpl | 2 +- src/templates/sorties/index.tpl | 2 +- src/templates/sorties/stock_disponible.tpl | 2 +- src/www/admin/entrees/non_repertorie.php | 4 +++- src/www/admin/entrees/repertorie.php | 5 +++- src/www/admin/entrees/retour.php | 4 +++- src/www/admin/sorties/stock_disponible.php | 14 +++++++++++ 9 files changed, 40 insertions(+), 19 deletions(-) diff --git a/materiels.tar.gz b/materiels.tar.gz index 8ea1acd4d9fe89bbd43958309651943180660853..1886c2b7c6a04289ab3a4eee151dc9b1ba2370b9 100644 GIT binary patch literal 21428 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 - "SELECT sum(equipment_number) FROM plugin_materiels_entry WHERE kind IN ( - 'Achat', 'Don', 'Récupération', - 'Retour de location / prêt') AND equipment_id = ?;", $id); - $outputs = DB::getInstance()->firstColumn( - "SELECT sum(equipment_number) FROM plugin_materiels_output WHERE kind IN ( - 'Vente', 'Don', 'Besoin', 'Autre (perte, vol, ...)', - 'Location / Prêt') AND equipment_id = ?;", $id); - return $entries - $outputs; - } - public function GetAllListByCategory() { $eqmts_by_cat = $this->listAllByCategory(); @@ -119,6 +106,19 @@ class Equipment ); } + public function CalculateAvailable($id) + { + $entries = DB::getInstance()->firstColumn( + "SELECT sum(equipment_number) FROM plugin_materiels_entry WHERE kind IN ( + 'Achat', 'Don', 'Récupération', + 'Retour de location / prêt') AND equipment_id = ?;", $id); + $outputs = DB::getInstance()->firstColumn( + "SELECT sum(equipment_number) FROM plugin_materiels_output WHERE kind IN ( + 'Vente', 'Don', 'Besoin', 'Autre (perte, vol, ...)', + 'Location / Prêt') AND equipment_id = ?;", $id); + return $entries - $outputs; + } + public function GetAvailableListByCategory() { $eqmts_by_cat = $this->listAllByCategory(); diff --git a/src/templates/entrees/index.tpl b/src/templates/entrees/index.tpl index c755d07..c78908c 100644 --- a/src/templates/entrees/index.tpl +++ b/src/templates/entrees/index.tpl @@ -21,7 +21,7 @@ {foreach from=$entries item="entry"} - {$entry.entry_date} + {$entry.entry_date|date_format:'%d/%m/%y'} {$entry.kind} {$entry.equipment_number} {$entry.equipment} diff --git a/src/templates/sorties/index.tpl b/src/templates/sorties/index.tpl index c7d089f..b4f83fb 100644 --- a/src/templates/sorties/index.tpl +++ b/src/templates/sorties/index.tpl @@ -20,7 +20,7 @@ {foreach from=$outputs item="output"} - {$output.output_date} + {$entry.output_date|date_format:'%d/%m/%y'} {$output.kind} {$output.equipment_number} {$output.equipment} diff --git a/src/templates/sorties/stock_disponible.tpl b/src/templates/sorties/stock_disponible.tpl index d08f7ce..1d6e4cc 100644 --- a/src/templates/sorties/stock_disponible.tpl +++ b/src/templates/sorties/stock_disponible.tpl @@ -8,7 +8,7 @@ {if $eqmts} {foreach from=$eqmts item="eqmt"} - + {/foreach} {/if} diff --git a/src/www/admin/entrees/non_repertorie.php b/src/www/admin/entrees/non_repertorie.php index dd8aa83..4ae95ae 100644 --- a/src/www/admin/entrees/non_repertorie.php +++ b/src/www/admin/entrees/non_repertorie.php @@ -44,11 +44,13 @@ if (f('save')) 'category_id' => (int) f('category_id'), 'designation' => ucfirst(strtolower(f('designation'))), ]); + $entry_date_format = date_create_from_format( + "d/m/Y", f('entry_date'))->format("Y-m-d"); $entry->add([ 'kind' => f('kind'), 'equipment_number' => (int) f('equipment_number'), 'equipment_id' => $eqmt_id, - 'entry_date' => f('entry_date'), + 'entry_date' => $entry_date_format, 'additional_comment' => f('additional_comment'), ]); Utils::redirect(PLUGIN_URL . 'entrees/index.php'); diff --git a/src/www/admin/entrees/repertorie.php b/src/www/admin/entrees/repertorie.php index f7c8349..231fcc1 100644 --- a/src/www/admin/entrees/repertorie.php +++ b/src/www/admin/entrees/repertorie.php @@ -14,11 +14,14 @@ $csrf_key = 'add_entry'; if (f('save') && $form->check($csrf_key) && !$form->hasErrors()) { + $entry = new Entry; + $entry_date_format = date_create_from_format( + "d/m/Y", f('entry_date'))->format("Y-m-d"); $entry->add([ 'kind' => f('kind'), 'equipment_number' => (int) f('equipment_number'), 'equipment_id' => f('equipment_id'), - 'entry_date' => f('entry_date'), + 'entry_date' => $entry_date_format, 'additional_comment' => f('additional_comment'), ]); Utils::redirect(PLUGIN_URL . 'entrees/index.php'); diff --git a/src/www/admin/entrees/retour.php b/src/www/admin/entrees/retour.php index 075373c..f9f9711 100644 --- a/src/www/admin/entrees/retour.php +++ b/src/www/admin/entrees/retour.php @@ -15,11 +15,13 @@ if (f('save') && $form->check($csrf_key) && !$form->hasErrors()) if ($form->check($csrf_key) && !$form->hasErrors()) { $entry = new Entry; + $entry_date_format = date_create_from_format( + "d/m/Y", f('entry_date'))->format("Y-m-d"); $entry->add([ 'kind' => 'Retour de location / prêt', 'equipment_number' => (int) f('equipment_number'), 'equipment_id' => f('equipment_id'), - 'entry_date' => f('entry_date'), + 'entry_date' => $entry_date_format, 'additional_comment' => f('additional_comment'), ]); Utils::redirect(PLUGIN_URL . 'entrees/index.php'); diff --git a/src/www/admin/sorties/stock_disponible.php b/src/www/admin/sorties/stock_disponible.php index 98ae594..3013298 100644 --- a/src/www/admin/sorties/stock_disponible.php +++ b/src/www/admin/sorties/stock_disponible.php @@ -14,6 +14,20 @@ $eqmts_by_cat = $eqmt->GetAvailableListByCategory(); $csrf_key = 'add_output'; +if (f('save') && $form->check($csrf_key) && !$form->hasErrors()) +{ + $output_date_format = date_create_from_format( + "d/m/Y", f('entry_date'))->format("Y-m-d"); + $output->add([ + 'kind' => f('kind'), + 'equipment_number' => (int) f('equipment_number'), + 'equipment_id' => f('equipment_id'), + 'output_date' => $output_date_format, + 'additional_comment' => f('additional_comment'), + ]); + Utils::redirect(PLUGIN_URL . 'entrees/index.php'); +} + $kinds = $output->listKinds(); $selected_kind = $kinds[0];