Amélioration vérification saisies dates

This commit is contained in:
Jean-Christophe Engel 2026-09-28 17:00:48 +02:00
parent bbc88f57f5
commit f0d64710fe
7 changed files with 69 additions and 50 deletions

View file

@ -1,5 +1,5 @@
name="Gestion des matériels"
description="Permet de gérer un inventaire de matériels, ainsi que de suivre les prêts.\nversion 0.71.3"
description="Permet de gérer un inventaire de matériels, ainsi que de suivre les prêts.\nversion 0.71.4"
author="Jean-Christophe Engel"
author_url="https://gitea.zaclys.com/lesanges"
home_button=true

View file

@ -26,8 +26,12 @@
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}}
{{/if}}
{{* interdire date dans le futur *}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{* vérifier la date saisie *}}
{{:assign mvt_date=$_POST.date|parse_date}}
{{if $mvt_date == null || $mvt_date === false}}
{{:error message="La date saisie est vide ou incorrecte (%s)"|args:$_POST.date}}
{{/if}}
{{if $mvt_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
@ -102,7 +106,7 @@
operation=$_POST.operation
amount=$_POST.amount|intval
equipment=$equipment_key
date=$_POST.date|parse_date
date=$mvt_date
comment=$_POST.remarques|trim
storage=$_POST.storage
transactions=$transactions

View file

@ -77,9 +77,21 @@
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}}
{{/if}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{* vérifier les dates saisies *}}
{{:assign new_date=$_POST.date|parse_date}}
{{if $new_date == null || $new_date === false}}
{{:error message="La date saisie est vide ou incorrecte (%s)"|args:$_POST.date}}
{{/if}}
{{if $new_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
{{:assign return_date=$_POST.return_date|parse_date}}
{{if $return_date === false}}
{{:error message="La date de retour est incorrecte (%s)"|args:$_POST.return_date}}
{{/if}}
{{if $return_date != null && $return_date < $new_date}}
{{:error message="La date de retour doit être postérieure à la date de sortie !"}}
{{/if}}
{{if $mvt_new.direction == "input" && $_POST.user != null}}
{{:error message="Un membre ne peut être associé qu'à une sortie"}}
@ -97,18 +109,9 @@
{{* préparer le mouvement copié *}}
{{:assign var="mvt_new.operation" value=$_POST.operation}}
{{:assign var="mvt_new.amount" value=$_POST.amount}}
{{:assign var="mvt_new.date" value=$_POST.date|parse_date}}
{{:assign var="mvt_new.date" value=$new_date}}
{{:assign var="mvt_new.comment" value=$_POST.comment}}
{{if $_POST.return_date != null}}
{{:assign return_date=$_POST.return_date|parse_date}}
{{if $return_date < $_POST.date|parse_date}}
{{:error message="La date de retour doit être postérieure à la date de sortie !"}}
{{/if}}
{{else}}
{{:assign return_date=null}}
{{/if}}
{{*
lister les mouvements
- insérer le mvt copié à sa place par date croissante

View file

@ -33,8 +33,12 @@
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}}
{{/if}}
{{* interdire date dans le futur *}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{* vérifier la date saisie *}}
{{:assign mvt_date=$_POST.date|parse_date}}
{{if $mvt_date == null || $mvt_date === false}}
{{:error message="La date saisie est vide ou incorrecte (%s)"|args:$_POST.date}}
{{/if}}
{{if $mvt_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
@ -73,7 +77,7 @@
operation=$_POST.operation
amount=$_POST.amount|intval
equipment=$equipment.key
date=$_POST.date|parse_date
date=$mvt_date
comment=$_POST.remarques|trim
storage=$_POST.storage
transactions=$transactions

View file

@ -39,9 +39,21 @@
{{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}}
{{/if}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{* vérifier les dates saisies *}}
{{:assign new_date=$_POST.date|parse_date}}
{{if $new_date == null || $new_date === false}}
{{:error message="La date saisie est vide ou incorrecte (%s)"|args:$_POST.date}}
{{/if}}
{{if $new_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
{{:assign return_date=$_POST.return_date|parse_date}}
{{if $return_date === false}}
{{:error message="La date de retour est incorrecte (%s)"|args:$_POST.return_date}}
{{/if}}
{{if $return_date != null && $return_date < $new_date}}
{{:error message="La date de retour doit être postérieure à la date de sortie !"}}
{{/if}}
{{if $mvt_new.direction == "input" && $_POST.user != null}}
{{:error message="Un membre ne peut être associé qu'à une sortie"}}
@ -59,19 +71,10 @@
{{* préparer le mouvement modifié *}}
{{:assign var="mvt_new.operation" value=$_POST.operation}}
{{:assign var="mvt_new.amount" value=$_POST.amount}}
{{:assign var="mvt_new.date" value=$_POST.date|parse_date}}
{{:assign var="mvt_new.date" value=$new_date}}
{{:assign var="mvt_new.comment" value=$_POST.comment}}
{{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt_new.direction:$mvt_new.operation}}
{{if $_POST.return_date != null}}
{{:assign return_date=$_POST.return_date|parse_date}}
{{if $return_date < $_POST.date|parse_date}}
{{:error message="La date de retour doit être postérieure à la date de sortie !"}}
{{/if}}
{{else}}
{{:assign return_date=null}}
{{/if}}
{{*
lister les mouvements
- ignorer le mouvement à modifier

View file

@ -40,10 +40,21 @@
{{#form on="save"}}
{{* vérifier la validité de la saisie *}}
{{* interdire date dans le futur *}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{* vérifier les dates saisies *}}
{{:assign mvt_date=$_POST.date|parse_date}}
{{if $mvt_date == null || $mvt_date === false}}
{{:error message="La date saisie est vide ou incorrecte (%s)"|args:$_POST.date}}
{{/if}}
{{if $mvt_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
{{:assign return_date=$_POST.return_date|parse_date}}
{{if $return_date === false}}
{{:error message="La date de retour est incorrecte (%s)"|args:$_POST.return_date}}
{{/if}}
{{if $return_date != null && $return_date < $mvt_date}}
{{:error message="La date de retour doit être postérieure à la date de sortie !"}}
{{/if}}
{{if $_POST.operation == ""}}
{{:error message="Vous devez choisir un type de sortie"}}
@ -54,15 +65,6 @@
{{:error message="On ne peut associer une date de retour qu'à une sortie temporaire"}}
{{/if}}
{{if $_POST.return_date != null}}
{{:assign return_date=$_POST.return_date|parse_date}}
{{if $return_date < $_POST.date|parse_date}}
{{:error message="La date de retour doit être postérieure à la date de sortie !"}}
{{/if}}
{{else}}
{{:assign return_date=null}}
{{/if}}
{{if $_POST.user|count > 1}}
{{:error message="Un membre au plus peut être associé à une sortie"}}
{{/if}}
@ -79,7 +81,7 @@
{{* lister tous les mouvements du matériel *}}
{{#load type="movement" where="$$.equipment = :eqpmt_key" :eqpmt_key=$_GET.key assign="mvt" order="$$.date ASC"}}
{{* traiter le nouveau mouvement *}}
{{if ! $insere && $mvt.date > $_POST.date|parse_date}}
{{if ! $insere && $mvt.date > $mvt_date}}
{{:assign insere=true}}
{{:assign dispo_old="%d-%d"|math:$stock:$exterieur}}
@ -91,8 +93,7 @@
{{: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.amount:$dispo_old:$date_err}}
{{:error message="Erreur : la quantité indiquée (%s) est supérieure à celle disponible (%d) à la date du %s"|args:$_POST.amount:$dispo_old:$_POST.date}}
{{/if}}
{{/if}}
@ -136,8 +137,7 @@
{{: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.amount:$dispo_old:$date_err}}
{{:error message="Erreur : la quantité indiquée (%s) est supérieure à celle disponible (%d) à la date du %s"|args:$_POST.amount:$dispo_old:$_POST.date}}
{{/if}}
{{/if}}
@ -176,13 +176,13 @@
operation=$_POST.operation
amount=$_POST.amount|intval
equipment=$equipment.key
date=$_POST.date|parse_date
date=$mvt_date
comment=$_POST.remarques|trim
user=$user.id
return_date=$return_date
transactions=$transactions
}}
{{:redirect force="../equipment_history.html?ok=1&key=%s&prop=1&msg=sortie"|args:$_GET.key}}
{{*:redirect force="../equipment_history.html?ok=1&key=%s&prop=1&msg=sortie"|args:$_GET.key*}}
{{/form}}
{{:admin_header title="Sortie de matériel" custom_css="./../style.css" current="module_equipment"}}

View file

@ -62,14 +62,19 @@
{{:error message="La quantité (%s) doit être inférieure à la quantité sortie (%s) !!"|args:$_POST.amount:$exterieur}}
{{/if}}
{{if $_POST.date|parse_date|strtotime > $now}}
{{* vérifier le date saisie *}}
{{:assign new_date=$_POST.date|parse_date}}
{{if $new_date == null || $new_date === false}}
{{:error message="La date saisie est vide ou incorrecte (%s)"|args:$_POST.date}}
{{/if}}
{{if $new_date|strtotime > $now}}
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
{{* préparer le nouveau mouvement *}}
{{:assign var="mvt_new.key" value=""|uuid}}
{{:assign var="mvt_new.direction" value="input"}}
{{:assign var="mvt_new.date" value=$_POST.date|parse_date}}
{{:assign var="mvt_new.date" value=$new_date}}
{{:assign var="mvt_new.operation" value=$_POST.operation}}
{{:assign var="mvt_new.amount" value=$_POST.amount}}
{{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt_new.direction:$mvt_new.operation}}
@ -151,7 +156,7 @@
operation=$_POST.operation
amount=$_POST.amount|intval
equipment=$equipment.key
date=$_POST.date|parse_date
date=$new_date
comment=$_POST.comment|trim
user=$mvt_new.user
storage=$_POST.storage