From 1c395c48e0d4be6cb570d27f8c82ec84e5193aaa Mon Sep 17 00:00:00 2001
From: Jean-Christophe Engel
Date: Wed, 11 Dec 2024 16:39:46 +0100
Subject: [PATCH] simplification et correction erreur stock_disponible
---
mouvements/sorties/stock_disponible.html | 52 +++++++++++++-----------
1 file changed, 29 insertions(+), 23 deletions(-)
diff --git a/mouvements/sorties/stock_disponible.html b/mouvements/sorties/stock_disponible.html
index 2348ad6..8fdda08 100644
--- a/mouvements/sorties/stock_disponible.html
+++ b/mouvements/sorties/stock_disponible.html
@@ -2,9 +2,7 @@
{{*
paramètres :
- - key : clé du matériel à modifier
-
- TODO : simplifier
+ - key : clé du matériel à sortir
*}}
{{:admin_header title="Sortie de matériel" current="module_equipment"}}
@@ -28,7 +26,6 @@
{{#form on="save"}}
{{* récupérer les infos du matériel *}}
{{#load type="equipment" key=$_GET.key assign="equipment"}}
- {{:assign designation=$equipment.designation}}
{{/load}}
{{:assign stock=0}}
@@ -41,22 +38,19 @@
{{* traiter le nouveau mouvement *}}
{{if ! $insere && $mvt.date > $_POST.date|parse_date}}
+ {{:assign insere=true}}
+ {{:assign dispo_old="%d-%d"|math:$stock:$exterieur}}
{{:assign var="operation" from="output_labels.%s|args:$_POST.type_operation}}
{{:assign var="type_mvt" from="config.output_nature.%s"|args:$operation}}
- {{:assign dispo_old="%d-%d"|math:$stock:$exterieur}}
{{if $type_mvt == 'définitif'}}
{{:assign stock="%d-%d"|math:$stock:$_POST.quantite}}
{{elseif $type_mvt == 'temporaire'}}
{{:assign exterieur="%d+%d"|math:$exterieur:$_POST.quantite}}
- {{elseif $type_mvt == 'retour'}}
- {{:assign nonproprio="%d-%d"|math:$nonproprio:$_POST.quantite}}
{{/if}}
- {{:assign insere=true}}
{{:assign dispo="%d-%d"|math:$stock:$exterieur}}
-
- {{if $dispo < 0 || $stock < 0 || $exterieur < 0 || $nonproprio < 0}}
+ {{if $dispo < 0 || $stock < 0 || $exterieur < 0}}
{{:assign date_err=$_POST.date|date:"d/m/Y"}}
{{:error message="Erreur : la quantité indiquée (%s) est supérieure à celle disponible (%d) à la date du %s"|args:$_POST.quantite:$dispo_old:$date_err}}
{{/if}}
@@ -85,14 +79,31 @@
{{/if}}
{{:assign dispo="%d-%d"|math:$stock:$exterieur}}
+
{{if $dispo < 0 || $stock < 0 || $exterieur < 0 || $nonproprio < 0}}
{{:assign date_err=$mvt.date|date:"d/m/Y"}}
- {{:error message="Erreur : la quantité indiquée (%s) est incompatible avec la sortie « %s : %s » à la date du %s"|args:$_POST.quantite:$designation:$mvt.amount:$date_err}}
+ {{:error message="Erreur : la quantité indiquée (%s) est incompatible avec la sortie de %s unités à la date du %s"|args:$_POST.quantite:$mvt.amount:$date_err}}
{{/if}}
{{/load}}
+ {{if ! $insere}}
+ {{:assign dispo_old="%d-%d"|math:$stock:$exterieur}}
+ {{:assign var="operation" from="output_labels.%s|args:$_POST.type_operation}}
+ {{:assign var="type_mvt" from="config.output_nature.%s"|args:$operation}}
+
+ {{if $type_mvt == 'définitif'}}
+ {{:assign stock="%d-%d"|math:$stock:$_POST.quantite}}
+ {{elseif $type_mvt == 'temporaire'}}
+ {{:assign exterieur="%d+%d"|math:$exterieur:$_POST.quantite}}
+ {{/if}}
+
+ {{:assign dispo="%d-%d"|math:$stock:$exterieur}}
+ {{if $dispo < 0 || $stock < 0 || $exterieur < 0}}
+ {{:assign date_err=$_POST.date|date:"d/m/Y"}}
+ {{:error message="Erreur : la quantité indiquée (%s) est supérieure à celle disponible (%d) à la date du %s"|args:$_POST.quantite:$dispo_old:$date_err}}
+ {{/if}}
+ {{/if}}
{{* Enregistrer le mouvement *}}
-
{{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="output_labels.%d|args:$_POST.type_operation}}
{{:save
@@ -112,20 +123,16 @@
{{/form}}
{{* Extraire et compiler les infos de la base *}}
-{{* TODO simplifier et peut-être mutualiser *}}
-
-{{:include file="../../_calcul_dispo.html" keep="cumul_mvt,equipments"}}
-
+{{:include file="../../_calcul_dispo.html" keep="categories,equipments"}}
{{:assign var=stock from="equipments.%s.stock"|args:$_GET.key}}
{{:assign var=exterieur from="equipments.%s.exterieur"|args:$_GET.key}}
{{:assign dispo="%d-%d"|math:$stock:$exterieur}}
-{{:assign var=category_key from="equipments.%s.category"|args:$_GET.key}}
-{{:assign var=category from="cumul_mvt.%s.name"|args:$category_key}}
{{if $dispo > 0}}
+
{{* déterminer le matériel concerné par le mouvement *}}
- {{#load key=$_GET.key assign="equipment"}}
- {{/load}}
+ {{#load key=$_GET.key assign="equipment"}}{{/load}}
+ {{:assign var=cat_name from=categories.%s|args:$equipment.category}}
{{* formulaire de sortie de matériel *}}
{{else}}
- {{:assign date_err=$now|date:'d/m/Y'}}
- Il n'y a aucun matériel disponible à la date du {{$date_err}}
+ Il y a 0 unité de ce matériel disponible à la date du {{$now|date_short}}
{{/if}}