Gestion config par défaut + ajout contrôles
This commit is contained in:
parent
be70b6ef6e
commit
794094b712
@ -82,9 +82,12 @@
|
|||||||
{{:assign nonproprio=0}}
|
{{:assign nonproprio=0}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{if $direction === 'entrée'}}
|
{{if $direction === 'entrée'}}
|
||||||
{{* chercher le type d'entrée parmi les types de la config *}}
|
{{* chercher le type d'entrée parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $operation == $elem.label}}
|
{{if $operation == $elem.label}}
|
||||||
{{if $elem.type == 'définitif'}}
|
{{if $elem.type == 'définitif'}}
|
||||||
{{:assign stock="%d+%d"|math:$stock:$nombre}}
|
{{:assign stock="%d+%d"|math:$stock:$nombre}}
|
||||||
@ -107,7 +110,7 @@
|
|||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{elseif $direction === 'sortie'}}
|
{{elseif $direction === 'sortie'}}
|
||||||
{{* chercher le type de sortie parmi les types de la config *}}
|
{{* chercher le type de sortie parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $operation == $elem.label}}
|
{{if $operation == $elem.label}}
|
||||||
{{if $elem.type == 'définitif'}}
|
{{if $elem.type == 'définitif'}}
|
||||||
{{:assign stock="%d-%d"|math:$stock:$nombre}}
|
{{:assign stock="%d-%d"|math:$stock:$nombre}}
|
||||||
|
36
_get_config.html
Normal file
36
_get_config.html
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
{{*
|
||||||
|
Récupérer soit la config enregistrée, soit la config par défaut
|
||||||
|
résultat : config.inputNature et config.outputNature
|
||||||
|
*}}
|
||||||
|
|
||||||
|
{{* config par défaut *}}
|
||||||
|
{{:read file="/%s/defaut.json"|args:$module.name assign="config_defaut"}}
|
||||||
|
{{:assign config_defaut=$config_defaut|json_decode}}
|
||||||
|
|
||||||
|
{{if $module.config.inputNature != null}}
|
||||||
|
{{:assign var=config.inputNature value=$module.config.inputNature}}
|
||||||
|
{{else}}
|
||||||
|
{{* pas de config enregistrée : utiliser la config par défaut *}}
|
||||||
|
{{#foreach from=$config_defaut.entrées item="elem"}}
|
||||||
|
{{#foreach from=$elem key=label item=value}}
|
||||||
|
{{:assign var="item.label" value=$label}}
|
||||||
|
{{:assign var="item.type" value=$value}}
|
||||||
|
{{:assign var="config.inputNature." value=$item}}
|
||||||
|
{{/foreach}}
|
||||||
|
{{/foreach}}
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
{{if $module.config.outputNature != null}}
|
||||||
|
{{:assign var=config.outputNature value=$module.config.outputNature}}
|
||||||
|
{{else}}
|
||||||
|
{{* pas de config enregistrée : utiliser la config par défaut *}}
|
||||||
|
{{#foreach from=$config_defaut.sorties item="elem"}}
|
||||||
|
{{#foreach from=$elem key=label item=value}}
|
||||||
|
{{:assign var="item.label" value=$label}}
|
||||||
|
{{:assign var="item.type" value=$value}}
|
||||||
|
{{:assign var="config.outputNature." value=$item}}
|
||||||
|
{{/foreach}}
|
||||||
|
{{/foreach}}
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
|
@ -18,6 +18,9 @@
|
|||||||
|
|
||||||
{{#form on="delete"}}
|
{{#form on="delete"}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* vérifier s'il est possible de supprimer l'entrée *}}
|
{{* vérifier s'il est possible de supprimer l'entrée *}}
|
||||||
{{:assign dispo=0}}
|
{{:assign dispo=0}}
|
||||||
{{:assign nonprop=0}}
|
{{:assign nonprop=0}}
|
||||||
@ -33,7 +36,7 @@
|
|||||||
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}
|
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}
|
||||||
{{if $movement.direction == 'entrée'}}
|
{{if $movement.direction == 'entrée'}}
|
||||||
{{* chercher le type d'entrée parmi les types de la config *}}
|
{{* chercher le type d'entrée parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $movement.inputNature == $elem.label}}
|
{{if $movement.inputNature == $elem.label}}
|
||||||
{{if $elem.type == 'temporaire'}}
|
{{if $elem.type == 'temporaire'}}
|
||||||
{{:assign nonprop="%d+%d"|math:$nonprop:$movement.amount}}
|
{{:assign nonprop="%d+%d"|math:$nonprop:$movement.amount}}
|
||||||
@ -44,7 +47,7 @@
|
|||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{elseif $movement.direction == 'sortie'}}
|
{{elseif $movement.direction == 'sortie'}}
|
||||||
{{* chercher le type de sortie parmi les types de la config *}}
|
{{* chercher le type de sortie parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $movement.outputNature == $elem.label}}
|
{{if $movement.outputNature == $elem.label}}
|
||||||
{{if $elem.type == 'retour'}}
|
{{if $elem.type == 'retour'}}
|
||||||
{{:assign nonprop="%d-%d"|math:$nonprop:$movement.amount}}
|
{{:assign nonprop="%d-%d"|math:$nonprop:$movement.amount}}
|
||||||
|
@ -10,8 +10,11 @@
|
|||||||
</header>
|
</header>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* types d'entrées *}}
|
{{* types d'entrées *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $elem.type != 'retour'}}
|
{{if $elem.type != 'retour'}}
|
||||||
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
@ -10,8 +10,11 @@
|
|||||||
</header>
|
</header>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* types d'entrées *}}
|
{{* types d'entrées *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $elem.type != 'retour'}}
|
{{if $elem.type != 'retour'}}
|
||||||
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
@ -53,31 +56,32 @@
|
|||||||
{{/load}}
|
{{/load}}
|
||||||
|
|
||||||
{{* Vérifier s'il y a au moins un matériel enregistré *}}
|
{{* Vérifier s'il y a au moins un matériel enregistré *}}
|
||||||
{{if $equipments|count == 0}}
|
{{if $equipments != null}}
|
||||||
{{:error message="Erreur : il n'y a aucun matériel"}}
|
|
||||||
|
{{* formulaire d'entrée de matériel *}}
|
||||||
|
|
||||||
|
<form method="post" action="">
|
||||||
|
|
||||||
|
<fieldset class="entree">
|
||||||
|
<legend>Ajouter une entrée d'un matériel répertorié</legend>
|
||||||
|
{{:input type="select" name="type_operation" label="Type" required=true options=$types_entrees}}
|
||||||
|
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
|
||||||
|
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
|
||||||
|
|
||||||
|
<fieldset>
|
||||||
|
<legend>Matériel</legend>
|
||||||
|
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$equipments}}
|
||||||
|
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}
|
||||||
|
</fieldset>
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
<p class="submit">
|
||||||
|
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
{{else}}
|
||||||
|
<p class="block error">Il n'y a aucun matériel</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{* formulaire d'entrée de matériel *}}
|
|
||||||
|
|
||||||
<form method="post" action="">
|
|
||||||
|
|
||||||
<fieldset class="entree">
|
|
||||||
<legend>Ajouter une entrée d'un matériel répertorié</legend>
|
|
||||||
{{:input type="select" name="type_operation" label="Type" required=true options=$types_entrees}}
|
|
||||||
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
|
|
||||||
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
|
|
||||||
|
|
||||||
<fieldset>
|
|
||||||
<legend>Matériel</legend>
|
|
||||||
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$equipments}}
|
|
||||||
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}
|
|
||||||
</fieldset>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<p class="submit">
|
|
||||||
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</form>
|
|
||||||
|
|
||||||
{{:admin_footer}}
|
{{:admin_footer}}
|
||||||
|
@ -10,8 +10,11 @@
|
|||||||
</header>
|
</header>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* types d'entrées *}}
|
{{* types d'entrées *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $elem.type == 'retour'}}
|
{{if $elem.type == 'retour'}}
|
||||||
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
@ -63,59 +66,49 @@
|
|||||||
{{* Extraire et compiler les infos de la base *}}
|
{{* Extraire et compiler les infos de la base *}}
|
||||||
{{:include file="/%s/_calcul_dispo.html"|args:$module.name keep="equipments"}}
|
{{:include file="/%s/_calcul_dispo.html"|args:$module.name keep="equipments"}}
|
||||||
|
|
||||||
{{* déterminer la quantité des matériels sortis temporairement *}}
|
{{if $equipments !== null}}
|
||||||
{{#foreach from=$equipments key="cat_key" item="category"}}
|
|
||||||
{{#foreach from=$category.eqpmt key="eqpmt_key" item="eqpmt"}}
|
{{* déterminer la quantité des matériels sortis temporairement *}}
|
||||||
{{:assign quantite=$eqpmt.exterieur}}
|
{{#foreach from=$equipments key="cat_key" item="category"}}
|
||||||
{{if $quantite != 0}}
|
{{#foreach from=$category.eqpmt key="eqpmt_key" item="eqpmt"}}
|
||||||
{{:assign
|
{{:assign quantite=$eqpmt.exterieur}}
|
||||||
var="temporaire.%s.%s"|args:$category.name:$eqpmt_key
|
{{if $quantite != 0}}
|
||||||
value="%s (quantité : %d)"|args:$eqpmt.designation:$quantite
|
{{:assign
|
||||||
}}
|
var="temporaire.%s.%s"|args:$category.name:$eqpmt_key
|
||||||
{{/if}}
|
value="%s (quantité : %d)"|args:$eqpmt.designation:$quantite
|
||||||
|
}}
|
||||||
|
{{/if}}
|
||||||
|
{{/foreach}}
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{/foreach}}
|
|
||||||
{{if $temporaire === null}}
|
{{if $temporaire != null}}
|
||||||
{{:error message="Le matériel choisi (%s) n'est pas sorti à la date du %s"|args:$designation:$_POST.date}}
|
|
||||||
|
{{* formulaire d'entrée de matériel *}}
|
||||||
|
<form method="post" action="">
|
||||||
|
|
||||||
|
<fieldset class="entree">
|
||||||
|
<legend>Ajouter une entrée pour un retour de matériel</legend>
|
||||||
|
{{:input type="select" name="type_operation" label="Type" required=true options=$types_entrees}}
|
||||||
|
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
|
||||||
|
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
|
||||||
|
|
||||||
|
<fieldset>
|
||||||
|
<legend>Matériel</legend>
|
||||||
|
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$temporaire}}
|
||||||
|
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}
|
||||||
|
</fieldset>
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
<p class="submit">
|
||||||
|
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
{{else}}
|
||||||
|
<p class="block error">Il n'y a aucun matériel</p>
|
||||||
|
{{/if}}
|
||||||
|
{{else}}
|
||||||
|
<p class="block error">Il n'y a aucun matériel</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{* lister les catégories et matériels associés *}}
|
|
||||||
{{*
|
|
||||||
{{#load type="category" assign="category" order="$$.name"}}
|
|
||||||
{{:assign nom_cat=$category.name}}
|
|
||||||
{{#load type="equipment" where="$$.category = :key" :key=$category.key assign="equipment"}}
|
|
||||||
{{:assign var="equipments.%s.%s"|args:$nom_cat:$equipment.key value=$equipment.designation}}
|
|
||||||
{{/load}}
|
|
||||||
{{/load}}
|
|
||||||
*}}
|
|
||||||
|
|
||||||
{{* Vérifier s'il y a au moins un matériel enregistré *}}
|
|
||||||
{{*
|
|
||||||
{{if $equipments|count == 0}}
|
|
||||||
{{:error message="Erreur : il n'y a aucun matériel"}}
|
|
||||||
{{/if}}
|
|
||||||
*}}
|
|
||||||
{{* formulaire d'entrée de matériel *}}
|
|
||||||
|
|
||||||
<form method="post" action="">
|
|
||||||
|
|
||||||
<fieldset class="entree">
|
|
||||||
<legend>Ajouter une entrée pour un retour de matériel</legend>
|
|
||||||
{{:input type="select" name="type_operation" label="Type" required=true options=$types_entrees}}
|
|
||||||
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
|
|
||||||
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
|
|
||||||
|
|
||||||
<fieldset>
|
|
||||||
<legend>Matériel</legend>
|
|
||||||
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$temporaire}}
|
|
||||||
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}
|
|
||||||
</fieldset>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<p class="submit">
|
|
||||||
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</form>
|
|
||||||
|
|
||||||
{{:admin_footer}}
|
{{:admin_footer}}
|
||||||
|
@ -25,9 +25,12 @@
|
|||||||
{{:assign date_init=$mvt_modif.date|date_short}}
|
{{:assign date_init=$mvt_modif.date|date_short}}
|
||||||
{{:assign key_eqpmt_init=$mvt_modif.equipment}}
|
{{:assign key_eqpmt_init=$mvt_modif.equipment}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{if $direction == "entrée"}}
|
{{if $direction == "entrée"}}
|
||||||
{{* types d'entrées *}}
|
{{* types d'entrées *}}
|
||||||
{{#foreach from=$module.config.inputNature key="rang" item="elem"}}
|
{{#foreach from=$config.inputNature key="rang" item="elem"}}
|
||||||
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
|
||||||
{{if $elem.label == $mvt_modif.inputNature}}
|
{{if $elem.label == $mvt_modif.inputNature}}
|
||||||
{{:assign type_defaut=$rang}}
|
{{:assign type_defaut=$rang}}
|
||||||
@ -35,7 +38,7 @@
|
|||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{* types de sorties *}}
|
{{* types de sorties *}}
|
||||||
{{#foreach from=$module.config.outputNature key="rang" item="elem"}}
|
{{#foreach from=$config.outputNature key="rang" item="elem"}}
|
||||||
{{:assign var='types_sorties.' value="%s"|args:$elem.label}}
|
{{:assign var='types_sorties.' value="%s"|args:$elem.label}}
|
||||||
{{if $elem.label == $mvt_modif.outputNature}}
|
{{if $elem.label == $mvt_modif.outputNature}}
|
||||||
{{:assign type_defaut=$rang}}
|
{{:assign type_defaut=$rang}}
|
||||||
|
@ -18,9 +18,12 @@
|
|||||||
|
|
||||||
{{#form on="delete"}}
|
{{#form on="delete"}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* déterminer s'il s'agit d'une sortie temporaire *}}
|
{{* déterminer s'il s'agit d'une sortie temporaire *}}
|
||||||
{{:assign temporaire=false}}
|
{{:assign temporaire=false}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $mvt_suppr.outputNature == $elem.label && $elem.type == 'temporaire'}}
|
{{if $mvt_suppr.outputNature == $elem.label && $elem.type == 'temporaire'}}
|
||||||
{{:assign temporaire=true}}
|
{{:assign temporaire=true}}
|
||||||
{{:break}}
|
{{:break}}
|
||||||
@ -40,14 +43,14 @@
|
|||||||
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}
|
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}
|
||||||
{{if $movement.direction == 'entrée'}}
|
{{if $movement.direction == 'entrée'}}
|
||||||
{{* chercher le type d'entrée parmi les types de la config *}}
|
{{* chercher le type d'entrée parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $movement.inputNature == $elem.label && $elem.type == 'retour'}}
|
{{if $movement.inputNature == $elem.label && $elem.type == 'retour'}}
|
||||||
{{:assign exterieur="%d-%d"|math:$exterieur:$movement.amount}}
|
{{:assign exterieur="%d-%d"|math:$exterieur:$movement.amount}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{elseif $movement.direction == 'sortie'}}
|
{{elseif $movement.direction == 'sortie'}}
|
||||||
{{* chercher le type de sortie parmi les types de la config *}}
|
{{* chercher le type de sortie parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $movement.outputNature == $elem.label && $elem.type == 'temporaire'}}
|
{{if $movement.outputNature == $elem.label && $elem.type == 'temporaire'}}
|
||||||
{{:assign exterieur="%d+%d"|math:$exterieur:$movement.amount}}
|
{{:assign exterieur="%d+%d"|math:$exterieur:$movement.amount}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
@ -10,8 +10,11 @@
|
|||||||
</header>
|
</header>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* types de sorties *}}
|
{{* types de sorties *}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $elem.type == 'retour'}}
|
{{if $elem.type == 'retour'}}
|
||||||
{{:assign var='types_sorties.' value="%s"|args:$elem.label}}
|
{{:assign var='types_sorties.' value="%s"|args:$elem.label}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
@ -62,44 +65,48 @@
|
|||||||
{{* Extraire et compiler les infos de la base *}}
|
{{* Extraire et compiler les infos de la base *}}
|
||||||
{{:include file="/%s/_calcul_dispo.html"|args:$module.name keep="equipments"}}
|
{{:include file="/%s/_calcul_dispo.html"|args:$module.name keep="equipments"}}
|
||||||
|
|
||||||
{{* calculer les quantité de matériels dont l'asso n'est pas propriétaire *}}
|
{{if $equipments !== null}}
|
||||||
{{#foreach from=$equipments key="cat_key" item="category"}}
|
{{* calculer les quantité de matériels dont l'asso n'est pas propriétaire *}}
|
||||||
{{#foreach from=$category.eqpmt key="eqpmt_key" item="eqpmt"}}
|
{{#foreach from=$equipments key="cat_key" item="category"}}
|
||||||
{{:assign quantite="%d-%d"|math:$eqpmt.nonproprio:$eqpmt.retour}}
|
{{#foreach from=$category.eqpmt key="eqpmt_key" item="eqpmt"}}
|
||||||
{{if $quantite != 0}}
|
{{:assign quantite="%d-%d"|math:$eqpmt.nonproprio:$eqpmt.retour}}
|
||||||
{{:assign
|
{{if $quantite != 0}}
|
||||||
var="temporaire.%s.%s"|args:$category.name:$eqpmt_key
|
{{:assign
|
||||||
value="%s (quantité : %d)"|args:$eqpmt.designation:$quantite
|
var="temporaire.%s.%s"|args:$category.name:$eqpmt_key
|
||||||
}}
|
value="%s (quantité : %d)"|args:$eqpmt.designation:$quantite
|
||||||
{{/if}}
|
}}
|
||||||
|
{{/if}}
|
||||||
|
{{/foreach}}
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{/foreach}}
|
|
||||||
{{if $temporaire === null}}
|
{{if $temporaire != null}}
|
||||||
{{:error message="Le matériel choisi (%s) n'est pas présent à la date du %s"|args:$designation:$_POST.date}}
|
{{* formulaire de sortie de matériel *}}
|
||||||
|
<form method="post" action="">
|
||||||
|
|
||||||
|
<fieldset class="sortie">
|
||||||
|
<legend>Ajouter une sortie d'un matériel disponible en stock</legend>
|
||||||
|
{{:input type="select" name="type_operation" label="Type" required=true options=$types_sorties}}
|
||||||
|
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}}
|
||||||
|
{{:input type="number" name="quantite" label="Quantité" required=true default=1 min=1}}
|
||||||
|
<fieldset>
|
||||||
|
<legend>Matériel</legend>
|
||||||
|
<p><span class="alert">La quantité disponible est celle à la date du jour</span></p>
|
||||||
|
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$temporaire onchange="fixerValeurMax('f_equipment', 'f_quantite')"}}
|
||||||
|
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}
|
||||||
|
</fieldset>
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
<p class="submit">
|
||||||
|
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
||||||
|
</p>
|
||||||
|
</form>
|
||||||
|
{{else}}
|
||||||
|
<p class="block error">Il n'y a aucun matériel</p>
|
||||||
|
{{/if}}
|
||||||
|
{{else}}
|
||||||
|
<p class="block error">Il n'y a aucun matériel</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{* formulaire de sortie de matériel *}}
|
|
||||||
<form method="post" action="">
|
|
||||||
|
|
||||||
<fieldset class="sortie">
|
|
||||||
<legend>Ajouter une sortie d'un matériel disponible en stock</legend>
|
|
||||||
{{:input type="select" name="type_operation" label="Type" required=true options=$types_sorties}}
|
|
||||||
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}}
|
|
||||||
{{:input type="number" name="quantite" label="Quantité" required=true default=1 min=1}}
|
|
||||||
<fieldset>
|
|
||||||
<legend>Matériel</legend>
|
|
||||||
<p><span class="alert">La quantité disponible est celle à la date du jour</span></p>
|
|
||||||
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$temporaire onchange="fixerValeurMax('f_equipment', 'f_quantite')"}}
|
|
||||||
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}
|
|
||||||
</fieldset>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<p class="submit">
|
|
||||||
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
// fixer la valeur maximale du champ de saisie de la quantité
|
// fixer la valeur maximale du champ de saisie de la quantité
|
||||||
function fixerValeurMax(idSelect, idNumber) {
|
function fixerValeurMax(idSelect, idNumber) {
|
||||||
|
@ -10,8 +10,11 @@
|
|||||||
</header>
|
</header>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{* types de sorties *}}
|
{{* types de sorties *}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $elem.type != 'retour'}}
|
{{if $elem.type != 'retour'}}
|
||||||
{{:assign var='types_sorties.' value="%s"|args:$elem.label}}
|
{{:assign var='types_sorties.' value="%s"|args:$elem.label}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
@ -64,42 +67,46 @@
|
|||||||
{{* Extraire et compiler les infos de la base *}}
|
{{* Extraire et compiler les infos de la base *}}
|
||||||
{{:include file="/%s/_calcul_dispo.html"|args:$module.name keep="equipments"}}
|
{{:include file="/%s/_calcul_dispo.html"|args:$module.name keep="equipments"}}
|
||||||
|
|
||||||
{{* calculer les disponibilités *}}
|
{{if $equipments !== null}}
|
||||||
{{#foreach from=$equipments key="cat_key" item="category"}}
|
{{* calculer les disponibilités *}}
|
||||||
{{#foreach from=$category.eqpmt key="eqpmt_key" item="eqpmt"}}
|
{{#foreach from=$equipments key="cat_key" item="category"}}
|
||||||
{{:assign dispo="%d-%d"|math:$eqpmt.stock:$eqpmt.exterieur}}
|
{{#foreach from=$category.eqpmt key="eqpmt_key" item="eqpmt"}}
|
||||||
{{:assign
|
{{:assign dispo="%d-%d"|math:$eqpmt.stock:$eqpmt.exterieur}}
|
||||||
var="disponibilites.%s.%s"|args:$category.name:$eqpmt_key
|
{{:assign
|
||||||
value="%s (dispo : %d)"|args:$eqpmt.designation:$dispo
|
var="disponibilites.%s.%s"|args:$category.name:$eqpmt_key
|
||||||
}}
|
value="%s (dispo : %d)"|args:$eqpmt.designation:$dispo
|
||||||
|
}}
|
||||||
|
{{/foreach}}
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{/foreach}}
|
{{if $disponibilites === null}}
|
||||||
{{if $disponibilites === null}}
|
{{:error message="Le matériel choisi (%s) n'est pas présent à la date du %s"|args:$designation:$_POST.date}}
|
||||||
{{:error message="Le matériel choisi (%s) n'est pas présent à la date du %s"|args:$designation:$_POST.date}}
|
{{/if}}
|
||||||
|
|
||||||
|
{{* formulaire de sortie de matériel *}}
|
||||||
|
<form method="post" action="">
|
||||||
|
|
||||||
|
<fieldset class="sortie">
|
||||||
|
<legend>Ajouter une sortie d'un matériel disponible en stock</legend>
|
||||||
|
{{:input type="select" name="type_operation" label="Type" required=true options=$types_sorties}}
|
||||||
|
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}}
|
||||||
|
{{:input type="number" name="quantite" label="Quantité" required=true default=1 min=1}}
|
||||||
|
<fieldset>
|
||||||
|
<legend>Matériel</legend>
|
||||||
|
<p><span class="alert">La quantité disponible est celle à la date du jour</span></p>
|
||||||
|
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$disponibilites onchange="fixerValeurMax('f_equipment', 'f_quantite')"}}
|
||||||
|
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}
|
||||||
|
</fieldset>
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
|
<p class="submit">
|
||||||
|
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
{{else}}
|
||||||
|
<p class="block error">Il n'y a aucun matériel</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{* formulaire de sortie de matériel *}}
|
|
||||||
<form method="post" action="">
|
|
||||||
|
|
||||||
<fieldset class="sortie">
|
|
||||||
<legend>Ajouter une sortie d'un matériel disponible en stock</legend>
|
|
||||||
{{:input type="select" name="type_operation" label="Type" required=true options=$types_sorties}}
|
|
||||||
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}}
|
|
||||||
{{:input type="number" name="quantite" label="Quantité" required=true default=1 min=1}}
|
|
||||||
<fieldset>
|
|
||||||
<legend>Matériel</legend>
|
|
||||||
<p><span class="alert">La quantité disponible est celle à la date du jour</span></p>
|
|
||||||
{{:input type="select_groups" name="equipment" label="Matériel" required=true options=$disponibilites onchange="fixerValeurMax('f_equipment', 'f_quantite')"}}
|
|
||||||
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}
|
|
||||||
</fieldset>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<p class="submit">
|
|
||||||
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}
|
|
||||||
</p>
|
|
||||||
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
// fixer la valeur maximale du champ de saisie de la quantité
|
// fixer la valeur maximale du champ de saisie de la quantité
|
||||||
function fixerValeurMax(idSelect, idNumber) {
|
function fixerValeurMax(idSelect, idNumber) {
|
||||||
|
@ -5,6 +5,9 @@
|
|||||||
- eqpmt_key : clé du matériel à vérifier
|
- eqpmt_key : clé du matériel à vérifier
|
||||||
*}}
|
*}}
|
||||||
|
|
||||||
|
{{* récupérer la config des entrées/sorties *}}
|
||||||
|
{{:include file="/%s/_get_config.html"|args:$module.name keep="config"}}
|
||||||
|
|
||||||
{{:assign erreur = false}}
|
{{:assign erreur = false}}
|
||||||
{{:assign stock=0}}
|
{{:assign stock=0}}
|
||||||
{{:assign exterieur=0}}
|
{{:assign exterieur=0}}
|
||||||
@ -13,7 +16,7 @@
|
|||||||
{{if $movement.equipment == $eqpmt_key}}
|
{{if $movement.equipment == $eqpmt_key}}
|
||||||
{{if $movement.direction == 'entrée'}}
|
{{if $movement.direction == 'entrée'}}
|
||||||
{{* chercher le type d'entrée parmi les types de la config *}}
|
{{* chercher le type d'entrée parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.inputNature item="elem"}}
|
{{#foreach from=$config.inputNature item="elem"}}
|
||||||
{{if $movement.inputNature == $elem.label}}
|
{{if $movement.inputNature == $elem.label}}
|
||||||
{{if $elem.type == 'définitif'}}
|
{{if $elem.type == 'définitif'}}
|
||||||
{{:assign stock="%d+%d"|math:$stock:$movement.amount}}
|
{{:assign stock="%d+%d"|math:$stock:$movement.amount}}
|
||||||
@ -26,7 +29,7 @@
|
|||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
{{elseif $movement.direction == 'sortie'}}
|
{{elseif $movement.direction == 'sortie'}}
|
||||||
{{* chercher le type de sortie parmi les types de la config *}}
|
{{* chercher le type de sortie parmi les types de la config *}}
|
||||||
{{#foreach from=$module.config.outputNature item="elem"}}
|
{{#foreach from=$config.outputNature item="elem"}}
|
||||||
{{if $movement.outputNature == $elem.label}}
|
{{if $movement.outputNature == $elem.label}}
|
||||||
{{if $elem.type == 'définitif'}}
|
{{if $elem.type == 'définitif'}}
|
||||||
{{:assign stock="%d-%d"|math:$stock:$movement.amount}}
|
{{:assign stock="%d-%d"|math:$stock:$movement.amount}}
|
||||||
|
Loading…
Reference in New Issue
Block a user