réorganisation (cf remarques Bohwaz)

This commit is contained in:
Jean-Christophe Engel 2023-12-05 19:17:08 +01:00
parent 6006bdd169
commit 0e669a7c21
23 changed files with 279 additions and 236 deletions

View file

@ -34,10 +34,10 @@
{{if $key != $_GET.key}}
{{* ce n'est pas le mouvement à supprimer : cumuler les entrées/sorties *}}
{{if $movement.direction == 'entrée'}}
{{if $movement.direction == 'input'}}
{{* chercher le type d'entrée parmi les types de la config *}}
{{#foreach from=$config.inputNature item="elem"}}
{{if $movement.inputNature == $elem.label}}
{{#foreach from=$config.input_nature item="elem"}}
{{if $movement.input_nature == $elem.label}}
{{if $elem.type == 'temporaire'}}
{{:assign nonprop="%d+%d"|math:$nonprop:$movement.amount}}
{{else}}
@ -45,10 +45,10 @@
{{/if}}
{{/if}}
{{/foreach}}
{{elseif $movement.direction == 'sortie'}}
{{elseif $movement.direction == 'output'}}
{{* chercher le type de sortie parmi les types de la config *}}
{{#foreach from=$config.outputNature item="elem"}}
{{if $movement.outputNature == $elem.label}}
{{#foreach from=$config.output_nature item="elem"}}
{{if $movement.output_nature == $elem.label}}
{{if $elem.type == 'retour'}}
{{:assign nonprop="%d-%d"|math:$nonprop:$movement.amount}}
{{else}}
@ -60,7 +60,7 @@
{{* problème ? *}}
{{if $dispo < 0 || $nonprop < 0}}
{{:redirect force="./index.html?err=1&msg=Impossible de supprimer l'entrée « %s %s (%d) en date du %s »"|args:$mvt_suppr.inputNature:$eqpmt_suppr.designation:$amount_suppr:$date_suppr}}
{{:redirect force="./index.html?err=1&msg=suppression"}}
{{/if}}
{{/if}}
@ -68,14 +68,14 @@
{{* vérification réussie : supprimer l'entrée *}}
{{:delete key=$_GET.key}}
{{:assign var="msg" value="Entrée « %s %s (%d) en date du %s » supprimée"|args:$mvt_suppr.inputNature:$eqpmt_suppr.designation:$amount_suppr:$date_suppr}}
{{:assign var="msg" value="suppression"}}
{{* voir s'il reste des mouvements pour le matériel concerné par le mouvement supprimé *}}
{{#load type="movement" where="$$.equipment = :eqpmt_key" :eqpmt_key=$key_eqpmt_suppr}}
{{else}}
{{* supprimer le matériel *}}
{{:delete key=$key_eqpmt_suppr}}
{{:assign var="msg" value="%s - Matériel « %s » supprimé"|args:$msg:$eqpmt_suppr.designation}}
{{:assign var="msg" value="%s - matériel"|args:$msg}}
{{/load}}
{{:redirect force="./index.html?ok=1&msg=%s"|args:$msg}}
@ -83,7 +83,7 @@
{{:delete_form
legend="Supprimer cette entrée ?"
warning="Supprimer l'entrée « %s %s (%d) en date du %s » ?"|args:$mvt_suppr.inputNature:$eqpmt_suppr.designation:$amount_suppr:$date_suppr
warning="Supprimer l'entrée « %s %s (%d) en date du %s » ?"|args:$mvt_suppr.input_nature:$eqpmt_suppr.designation:$amount_suppr:$date_suppr
info="S'il ne reste aucun mouvement pour ce matériel, le matériel sera supprimé"
}}

View file

@ -5,17 +5,31 @@
{{:include file="../../_nav.html" current="entrees"}}
{{if $_GET.ok}}
<p class="block confirm">{{$_GET.msg}}</p>
{{if $_GET.msg|match:"suppression"}}
{{:assign msg="Entrée supprimée"}}
{{if $_GET.msg|match:"matériel"}}
{{:assign var="msg" value="%s - Matériel supprimé"|args:$msg}}
{{/if}}
{{elseif $_GET.msg == "entrée"}}
{{:assign msg="Entrée enregistrée"}}
{{elseif $_GET.msg == "modification"}}
{{:assign msg="Entrée modifiée"}}
{{/if}}
<p class="block confirm">{{$msg}}</p>
{{elseif $_GET.err}}
<p class="block error">{{$_GET.msg}}</p>
{{if $_GET.msg == "suppression"}}
<p class="block error">Impossible de supprimer l'entrée</p>
{{/if}}
{{/if}}
<form method="post" action="">
<fieldset class="entree">
<legend>Ajouter une entrée</legend>
{{:linkbutton label="Matériel répertorié" shape="plus" href="repertorie.html?dialog" target="_dialog"}}
{{:linkbutton label="Matériel non répertorié" shape="plus" href="non_repertorie.html?dialog" target="_dialog"}}
{{:linkbutton label="Retour de sortie temporaire" shape="plus" href="retour.html?dialog" target="_dialog"}}
<dl>
{{:linkbutton label="Matériel répertorié" shape="plus" href="repertorie.html" target="_dialog"}}
{{:linkbutton label="Matériel non répertorié" shape="plus" href="non_repertorie.html" target="_dialog"}}
{{:linkbutton label="Retour de sortie temporaire" shape="plus" href="retour.html" target="_dialog"}}
</dl>
</fieldset>
</form>
@ -26,7 +40,7 @@
{{#list
select="
$$.date AS 'Date' ;
$$.inputNature AS 'Type' ;
$$.input_nature AS 'Type' ;
$$.amount AS 'Nombre' ;
(SELECT $$.designation
FROM @TABLE AS b
@ -34,13 +48,13 @@
AS 'Matériel' ;
$$.comment AS 'Remarques'"
type="movement"
direction="entrée"
direction="input"
order=1}}
{{:assign var='mvt_key' value=$key}}
<tr>
<td>{{$date|date_short}}</td>
<td>{{$inputNature}}</td>
<td>{{$input_nature}}</td>
<td>{{$amount}}</td>
<td>{{$col4}}</td>
<td>{{$comment}}</td>
@ -52,7 +66,7 @@
target="_dialog"}}
{{:linkbutton
label="Modifier"
href="../modifier_mouvement.html?key=%s&direction=entrée&caller=%s"|args:$mvt_key:$request_url
href="../modifier_mouvement.html?key=%s&direction=input&caller=%s"|args:$mvt_key:$request_url
shape="edit"
target="_dialog"}}
</td>

View file

@ -1,22 +1,18 @@
{{#restrict section="accounting" level="write" block=true}}{{/restrict}}
{{:admin_header title="Gestion des matériels" current="module_equipment"}}
{{:admin_header title="Entrée de matériel" current="module_equipment"}}
{{if $_GET.dialog === null}}
{{* barre de navigation *}}
{{:include file="../../_nav.html" current="entrees"}}
{{else}}
<header class="header">
<h1>Entrée de matériel</h1>
</header>
{{* barre de navigation *}}
{{if ! $dialog}}
{{:include file="../../_nav.html" current="entrees"}}
{{/if}}
{{* récupérer la config des entrées/sorties *}}
{{:include file="../../_get_config.html" keep="config"}}
{{* types d'entrées *}}
{{#foreach from=$config.inputNature item="elem"}}
{{#foreach from=$config.input_nature item="elem"}}
{{if $elem.type != 'retour'}}
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
{{:assign var='input_types.' value="%s"|args:$elem.label}}
{{/if}}
{{/foreach}}
@ -47,21 +43,21 @@
{{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="types_entrees.%d|args:$_POST.type_operation}}
{{:assign var="operation" from="input_types.%d"|args:$_POST.type_operation}}
{{:save
key=$mvt_key
validate_schema="../movement.schema.json"
type="movement"
direction="entrée"
inputNature=$operation
direction="input"
input_nature=$operation
amount=$_POST.quantite|intval
equipment=$equipment_key
date=$_POST.date|parse_date
comment=$_POST.remarques|trim
}}
{{:redirect force="index.html?ok=1&msg=Entrée de « %s » enregistrée"|args:$_POST.designation}}
{{:redirect force="index.html?ok=1&msg=entrée"}}
{{else}}
{{:form_errors}}
{{/form}}
@ -76,18 +72,22 @@
<form method="post" action="">
<fieldset class="entree">
<legend>Ajouter une entrée d'un matériel non 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}}
<legend>Ajouter une entrée d'un matériel non répertorié</legend>
<dl>
{{:input type="select" name="type_operation" label="Type" required=true options=$input_types}}
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
</dl>
</fieldset>
<fieldset>
<legend>Matériel</legend>
{{:input type="select" name="category" label="Catégorie" required=true options=$categories}}
{{:input type="text" name="designation" label="Désignation" required=true}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}
<legend>Matériel</legend>
<dl>
{{:input type="select" name="category" label="Catégorie" required=true options=$categories}}
{{:input type="text" name="designation" label="Désignation" required=true}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40", rows="3" required=false}}
</dl>
</fieldset>
</fieldset>
<p class="submit">
{{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}}

View file

@ -1,22 +1,18 @@
{{#restrict section="accounting" level="write" block=true}}{{/restrict}}
{{:admin_header title="Gestion des matériels" current="module_equipment"}}
{{:admin_header title="Entrée de matériel" current="module_equipment"}}
{{if $_GET.dialog === null}}
{{* barre de navigation *}}
{{:include file="../../_nav.html" current="entrees"}}
{{else}}
<header class="header">
<h1>Entrée de matériel</h1>
</header>
{{* barre de navigation *}}
{{if ! $dialog}}
{{:include file="../../_nav.html" current="entrees"}}
{{/if}}
{{* récupérer la config des entrées/sorties *}}
{{:include file="../../_get_config.html" keep="config"}}
{{* types d'entrées *}}
{{#foreach from=$config.inputNature item="elem"}}
{{#foreach from=$config.input_nature item="elem"}}
{{if $elem.type != 'retour'}}
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
{{:assign var='input_types.' value="%s"|args:$elem.label}}
{{/if}}
{{/foreach}}
@ -28,21 +24,21 @@
{{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="types_entrees.%d|args:$_POST.type_operation}}
{{:assign var="operation" from="input_types.%d|args:$_POST.type_operation}}
{{:save
key=$mvt_key
validate_schema="../movement.schema.json"
type="movement"
direction="entrée"
inputNature=$operation
direction="input"
input_nature=$operation
amount=$_POST.quantite|intval
equipment=$equipment.key
date=$_POST.date|parse_date
comment=$_POST.remarques|trim
}}
{{:redirect force="index.html?ok=1&msg=Entrée de « %s » enregistrée"|args:$equipment.designation}}
{{:redirect force="index.html?ok=1&msg=entrée"}}
{{else}}
{{:form_errors}}
{{/form}}
@ -64,15 +60,19 @@
<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}}
<dl>
{{:input type="select" name="type_operation" label="Type" required=true options=$input_types}}
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
</dl>
</fieldset>
<fieldset>
<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>
<dl>
{{: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}}
</dl>
</fieldset>
<p class="submit">

View file

@ -1,22 +1,18 @@
{{#restrict section="accounting" level="write" block=true}}{{/restrict}}
{{:admin_header title="Gestion des matériels" current="module_equipment"}}
{{:admin_header title="Entrée de matériel" current="module_equipment"}}
{{if $_GET.dialog === null}}
{{* barre de navigation *}}
{{* barre de navigation *}}
{{if ! $dialog}}
{{:include file="../../_nav.html" current="entrees"}}
{{else}}
<header class="header">
<h1>Entrée de matériel</h1>
</header>
{{/if}}
{{* récupérer la config des entrées/sorties *}}
{{:include file="../../_get_config.html" keep="config"}}
{{* types d'entrées *}}
{{#foreach from=$config.inputNature item="elem"}}
{{#foreach from=$config.input_nature item="elem"}}
{{if $elem.type == 'retour'}}
{{:assign var='types_entrees.' value="%s"|args:$elem.label}}
{{:assign var='input_types.' value="%s"|args:$elem.label}}
{{/if}}
{{/foreach}}
@ -44,21 +40,21 @@
{{* Enregistrer le mouvement *}}
{{:assign mvt_key=""|uuid}}
{{:assign var="operation" from="types_entrees.%d|args:$_POST.type_operation}}
{{:assign var="operation" from="input_types.%d|args:$_POST.type_operation}}
{{:save
key=$mvt_key
validate_schema="../movement.schema.json"
type="movement"
direction="entrée"
inputNature=$operation
direction="input"
input_nature=$operation
amount=$_POST.quantite|intval
equipment=$equipment.key
date=$_POST.date|parse_date
comment=$_POST.remarques|trim
}}
{{:redirect force="index.html?ok=1&msg=Entrée de « %s » enregistrée"|args:$equipment.designation}}
{{:redirect force="index.html?ok=1&msg=entrée"}}
{{else}}
{{:form_errors}}
{{/form}}
@ -87,16 +83,20 @@
<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}}
<legend>Ajouter une entrée pour un retour de matériel</legend>
<dl>
{{:input type="select" name="type_operation" label="Type" required=true options=$input_types}}
{{:input type="date" name="date" label="Date" required=true default=$now|date_short}}
{{:input type="number" name="quantite" label="Quantité" required=true default=1}}
</dl>
</fieldset>
<fieldset>
<fieldset>
<legend>Matériel</legend>
<dl>
{{: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>
</dl>
</fieldset>
<p class="submit">