refonte config types ES

This commit is contained in:
Jean-Christophe Engel 2025-02-17 14:11:25 +01:00
parent b19904b05b
commit 08ff1f82fd
16 changed files with 133 additions and 208 deletions

View File

@ -75,12 +75,7 @@
{{if $mvt.direction === 'input'}} {{if $mvt.direction === 'input'}}
{{* déterminer le type de mouvement *}} {{* déterminer le type de mouvement *}}
{{#foreach from=$config.input_nature}} {{:assign var=type_mvt from="config.input_nature.%s.type"|args:$mvt.operation}}
{{if $key == $mvt.operation}}
{{:assign type_mvt=$type}}
{{:break}}
{{/if}}
{{/foreach}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
{{:assign stock="%d+%d"|math:$stock:$mvt.amount}} {{:assign stock="%d+%d"|math:$stock:$mvt.amount}}
{{:assign {{:assign
@ -99,12 +94,7 @@
{{/if}} {{/if}}
{{elseif $mvt.direction === 'output'}} {{elseif $mvt.direction === 'output'}}
{{* déterminer le type de mouvement *}} {{* déterminer le type de mouvement *}}
{{#foreach from=config.output_nature}} {{:assign var=type_mvt from="config.output_nature.%s.type"|args:$mvt.operation}}
{{if $key == $mvt.operation}}
{{:assign type_mvt=$type}}
{{:break}}
{{/if}}
{{/foreach}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
{{:assign stock="%d-%d"|math:$stock:$mvt.amount}} {{:assign stock="%d-%d"|math:$stock:$mvt.amount}}
{{:assign {{:assign

View File

@ -8,41 +8,29 @@
{{* config par défaut *}} {{* config par défaut *}}
{{:read file="./defaut.json" assign="config_defaut"}} {{:read file="./defaut.json" assign="config_defaut"}}
{{:assign config_defaut=$config_defaut|json_decode}} {{:assign config_defaut=$config_defaut|json_decode}}
{{*:debug config_defaut=$config_defaut*}}
{{if $module.config.input_nature != null}} {{if $module.config.input_nature != null}}
{{*:debug module.config.input_nature=$module.config.input_nature*}}
{{#foreach from=$module.config.input_nature item="elem"}} {{#foreach from=$module.config.input_nature item="elem"}}
{{#foreach from=$elem key=label item=value}} {{:assign var="item" label=$label type=$type}}
{{:assign var="in.%s"|args:$label value=$value}} {{:assign var="config.input_nature.%s"|args:$key value=$item}}
{{/foreach}}
{{:assign var="config.input_nature." from="in"}}
{{/foreach}} {{/foreach}}
{{else}} {{else}}
{{* pas de config enregistrée : utiliser la config par défaut *}} {{* pas de config enregistrée : utiliser la config par défaut *}}
{{#foreach from=$config_defaut.inputs item="elem"}} {{#foreach from=$config_defaut.inputs item="elem"}}
{{#foreach from=$elem key=label item=value}} {{:assign var="item" label=$label type=$type}}
{{:assign var="in.%s"|args:$label value=$value}} {{:assign var="config.input_nature.%s"|args:$key value=$item}}
{{/foreach}}
{{:assign var="config.input_nature." from="in"}}
{{/foreach}} {{/foreach}}
{{/if}} {{/if}}
{{*:debug config.input_nature=$config.input_nature*}}
{{if $module.config.output_nature != null}} {{if $module.config.output_nature != null}}
{{*:debug module.config.output_nature=$module.config.output_nature*}}
{{#foreach from=$module.config.output_nature item="elem"}} {{#foreach from=$module.config.output_nature item="elem"}}
{{#foreach from=$elem key=label item=value}} {{:assign var="item" label=$label type=$type}}
{{:assign var="out.%s"|args:$label value=$value}} {{:assign var="config.output_nature.%s"|args:$key value=$item}}
{{/foreach}}
{{:assign var="config.output_nature." from="out"}}
{{/foreach}} {{/foreach}}
{{else}} {{else}}
{{* pas de config enregistrée : utiliser la config par défaut *}} {{* pas de config enregistrée : utiliser la config par défaut *}}
{{#foreach from=$config_defaut.outputs item="elem"}} {{#foreach from=$config_defaut.outputs item="elem"}}
{{#foreach from=$elem key=label item=value}} {{:assign var="item" label=$label type=$type}}
{{:assign var="out.%s"|args:$label value=$value}} {{:assign var="config.output_nature.%s"|args:$key value=$item}}
{{/foreach}}
{{:assign var="config.output_nature." from="out"}}
{{/foreach}} {{/foreach}}
{{/if}} {{/if}}

View File

@ -3,7 +3,7 @@
<nav class="tabs"> <nav class="tabs">
{{if $current == 'inventaire'}} {{if $current == 'inventaire'}}
<aside> <aside>
{{if $cat == null || $cat == 0}} {{if $subcurrent == null && $cat == 0}}
{{:linkbutton label="Ajouter une catégorie" shape="plus" href="categories/add_category.html" target="_dialog"}} {{:linkbutton label="Ajouter une catégorie" shape="plus" href="categories/add_category.html" target="_dialog"}}
{{else}} {{else}}
{{:linkbutton label="Ajouter un nouveau matériel" shape="plus" href="mouvements/ajouter_entree.html" target="_dialog"}} {{:linkbutton label="Ajouter un nouveau matériel" shape="plus" href="mouvements/ajouter_entree.html" target="_dialog"}}

View File

@ -11,16 +11,17 @@
{{* lecture config (défaut ou enregistrée) *}} {{* lecture config (défaut ou enregistrée) *}}
{{:include file="./_get_config.html" keep="config"}} {{:include file="./_get_config.html" keep="config"}}
{{*:debug config.in=$config.input_nature config.out=$config.output_nature*}}
{{* types d'entrées qui ne peuvent être supprimées *}} {{* types d'entrées qui ne peuvent être supprimées *}}
{{#load type="movement" where="$$.direction='input'" group="$$.input_nature"}} {{#load type="movement" where="$$.direction='input'" group="$$.operation"}}
{{:assign var="locked_inputs." value=$input_nature}} {{:assign var="op_label" from="config.input_nature.%s.label"|args:$operation}}
{{:assign var="locked_inputs." value=$op_label}}
{{/load}} {{/load}}
{{* types de sorties qui ne peuvent être supprimées *}} {{* types de sorties qui ne peuvent être supprimées *}}
{{#load type="movement" where="$$.direction='output'" group="$$.output_nature"}} {{#load type="movement" where="$$.direction='output'" group="$$.output_nature"}}
{{:assign var="locked_outputs." value=$output_nature}} {{:assign var="op_label" from="config.output_nature.%s.label"|args:$operation}}
{{:assign var="locked_outputs." value=$op_label}}
{{/load}} {{/load}}
<h2>Types d'entrées</h2> <h2>Types d'entrées</h2>

View File

@ -12,14 +12,14 @@
{{#form on="save"}} {{#form on="save"}}
{{* vérifier l'existence d'une entrée de même nom et générer le résultat *}} {{* vérifier l'existence d'une entrée de même nom et générer le résultat *}}
{{#foreach from=$config.input_nature item=elem}} {{#foreach from=$config.input_nature key=key}}
{{if $label|trim|tolower == $_POST.input_fields.label|trim|tolower}} {{if $label|trim|tolower == $_POST.input_fields.label|trim|tolower}}
{{:error message="Ce libellé d'entrée est déjà présent"}} {{:error message="Ce libellé d'entrée est déjà présent"}}
{{/if}} {{/if}}
{{#foreach from=$elem key=label item=value}} {{:assign var="input_nature.key" value=$key}}
{{:assign var="in.%s"|args:$label value=$value}} {{:assign var="input_nature.label" value=$label}}
{{/foreach}} {{:assign var="input_nature.type" value=$type}}
{{:assign var="input_natures." from="in"}} {{:assign var="input_natures." from=input_nature}}
{{/foreach}} {{/foreach}}
{{* ajouter la nouvelle entrée *}} {{* ajouter la nouvelle entrée *}}
@ -32,14 +32,14 @@
{{/if}} {{/if}}
{{* vérifier l'existence d'une sortie de même nom et générer le résultat *}} {{* vérifier l'existence d'une sortie de même nom et générer le résultat *}}
{{#foreach from=$config.output_nature item=elem}} {{#foreach from=$config.output_nature key=key}}
{{if $label|trim|tolower == $_POST.output_fields.label|trim|tolower}} {{if $label|trim|tolower == $_POST.output_fields.label|trim|tolower}}
{{:error message="Ce libellé de sortie est déjà présent"}} {{:error message="Ce libellé de sortie est déjà présent"}}
{{/if}} {{/if}}
{{#foreach from=$elem key=label item=value}} {{:assign var="output_nature.key" value=$key}}
{{:assign var="out.%s"|args:$label value=$value}} {{:assign var="output_nature.label" value=$label}}
{{/foreach}} {{:assign var="output_nature.type" value=$type}}
{{:assign var="output_natures." from="out"}} {{:assign var="output_natures." from=output_nature}}
{{/foreach}} {{/foreach}}
{{* ajouter la nouvelle sortie *}} {{* ajouter la nouvelle sortie *}}

View File

@ -15,25 +15,25 @@
{{:include file="../_get_config.html" keep="config"}} {{:include file="../_get_config.html" keep="config"}}
{{#form on="delete"}} {{#form on="delete"}}
{{#foreach from=$config.input_nature item=elem}} {{#foreach from=$config.input_nature key=key}}
{{if $_GET.dir == 'input' && $label|trim|tolower != $_GET.mvt|trim|tolower || {{if $_GET.dir == 'input' && $label|trim|tolower != $_GET.mvt|trim|tolower ||
$_GET.dir == 'output' $_GET.dir == 'output'
}} }}
{{#foreach from=$elem key=label item=value}} {{:assign var="input_nature.key" value=$key}}
{{:assign var="in.%s"|args:$label value=$value}} {{:assign var="input_nature.label" value=$label}}
{{/foreach}} {{:assign var="input_nature.type" value=$type}}
{{:assign var="input_natures." from="in"}} {{:assign var="input_natures." from=input_nature}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
{{#foreach from=$config.output_nature item=elem}} {{#foreach from=$config.output_nature key=key}}
{{if $_GET.dir == 'output' && $label|trim|tolower != $_GET.mvt|trim|tolower || {{if $_GET.dir == 'output' && $label|trim|tolower != $_GET.mvt|trim|tolower ||
$_GET.dir == 'input' $_GET.dir == 'input'
}} }}
{{#foreach from=$elem key=label item=value}} {{:assign var="output_nature.key" value=$key}}
{{:assign var="out.%s"|args:$label value=$value}} {{:assign var="output_nature.label" value=$label}}
{{/foreach}} {{:assign var="output_nature.type" value=$type}}
{{:assign var="output_natures." from="out"}} {{:assign var="output_natures." from=output_nature}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -44,7 +44,6 @@
output_nature=$output_natures output_nature=$output_natures
}} }}
{{:redirect to="./config.html?ok=1"}} {{:redirect to="./config.html?ok=1"}}
{{/form}} {{/form}}
{{:admin_header title="Gestion des matériels" current="module_equipment"}} {{:admin_header title="Gestion des matériels" current="module_equipment"}}

View File

@ -52,11 +52,9 @@
{{* récupérer la config des entrées/sorties *}} {{* récupérer la config des entrées/sorties *}}
{{:include file="./_get_config.html" keep="config"}} {{:include file="./_get_config.html" keep="config"}}
{{:debug config.input_nature=$config.input_nature}}
{{* déterminer les types de mouvements selon l'affection du matériel *}} {{* déterminer les types de mouvements selon l'affection du matériel *}}
{{#foreach from=$config.input_nature}} {{#foreach from=$config.input_nature}}
{{:debug key=$key label=$label type=$type}}
{{if $_GET.prop}} {{if $_GET.prop}}
{{* matériel propriété de l'asso *}} {{* matériel propriété de l'asso *}}
{{if $type != 'temporaire'}} {{if $type != 'temporaire'}}
@ -69,7 +67,6 @@
{{/if}} {{/if}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
{{:debug input_types=$input_types}}
{{#foreach from=$config.output_nature}} {{#foreach from=$config.output_nature}}
{{if $_GET.prop}} {{if $_GET.prop}}
@ -91,8 +88,8 @@
{{:assign nonproprio=0}} {{:assign nonproprio=0}}
{{#load type="movement" where="$$.equipment = :key" :key=$equipment_key order="$$.date"}} {{#load type="movement" where="$$.equipment = :key" :key=$equipment_key order="$$.date"}}
{{if $direction == 'input'}} {{if $direction == 'input'}}
{{:assign var="type_mvt" from="config.input_nature.%s"|args:$input_nature}} {{:assign var="type_mvt" from="config.input_nature.%s.type"|args:$operation}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
{{:assign stock="%d+%d"|math:$stock:$amount}} {{:assign stock="%d+%d"|math:$stock:$amount}}
{{elseif $type_mvt == 'retour'}} {{elseif $type_mvt == 'retour'}}
@ -101,7 +98,7 @@
{{:assign nonproprio="%d+%d"|math:$nonproprio:$amount}} {{:assign nonproprio="%d+%d"|math:$nonproprio:$amount}}
{{/if}} {{/if}}
{{else}} {{else}}
{{:assign var="type_mvt" from="config.output_nature.%s"|args:$output_nature}} {{:assign var="type_mvt" from="config.output_nature.%s.type"|args:$operation}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
{{:assign stock="%d-%d"|math:$stock:$amount}} {{:assign stock="%d-%d"|math:$stock:$amount}}
{{elseif $type_mvt == 'temporaire'}} {{elseif $type_mvt == 'temporaire'}}
@ -123,7 +120,7 @@
type="movement" type="movement"
select="$$.date AS 'Date'; select="$$.date AS 'Date';
CASE $$.direction WHEN 'input' THEN 'Entrée' WHEN 'output' THEN 'Sortie' END AS 'Mouvement'; CASE $$.direction WHEN 'input' THEN 'Entrée' WHEN 'output' THEN 'Sortie' END AS 'Mouvement';
CASE $$.direction WHEN 'input' THEN $$.input_nature WHEN 'output' THEN $$.output_nature END AS 'Opération'; $$.operation AS 'Opération';
$$.amount AS 'Quantité'; $$.amount AS 'Quantité';
"" as 'Stock'; "" as 'Stock';
"" as 'Sorti'; "" as 'Sorti';
@ -132,10 +129,11 @@
equipment=$equipment_key equipment=$equipment_key
order=1 order=1
}} }}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$direction:$col3}} {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$direction:$operation}}
{{:assign var="op_label" from="config.%s_nature.%s.label"|args:$direction:$operation}}
{{if $direction === "input" && $input_nature|in:$input_types || {{if $direction === "input" && $op_label|in:$input_types ||
$direction === "output"&& $output_nature|in:$output_types $direction === "output"&& $op_label|in:$output_types
}} }}
{{:assign var="stock" from="quantites.%s.stock"|args:$id}} {{:assign var="stock" from="quantites.%s.stock"|args:$id}}
{{:assign var="exterieur" from="quantites.%s.exterieur"|args:$id}} {{:assign var="exterieur" from="quantites.%s.exterieur"|args:$id}}
@ -143,7 +141,7 @@
<tr> <tr>
<td>{{$date|date_short}}</td> <td>{{$date|date_short}}</td>
<td>{{$col2}}</td> <td>{{$col2}}</td>
<td>{{$col3}}</td> <td>{{$op_label}}</td>
<td class="num">{{$amount}}</td> <td class="num">{{$amount}}</td>
<td class="num">{{$stock}}</td> <td class="num">{{$stock}}</td>
<td class="num">{{$exterieur}}</td> <td class="num">{{$exterieur}}</td>
@ -152,17 +150,17 @@
<td class="actions"> <td class="actions">
{{:linkbutton {{:linkbutton
label="Dupliquer" label="Dupliquer"
href="mouvements/dupliquer_mouvement.html?key=%s&direction=%s&prop=%s"|args:$key:$direction:$_GET.prop href="mouvements/dupliquer_mouvement.html?key=%s&prop=%s"|args:$key:$_GET.prop
shape="plus" shape="plus"
target="_dialog"}} target="_dialog"}}
{{:linkbutton {{:linkbutton
label="Modifier" label="Modifier"
href="mouvements/modifier_mouvement.html?key=%s&direction=%s"|args:$key:$direction href="mouvements/modifier_mouvement.html?key=%s"|args:$key
shape="edit" shape="edit"
target="_dialog"}} target="_dialog"}}
{{:linkbutton {{:linkbutton
label="Supprimer" label="Supprimer"
href="mouvements/supprimer_mouvement.html?key=%s&direction=%s&prop=%s"|args:$key:$direction:$_GET.prop href="mouvements/supprimer_mouvement.html?key=%s&prop=%s"|args:$key:$_GET.prop
shape="delete" shape="delete"
target="_dialog"}} target="_dialog"}}
</td> </td>
@ -175,7 +173,7 @@
type="movement" type="movement"
select="$$.date AS 'Date'; select="$$.date AS 'Date';
CASE $$.direction WHEN 'input' THEN 'Entrée' WHEN 'output' THEN 'Sortie' END AS 'Mouvement'; CASE $$.direction WHEN 'input' THEN 'Entrée' WHEN 'output' THEN 'Sortie' END AS 'Mouvement';
CASE $$.direction WHEN 'input' THEN $$.input_nature WHEN 'output' THEN $$.output_nature END AS 'Opération'; $$.operation AS 'Opération';
$$.amount AS 'Quantité'; $$.amount AS 'Quantité';
"" as 'Présent'; "" as 'Présent';
$$.comment AS 'Commentaire'" $$.comment AS 'Commentaire'"
@ -183,32 +181,33 @@
order=1 order=1
}} }}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$direction:$col3}} {{:assign var="type_mvt" from="config.%s_nature.%s"|args:$direction:$col3}}
{{:assign var="op_label" from="config.%s_nature.%s.label"|args:$direction:$operation}}
{{if $direction === "input" && $input_nature|in:$input_types || {{if $direction === "input" && $op_label|in:$input_types ||
$direction === "output"&& $output_nature|in:$output_types $direction === "output"&& $op_label|in:$output_types
}} }}
{{:assign var="stock" from="quantites.%s.nonproprio"|args:$id}} {{:assign var="stock" from="quantites.%s.nonproprio"|args:$id}}
<tr> <tr>
<td>{{$date|date_short}}</td> <td>{{$date|date_short}}</td>
<td>{{$col2}}</td> <td>{{$col2}}</td>
<td>{{$col3}}</td> <td>{{$op_label}}</td>
<td class="num">{{$amount}}</td> <td class="num">{{$amount}}</td>
<td class="num">{{$stock}}</td> <td class="num">{{$stock}}</td>
<td>{{$comment}}</td> <td>{{$comment}}</td>
<td class="actions"> <td class="actions">
{{:linkbutton {{:linkbutton
label="Dupliquer" label="Dupliquer"
href="mouvements/dupliquer_mouvement.html?key=%s&direction=%s&prop=%s"|args:$key:$direction:$_GET.prop href="mouvements/dupliquer_mouvement.html?key=%s&prop=%s"|args:$key:$_GET.prop
shape="plus" shape="plus"
target="_dialog"}} target="_dialog"}}
{{:linkbutton {{:linkbutton
label="Modifier" label="Modifier"
href="mouvements/modifier_mouvement.html?key=%s&direction=%s"|args:$key:$direction href="mouvements/modifier_mouvement.html?key=%s"|args:$key
shape="edit" shape="edit"
target="_dialog"}} target="_dialog"}}
{{:linkbutton {{:linkbutton
label="Supprimer" label="Supprimer"
href="mouvements/supprimer_mouvement.html?key=%s&direction=%s&prop=%s"|args:$key:$direction:$_GET.prop href="mouvements/supprimer_mouvement.html?key=%s&prop=%s"|args:$key:$_GET.prop
shape="delete" shape="delete"
target="_dialog"}} target="_dialog"}}
</td> </td>

View File

@ -9,9 +9,9 @@
{{:include file="../_get_config.html" keep="config"}} {{:include file="../_get_config.html" keep="config"}}
{{* types d'entrées *}} {{* types d'entrées *}}
{{#foreach from=$config.input_nature}} {{* key="label" item="type"*}} {{#foreach from=$config.input_nature key=key}}
{{if $type != 'retour'}} {{if $type != 'retour'}}
{{:assign var="input_labels.%s"|args:$key value="%s"|args:$label}} {{:assign var="input_labels.%s"|args:$key value=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -94,7 +94,7 @@
<fieldset class="entree"> <fieldset class="entree">
<legend>Ajouter une entrée de matériel</legend> <legend>Ajouter une entrée de matériel</legend>
<dl> <dl>
{{:input type="select" name="operation" label="Type" required=true options=$input_labels}} {{:input type="select" name="operation" label="Type" required=true options=$input_labels|sort}}
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}} {{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
{{:input type="number" name="quantite" label="Quantité" min=1 required=true default=1}} {{:input type="number" name="quantite" label="Quantité" min=1 required=true default=1}}
</dl> </dl>

View File

@ -4,28 +4,16 @@
Dupliquer un mouvement Dupliquer un mouvement
paramètres : paramètres :
- key : clé du mouvement à dupliquer - key : clé du mouvement à dupliquer
- direction du mouvement à dupliquer
- prop = 1 si matériel appartient à l'asso - prop = 1 si matériel appartient à l'asso
*}} *}}
{{if $_GET.direction == "input"}}
{{:assign msg_direction="entrée"}}
{{else}}
{{:assign msg_direction="sortie"}}
{{/if}}
{{* récupérer les infos du mouvement à dupliquer *}} {{* récupérer les infos du mouvement à dupliquer *}}
{{#load key=$_GET.key assign="mvt_new"}} {{#load key=$_GET.key assign="mvt_new"}}
{{else}} {{else}}
{{:error message="Aucune %s avec la clé %s"|args:$msg_direction:$_GET.key}} {{:error message="Aucun mouvement avec la clé %s"|args:$_GET.key}}
{{/load}} {{/load}}
{{* infos pour affichage *}} {{* infos pour affichage *}}
{{if $_GET.direction == "input"}}
{{:assign mvt_nature=$mvt_new.input_nature}}
{{else}}
{{:assign mvt_nature=$mvt_new.output_nature}}
{{/if}}
{{:assign amount_init=$mvt_new.amount}} {{:assign amount_init=$mvt_new.amount}}
{{:assign date_init=$mvt_new.date|date_short}} {{:assign date_init=$mvt_new.date|date_short}}
{{:assign eqpmt_key=$mvt_new.equipment}} {{:assign eqpmt_key=$mvt_new.equipment}}
@ -40,28 +28,22 @@
{{:include file="../_get_config.html" keep="config"}} {{:include file="../_get_config.html" keep="config"}}
{{* limiter les opérations possibles *}} {{* limiter les opérations possibles *}}
{{if $_GET.direction == "input"}} {{if $mvt_new.direction == "input"}}
{{* types d'entrées *}} {{* types d'entrées *}}
{{#foreach from=$config.input_nature key="label" item="type"}} {{#foreach from=$config.input_nature key=key}}
{{if $_GET.prop && $type != "temporaire" || {{if $_GET.prop && $type != "temporaire" ||
! $_GET.prop && $type == "temporaire" ! $_GET.prop && $type == "temporaire"
}} }}
{{:assign var="input_labels.%s"|args:$label value="%s"|args:$label}} {{:assign var="input_labels.%s"|args:$key value=$label}}
{{/if}}
{{if $label == $mvt_new.input_nature}}
{{:assign nature_defaut=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
{{else}} {{else}}
{{* types de sorties *}} {{* types de sorties *}}
{{#foreach from=$config.output_nature key="label" item="type"}} {{#foreach from=$config.output_nature key=key}}
{{if $_GET.prop && $type != "retour" || {{if $_GET.prop && $type != "retour" ||
! $_GET.prop && $type == "retour" ! $_GET.prop && $type == "retour"
}} }}
{{:assign var="output_labels.%s"|args:$label value="%s"|args:$label}} {{:assign var="output_labels.%s"|args:$key value=$label}}
{{/if}}
{{if $label == $mvt_new.output_nature}}
{{:assign nature_defaut=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
{{/if}} {{/if}}
@ -75,17 +57,17 @@
{{/if}} {{/if}}
{{* préparer le mouvement copié *}} {{* préparer le mouvement copié *}}
{{if $_GET.direction == "input"}} {{if $mvt_new.direction == "input"}}
{{:assign var="mvt_new.input_nature" value=$_POST.nature_operation}} {{:assign var="mvt_new.input_nature" value=$_POST.operation}}
{{:assign var="type_mvt" from="config.input_nature.%s"|args:$mvt_new.input_nature}} {{:assign var="type_mvt" from="config.input_nature.%s.type"|args:$mvt_new.operation}}
{{if $type_mvt == "temporaire"}} {{if $type_mvt == "temporaire"}}
{{:assign prop=0}} {{:assign prop=0}}
{{else}} {{else}}
{{:assign prop=1}} {{:assign prop=1}}
{{/if}} {{/if}}
{{else}} {{else}}
{{:assign var="mvt_new.output_nature" value=$_POST.nature_operation}} {{:assign var="mvt_new.output_nature" value=$_POST.operation}}
{{:assign var="type_mvt" from="config.output_nature.%s"|args:$mvt_new.output_nature}} {{:assign var="type_mvt" from="config.output_nature.%s.type"|args:$mvt_new.operation}}
{{if $type_mvt == "retour"}} {{if $type_mvt == "retour"}}
{{:assign prop=0}} {{:assign prop=0}}
{{else}} {{else}}
@ -113,8 +95,8 @@
}} }}
{{if! $insere}} {{if! $insere}}
{{if {{if
$_GET.direction == "input" && $date >= $mvt_new.date || $mvt_new.direction == "input" && $date >= $mvt_new.date ||
$_GET.direction == "output" && $date > $mvt_new.date $mvt_new.direction == "output" && $date > $mvt_new.date
}} }}
{{:assign var="movements_new." from=mvt_new}} {{:assign var="movements_new." from=mvt_new}}
{{:assign insere=true}} {{:assign insere=true}}
@ -136,7 +118,7 @@
{{if $erreur}} {{if $erreur}}
<p class="block error"> <p class="block error">
Impossible d'enregistrer ce mouvement : Impossible d'enregistrer ce mouvement :
{{if $_GET.direction == "input"}} {{if $mvt_new.direction == "input"}}
« {{$mvt_new.input_nature}} « {{$mvt_new.input_nature}}
{{else}} {{else}}
« {{$mvt_new.output_nature}} « {{$mvt_new.output_nature}}
@ -150,9 +132,8 @@
key=$mvt_key key=$mvt_key
validate_schema="movement.schema.json" validate_schema="movement.schema.json"
type="movement" type="movement"
direction=$_GET.direction direction=$mvt_new.direction
input_nature=$mvt_new.input_nature operation=$_POST.operation
output_nature=$mvt_new.output_nature
amount=$mvt_new.amount|intval amount=$mvt_new.amount|intval
equipment=$eqpmt_key equipment=$eqpmt_key
date=$mvt_new.date date=$mvt_new.date
@ -171,17 +152,18 @@
{{* récupérer les infos de la catégorie *}} {{* récupérer les infos de la catégorie *}}
{{#load key=$eqpmt.category assign="category"}}{{/load}} {{#load key=$eqpmt.category assign="category"}}{{/load}}
{{:assign var="op_label" from="config.%s_nature.%s.label"|args:$mvt_new.direction:$mvt_new.operation}}
{{* formulaire de copie du mouvement *}} {{* formulaire de copie du mouvement *}}
<form method="post" action=""> <form method="post" action="">
<fieldset> <fieldset>
<legend>Créer une copie de « {{$mvt_nature}} {{$eqpmt.designation}} (Catégorie : {{$category.name}}) »</legend> <legend>Créer une copie de « {{$op_label}} {{$eqpmt.designation}} (Catégorie : {{$category.name}}) »</legend>
{{if $_GET.direction == "input"}} {{if $mvt_new.direction == "input"}}
<dl> <dl>
{{:input type="select" name="nature_operation" label="Type" required=true options=$input_labels|sort default=$nature_defaut}} {{:input type="select" name="operation" label="Type" required=true options=$input_labels|sort default=$mvt_new.operation}}
{{else}} {{else}}
<dl> <dl>
{{:input type="select" name="nature_operation" label="Type" required=true options=$output_labels|sort default=$nature_defaut}} {{:input type="select" name="operation" label="Type" required=true options=$output_labels|sort default=$mvt_new.operation}}
{{/if}} {{/if}}
{{:input type="date" name="date" label="Date" required=true default=$mvt_new.date}} {{:input type="date" name="date" label="Date" required=true default=$mvt_new.date}}
{{:input type="number" name="amount" label="Quantité" min=1 required=true default=$mvt_new.amount}} {{:input type="number" name="amount" label="Quantité" min=1 required=true default=$mvt_new.amount}}

View File

@ -15,9 +15,9 @@
{{:include file="../../_get_config.html" keep="config"}} {{:include file="../../_get_config.html" keep="config"}}
{{* types d'entrées *}} {{* types d'entrées *}}
{{#foreach from=$config.input_nature key="label" item="type"}} {{#foreach from=$config.input_nature key=key}}
{{if $type != 'retour'}} {{if $type != 'retour'}}
{{:assign var='input_labels.' value="%s"|args:$label}} {{:assign var="input_labels.%s"|args:$key value=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -37,20 +37,18 @@
{{* Enregistrer le mouvement *}} {{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}} {{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="input_labels.%d|args:$_POST.nature_operation}}
{{:save {{:save
key=$mvt_key key=$mvt_key
validate_schema="../movement.schema.json" validate_schema="../movement.schema.json"
type="movement" type="movement"
direction="input" direction="input"
input_nature=$operation operation=$_POST.operation
amount=$_POST.quantite|intval amount=$_POST.quantite|intval
equipment=$equipment.key equipment=$equipment.key
date=$_POST.date|parse_date date=$_POST.date|parse_date
comment=$_POST.remarques|trim comment=$_POST.remarques|trim
}} }}
{{:assign var=type_entree from="config.input_nature.%s"|args:$operation}} {{:assign var=type_entree from="config.input_nature.%s.type"|args:$_POST.operation}}
{{if $type_entree == "temporaire"}} {{if $type_entree == "temporaire"}}
{{:assign prop=0}} {{:assign prop=0}}
{{else}} {{else}}
@ -76,7 +74,7 @@
<fieldset class="entree"> <fieldset class="entree">
<legend>Ajouter une entrée de matériel</legend> <legend>Ajouter une entrée de matériel</legend>
<dl> <dl>
{{:input type="select" name="nature_operation" label="Type" required=true options=$input_labels|sort}} {{:input type="select" name="operation" label="Type" required=true options=$input_labels|sort}}
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}} {{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
{{:input type="number" name="quantite" label="Quantité" required=true min=1 default=1}} {{:input type="number" name="quantite" label="Quantité" required=true min=1 default=1}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}} {{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}

View File

@ -14,9 +14,9 @@
{{:include file="../../_get_config.html" keep="config"}} {{:include file="../../_get_config.html" keep="config"}}
{{* types d'entrées *}} {{* types d'entrées *}}
{{#foreach from=$config.input_nature key="label" item="type"}} {{#foreach from=$config.input_nature key=key}}
{{if $type == 'retour'}} {{if $type == 'retour'}}
{{:assign var='input_labels.' value="%s"|args:$label}} {{:assign var="input_labels.%s"|args:$key value=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -43,14 +43,12 @@
{{* Enregistrer le mouvement *}} {{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}} {{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="input_labels.%d|args:$_POST.type_operation}}
{{:save {{:save
key=$mvt_key key=$mvt_key
validate_schema="../movement.schema.json" validate_schema="../movement.schema.json"
type="movement" type="movement"
direction="input" direction="input"
input_nature=$operation operation=$_POST.operation
amount=$_POST.quantite|intval amount=$_POST.quantite|intval
equipment=$equipment.key equipment=$equipment.key
date=$_POST.date|parse_date date=$_POST.date|parse_date
@ -91,7 +89,7 @@
<fieldset class="entree"> <fieldset class="entree">
<legend>Ajouter un retour de matériel</legend> <legend>Ajouter un retour de matériel</legend>
<dl> <dl>
{{:input type="select" name="type_operation" label="Type" required=true options=$input_labels|sort}} {{:input type="select" name="operation" label="Type" required=true options=$input_labels|sort}}
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}} {{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
{{:input type="number" name="quantite" label="Quantité" min=1 required=true default=$sorti max=$sorti}} {{:input type="number" name="quantite" label="Quantité" min=1 required=true default=$sorti max=$sorti}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}} {{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}

View File

@ -4,27 +4,20 @@
Modifier un mouvement Modifier un mouvement
paramètres : paramètres :
- key : clé du mouvement à modifier - key : clé du mouvement à modifier
- direction : du mouvement à modifier
*}} *}}
{{if $_GET.direction == "input"}}
{{:assign msg_direction="entrée"}}
{{else}}
{{:assign msg_direction="sortie"}}
{{/if}}
{{* récupérer les infos du mouvement à modifier *}} {{* récupérer les infos du mouvement à modifier *}}
{{#load key=$_GET.key assign="mvt_new"}} {{#load key=$_GET.key assign="mvt_new"}}
{{else}} {{else}}
{{:error message="Aucune %s avec la clé %s"|args:$msg_direction:$_GET.key}} {{:error message="Aucun mouvement avec la clé %s"|args:$_GET.key}}
{{/load}} {{/load}}
{{* récupérer la config des entrées/sorties *}}
{{:include file="../_get_config.html" keep="config"}}
{{* infos pour affichage *}} {{* infos pour affichage *}}
{{if $_GET.direction == "input"}} {{:assign var="op_label" from="config.%s_nature.%s.label"|args:$mvt_new.direction:$mvt_new.operation}}
{{:assign mvt_nature=$mvt_new.input_nature}} {{:debug get=$_GET mvt_new=$mvt_new op_label=$op_label}}
{{else}}
{{:assign mvt_nature=$mvt_new.output_nature}}
{{/if}}
{{:assign amount_init=$mvt_new.amount}} {{:assign amount_init=$mvt_new.amount}}
{{:assign date_init=$mvt_new.date|date_short}} {{:assign date_init=$mvt_new.date|date_short}}
{{:assign eqpmt_key=$mvt_new.equipment}} {{:assign eqpmt_key=$mvt_new.equipment}}
@ -35,24 +28,15 @@
{{:error message="Aucun matériel avec la clé « %s »"|args:$eqpmt_key}} {{:error message="Aucun matériel avec la clé « %s »"|args:$eqpmt_key}}
{{/load}} {{/load}}
{{* récupérer la config des entrées/sorties *}} {{if $mvt_new.direction == "input"}}
{{:include file="../_get_config.html" keep="config"}}
{{if $_GET.direction == "input"}}
{{* types d'entrées *}} {{* types d'entrées *}}
{{#foreach from=$config.input_nature key="label" item="type"}} {{#foreach from=$config.input_nature key=key}}
{{:assign var="input_labels.%s"|args:$label value="%s"|args:$label}} {{:assign var="input_labels.%s"|args:$key value=$label}}
{{if $label == $mvt_new.input_nature}}
{{:assign nature_defaut=$label}}
{{/if}}
{{/foreach}} {{/foreach}}
{{else}} {{else}}
{{* types de sorties *}} {{* types de sorties *}}
{{#foreach from=$config.output_nature key="label" item="type"}} {{#foreach from=$config.output_nature key=key}}
{{:assign var="output_labels.%s"|args:$label value="%s"|args:$label}} {{:assign var="output_labels.%s"|args:$key value=$label}}
{{if $label == $mvt_new.output_nature}}
{{:assign nature_defaut=$label}}
{{/if}}
{{/foreach}} {{/foreach}}
{{/if}} {{/if}}
@ -65,17 +49,17 @@
{{/if}} {{/if}}
{{* préparer le mouvement modifié *}} {{* préparer le mouvement modifié *}}
{{if $_GET.direction == "input"}} {{if $mvt_new.direction == "input"}}
{{:assign var="mvt_new.input_nature" value=$_POST.nature_operation}} {{:assign var="mvt_new.input_nature" value=$_POST.operation}}
{{:assign var="type_mvt" from="config.input_nature.%s"|args:$mvt_new.input_nature}} {{:assign var="type_mvt" from="config.input_nature.%s.type"|args:$mvt_new.operation}}
{{if $type_mvt == "temporaire"}} {{if $type_mvt == "temporaire"}}
{{:assign prop=0}} {{:assign prop=0}}
{{else}} {{else}}
{{:assign prop=1}} {{:assign prop=1}}
{{/if}} {{/if}}
{{else}} {{else}}
{{:assign var="mvt_new.output_nature" value=$_POST.nature_operation}} {{:assign var="mvt_new.output_nature" value=$_POST.operation}}
{{:assign var="type_mvt" from="config.output_nature.%s"|args:$mvt_new.output_nature}} {{:assign var="type_mvt" from="config.output_nature.%s.type"|args:$mvt_new.operation}}
{{if $type_mvt == "retour"}} {{if $type_mvt == "retour"}}
{{:assign prop=0}} {{:assign prop=0}}
{{else}} {{else}}
@ -105,8 +89,8 @@
{{if $key != $_GET.key}} {{if $key != $_GET.key}}
{{if! $insere}} {{if! $insere}}
{{if {{if
$_GET.direction == "input" && $date >= $mvt_new.date || $mvt_new.direction == "input" && $date >= $mvt_new.date ||
$_GET.direction == "output" && $date > $mvt_new.date $mvt_new.direction == "output" && $date > $mvt_new.date
}} }}
{{:assign var="movements_new." from=mvt_new}} {{:assign var="movements_new." from=mvt_new}}
{{:assign insere=true}} {{:assign insere=true}}
@ -127,14 +111,11 @@
}} }}
{{if $erreur}} {{if $erreur}}
{{:assign var="new_op_label" from="config.%s_nature.%s.label"|args:$mvt_new.direction:$mvt_new.operation}}
<p class="block error"> <p class="block error">
Modification demandée impossible : Modification demandée impossible :
« {{$mvt_nature}} de {{$eqpmt.designation}} (qté : {{$amount_init}}) en date du {{$date_init}} » vers « {{$op_label}} de {{$eqpmt.designation}} (qté : {{$amount_init}}) en date du {{$date_init}} » vers
{{if $_GET.direction == "input"}} « {{$new_op_label}}
« {{$mvt_new.input_nature}}
{{else}}
« {{$mvt_new.output_nature}}
{{/if}}
de {{$eqpmt.designation}} (qté : {{$mvt_new.amount}}) à la date du {{$mvt_new.date|date_short}} » de {{$eqpmt.designation}} (qté : {{$mvt_new.amount}}) à la date du {{$mvt_new.date|date_short}} »
</p> </p>
{{else}} {{else}}
@ -143,9 +124,8 @@
key=$_GET.key key=$_GET.key
validate_schema="movement.schema.json" validate_schema="movement.schema.json"
type="movement" type="movement"
direction=$_GET.direction direction=$mvt_new.direction
input_nature=$mvt_new.input_nature operation=$_POST.operation
output_nature=$mvt_new.output_nature
amount=$mvt_new.amount|intval amount=$mvt_new.amount|intval
equipment=$eqpmt_key equipment=$eqpmt_key
date=$mvt_new.date date=$mvt_new.date
@ -168,13 +148,13 @@
{{* formulaire de modification du mouvement *}} {{* formulaire de modification du mouvement *}}
<form method="post" action=""> <form method="post" action="">
<fieldset> <fieldset>
<legend>Modifier « {{$mvt_nature}} {{$eqpmt.designation}} (Catégorie : {{$category.name}}) »</legend> <legend>Modifier « {{$op_label}} {{$eqpmt.designation}} (Catégorie : {{$category.name}}) »</legend>
{{if $_GET.direction == "input"}} {{if $mvt_new.direction == "input"}}
<dl> <dl>
{{:input type="select" name="nature_operation" label="Type" required=true options=$input_labels|sort default=$nature_defaut}} {{:input type="select" name="operation" label="Type" required=true options=$input_labels|sort default=$mvt_new.operation}}
{{else}} {{else}}
<dl> <dl>
{{:input type="select" name="nature_operation" label="Type" required=true options=$output_labels|sort default=$nature_defaut}} {{:input type="select" name="operation" label="Type" required=true options=$output_labels|sort default=$mvt_new.operation}}
{{/if}} {{/if}}
{{:input type="date" name="date" label="Date" required=true default=$mvt_new.date}} {{:input type="date" name="date" label="Date" required=true default=$mvt_new.date}}
{{:input type="number" name="amount" label="Quantité" min=1 required=true default=$mvt_new.amount}} {{:input type="number" name="amount" label="Quantité" min=1 required=true default=$mvt_new.amount}}

View File

@ -14,9 +14,9 @@
{{:include file="../../_get_config.html" keep="config"}} {{:include file="../../_get_config.html" keep="config"}}
{{* types de sorties *}} {{* types de sorties *}}
{{#foreach from=$config.output_nature key="label" item="type"}} {{#foreach from=$config.output_nature key=key}}
{{if $type == 'retour'}} {{if $type == 'retour'}}
{{:assign var='output_labels.' value="%s"|args:$label}} {{:assign var="output_labels.%s"|args:$key value=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -47,8 +47,7 @@
{{/if}} {{/if}}
{{* traiter le mouvement courant *}} {{* traiter le mouvement courant *}}
{{:assign var="mvt_nature" from="mvt.%s_nature"|args:$mvt.direction}} {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt.direction:$mvt.operation}}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$mvt.direction:$mvt_nature}}
{{if $mvt.direction === 'input'}} {{if $mvt.direction === 'input'}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
@ -86,13 +85,12 @@
{{* Enregistrer le mouvement *}} {{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}} {{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="output_labels.%d|args:$_POST.type_operation}}
{{:save {{:save
key=$mvt_key key=$mvt_key
validate_schema="../movement.schema.json" validate_schema="../movement.schema.json"
type="movement" type="movement"
direction="output" direction="output"
output_nature=$operation operation=$_POST.operation
amount=$_POST.quantite|intval amount=$_POST.quantite|intval
equipment=$equipment.key equipment=$equipment.key
date=$_POST.date|parse_date date=$_POST.date|parse_date
@ -130,7 +128,7 @@
<fieldset class="sortie"> <fieldset class="sortie">
<legend>Ajouter une sortie d'un matériel présent temporairement</legend> <legend>Ajouter une sortie d'un matériel présent temporairement</legend>
<dl> <dl>
{{:input type="select" name="type_operation" label="Type" required=true options=$output_labels|sort}} {{:input type="select" name="operation" label="Type" required=true options=$output_labels|sort}}
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}} {{: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=$present min=1 max=$present}} {{:input type="number" name="quantite" label="Quantité" required=true default=$present min=1 max=$present}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}} {{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}

View File

@ -14,9 +14,9 @@
{{:include file="../../_get_config.html" keep="config"}} {{:include file="../../_get_config.html" keep="config"}}
{{* types de sorties *}} {{* types de sorties *}}
{{#foreach from=$config.output_nature key="label" item="type"}} {{#foreach from=$config.output_nature key=key}}
{{if $type != 'retour'}} {{if $type != 'retour'}}
{{:assign var='output_labels.' value="%s"|args:$label}} {{:assign var="output_labels.%s"|args:$key value=$label}}
{{/if}} {{/if}}
{{/foreach}} {{/foreach}}
@ -33,13 +33,11 @@
{{* lister tous les mouvements du matériel *}} {{* lister tous les mouvements du matériel *}}
{{#load type="movement" where="$$.equipment = '%s'"|args:$_GET.key assign="mvt" order="$$.date ASC"}} {{#load type="movement" where="$$.equipment = '%s'"|args:$_GET.key assign="mvt" order="$$.date ASC"}}
{{* traiter le nouveau mouvement *}} {{* traiter le nouveau mouvement *}}
{{if ! $insere && $mvt.date > $_POST.date|parse_date}} {{if ! $insere && $mvt.date > $_POST.date|parse_date}}
{{:assign insere=true}} {{:assign insere=true}}
{{:assign dispo_old="%d-%d"|math:$stock:$exterieur}} {{: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.type"|args:$_POST.operation}}
{{:assign var="type_mvt" from="config.output_nature.%s"|args:$operation}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
{{:assign stock="%d-%d"|math:$stock:$_POST.quantite}} {{:assign stock="%d-%d"|math:$stock:$_POST.quantite}}
@ -55,8 +53,7 @@
{{/if}} {{/if}}
{{* traiter le mouvement courant *}} {{* traiter le mouvement courant *}}
{{:assign var="mvt_nature" from="mvt.%s_nature"|args:$mvt.direction}} {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt.direction:$mvt.operation}}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$mvt.direction:$mvt_nature}}
{{if $mvt.direction === 'input'}} {{if $mvt.direction === 'input'}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
@ -85,8 +82,7 @@
{{/load}} {{/load}}
{{if ! $insere}} {{if ! $insere}}
{{:assign dispo_old="%d-%d"|math:$stock:$exterieur}} {{: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.type"|args:$_POST.operation}}
{{:assign var="type_mvt" from="config.output_nature.%s"|args:$operation}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}
{{:assign stock="%d-%d"|math:$stock:$_POST.quantite}} {{:assign stock="%d-%d"|math:$stock:$_POST.quantite}}
@ -103,13 +99,12 @@
{{* Enregistrer le mouvement *}} {{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}} {{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="output_labels.%d|args:$_POST.type_operation}}
{{:save {{:save
key=$mvt_key key=$mvt_key
validate_schema="../movement.schema.json" validate_schema="../movement.schema.json"
type="movement" type="movement"
direction="output" direction="output"
output_nature=$operation operation=$_POST.operation
amount=$_POST.quantite|intval amount=$_POST.quantite|intval
equipment=$equipment.key equipment=$equipment.key
date=$_POST.date|parse_date date=$_POST.date|parse_date
@ -150,7 +145,7 @@
<fieldset class="sortie"> <fieldset class="sortie">
<legend>Ajouter une sortie</legend> <legend>Ajouter une sortie</legend>
<dl> <dl>
{{:input type="select" name="type_operation" label="Type" required=true options=$output_labels|sort}} {{:input type="select" name="operation" label="Type" required=true options=$output_labels|sort}}
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}} {{: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=$dispo min=1 max=$dispo}} {{:input type="number" name="quantite" label="Quantité" required=true default=$dispo min=1 max=$dispo}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}} {{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}

View File

@ -40,8 +40,7 @@
order="$$.date"}} order="$$.date"}}
{{* déterminer le type de mouvement *}} {{* déterminer le type de mouvement *}}
{{:assign var="mvt_nature" from="mvt.%s_nature"|args:$mvt.direction}} {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt.direction:$mvt.operation}}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$mvt.direction:$mvt_nature}}
{{if $key != $_GET.key}} {{if $key != $_GET.key}}
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}} {{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}
@ -70,9 +69,9 @@
{{else}} {{else}}
{{* sortie *}} {{* sortie *}}
{{:assign temporaire=false}} {{:assign temporaire=false}}
{{:assign var="output_nature" from="config.output_nature.%s"|args:$mvt_suppr.output_nature}} {{:assign var="type_operation" from="config.output_nature.%s.type"|args:$mvt_suppr.operation}}
{{if $output_nature == 'temporaire'}} {{if $type_operation == 'temporaire'}}
{{:assign exterieur=0}} {{:assign exterieur=0}}
{{#load {{#load
type="movement" type="movement"
@ -81,8 +80,7 @@
order="$$.date"}} order="$$.date"}}
{{* déterminer le type de mouvement *}} {{* déterminer le type de mouvement *}}
{{:assign var="mvt_nature" from="mvt.%s_nature"|args:$mvt.direction}} {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt.direction:$mvt.operation}}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$mvt.direction:$mvt_nature}}
{{if $key != $_GET.key}} {{if $key != $_GET.key}}
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}} {{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}

View File

@ -15,8 +15,7 @@
{{#foreach from=$movements item="mvt"}} {{#foreach from=$movements item="mvt"}}
{{* déterminer le type de mouvement *}} {{* déterminer le type de mouvement *}}
{{:assign var="mvt_nature" from="mvt.%s_nature"|args:$mvt.direction}} {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt.direction:$mvt.operation}}
{{:assign var="type_mvt" from="config.%s_nature.%s"|args:$mvt.direction:$mvt_nature}}
{{if $mvt.direction == 'input'}} {{if $mvt.direction == 'input'}}
{{if $type_mvt == 'définitif'}} {{if $type_mvt == 'définitif'}}