diff --git a/mouvements/entrees/retour.html b/mouvements/entrees/retour.html deleted file mode 100644 index 347b8fd..0000000 --- a/mouvements/entrees/retour.html +++ /dev/null @@ -1,148 +0,0 @@ -{{* -*- brindille -*- *}} - -{{* - paramètres : - - key : clé du matériel qui revient -*}} - -{{* 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"}} - -{{* déterminer le matériel concerné par le mouvement *}} -{{#load key=$_GET.key assign="equipment"}}{{/load}} - -{{* - -------------------- Traiter l'envoi du formulaire -------------------- -*}} -{{#form on="save"}} - {{* vérifier les données saisies *}} - {{if $_POST.amount <= 0}} - {{:error message="La quantité (%s) doit être strictement positive !!"|args:$_POST.amount}} - {{/if}} - - {{if $_POST.date|parse_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.operation" value=$_POST.operation}} - {{:assign var="mvt_new.amount" value=$_POST.amount}} - - {{* - lister les mouvements - - insérer le nouveau mvt à sa place par date croissante - *}} - {{:assign insere=false}} - {{#load - where=" - $$.type = 'movement' - AND - $$.equipment = :eqpmt_key" - :eqpmt_key=$equipment.key - order="$$.date" - assign="movement" - }} - {{if! $insere}} - {{if - $mvt_new.direction == "input" && $date >= $mvt_new.date || - $mvt_new.direction == "output" && $date > $mvt_new.date - }} - {{:assign var="movements_new." from=mvt_new}} - {{:assign insere=true}} - {{/if}} - {{/if}} - {{:assign var="movements_new." from=movement}} - {{/load}} - {{if ! $insere}} - {{:assign var="movements_new." from=mvt_new}} - {{/if}} - - {{* Vérifier la cohérence des mouvements du matériel *}} - {{:include - file="../valider_modification.html" - keep="erreur, pb" - movements=$movements_new - }} - - {{if $erreur}} -

Impossible d'enregistrer ce mouvement. - {{if $pb.mvt.key != $mvt_new.key}} - {{:assign var="err_mvt_label" from="config.input_nature.%s.label"|args:$pb.mvt.operation}} -
Mouvement incompatible avec - « {{$err_mvt_label}} de {{$equipment.name}} (qté : {{$pb.mvt.amount}}) - en date du {{$pb.mvt.date|date_short}} ». - {{/if}} -

- {{else}} - {{* vérification réussie : enregistrer le mouvement modifié *}} - {{:save - key=""|uuid - validate_schema="../movement.schema.json" - type="movement" - direction="input" - operation=$_POST.operation - amount=$_POST.amount|intval - equipment=$equipment.key - date=$_POST.date|parse_date - comment=$_POST.comment|trim - }} - {{:redirect force="../../historique.html?ok=1&key=%s&prop=1&msg=retour"|args:$_GET.key}} -{{/if}} -{{/form}} - -{{:admin_header title="Retour de matériel" custom_css="./../../style.css" current="module_equipment"}} -{{:form_errors}} - -{{* Extraire et compiler les infos de la base *}} -{{:include file="../../_calcul_dispo.html" eqpmt_key=$_GET.key keep="categories, equipments"}} -{{:assign var=sorti from="equipments.%s.exterieur"|args:$_GET.key}} - -{{* types d'entrées *}} -{{#foreach from=$config.input_nature key=key}} - {{if $type == 'retour'}} - {{:assign var="input_labels.%s"|args:$key value=$label}} - {{/if}} -{{/foreach}} - - -{{if $sorti > 0}} - {{:assign var=cat_name from=categories.%s|args:$equipment.category}} - {{* formulaire d'entrée de matériel *}} -
-
- Informations matériel -
-
Matériel
-
{{$equipment.name}}
-
Catégorie
-
{{$cat_name}}
-
Quantité sortie
-
{{$sorti}} (à la date du {{$now|date_short}})
-
-
-
- Ajouter un retour de matériel -
- {{: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="number" name="amount" label="Quantité" min=1 required=true default=$sorti max=$sorti}} - {{:input type="textarea" name="comment" label="Remarques" cols="40", rows="3" required=false}} -
-
-

- {{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}} -

-
-{{else}} -

Il n'y a aucun matériel

-{{/if}} - -{{:admin_footer}} diff --git a/mouvements/sorties/emprunte.html b/mouvements/sorties/emprunte.html deleted file mode 100644 index 6b94afa..0000000 --- a/mouvements/sorties/emprunte.html +++ /dev/null @@ -1,149 +0,0 @@ -{{* -*- brindille -*- *}} - -{{* - paramètres : - - key : clé du matériel à rendre -*}} - -{{if ! $dialog}} - {{* barre de navigation *}} - {{:include file="../../_nav.html" current="sorties"}} -{{/if}} - -{{* récupérer la config des entrées/sorties *}} -{{:include file="../../_get_config.html" keep="config"}} - -{{* types de sorties *}} -{{#foreach from=$config.output_nature key=key}} - {{if $type == 'retour'}} - {{:assign var="output_labels.%s"|args:$key value=$label}} - {{/if}} -{{/foreach}} - -{{* Traiter l'envoi du formulaire *}} -{{#form on="save"}} - {{* interdire date dans le futur *}} - {{if $_POST.date|parse_date|strtotime > $now}} - {{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}} - {{/if}} - - {{* récupérer les infos du matériel *}} - {{#load type="equipment" key=$_GET.key assign="equipment"}} - {{/load}} - - {{:assign stock=0}} - {{:assign exterieur=0}} - {{:assign nonproprio=0}} - {{:assign insere=false}} - - {{* lister tous les mouvements du matériel *}} - {{#load type="movement" where="$$.equipment = '%s'"|args:$_GET.key assign="mvt" order="$$.date ASC"}} - - {{* traiter le nouveau mouvement *}} - {{if ! $insere && $mvt.date > $_POST.date|parse_date}} - {{:assign insere=true}} - {{:assign dispo_old=$nonproprio}} - {{:assign nonproprio="%d-%d"|math:$nonproprio:$_POST.quantite}} - - {{if $nonproprio < 0}} - {{:assign date_err=$_POST.date|date:"d/m/Y"}} - {{:error message="Erreur : la quantité indiquée (%s) est supérieure à celle disponible (%d) à la date du %s"|args:$_POST.quantite:$dispo_old:$date_err}} - {{/if}} - {{/if}} - - {{* traiter le mouvement courant *}} - {{:assign var="type_mvt" from="config.%s_nature.%s.type"|args:$mvt.direction:$mvt.operation}} - - {{if $mvt.direction === 'input'}} - {{if $type_mvt == 'définitif'}} - {{:assign stock="%d+%d"|math:$stock:$mvt.amount}} - {{elseif $type_mvt == 'retour'}} - {{:assign exterieur="%d-%d"|math:$exterieur:$mvt.amount}} - {{elseif $type_mvt == 'temporaire'}} - {{:assign nonproprio="%d+%d"|math:$nonproprio:$mvt.amount}} - {{/if}} - {{elseif $mvt.direction === 'output'}} - {{if $type_mvt == 'définitif'}} - {{:assign stock="%d-%d"|math:$stock:$mvt.amount}} - {{elseif $type_mvt == 'temporaire'}} - {{:assign exterieur="%d+%d"|math:$exterieur:$mvt.amount}} - {{elseif $type_mvt == 'retour'}} - {{:assign nonproprio="%d-%d"|math:$nonproprio:$mvt.amount}} - {{/if}} - {{/if}} - - {{:assign dispo="%d-%d"|math:$stock:$exterieur}} - - {{if $dispo < 0 || $stock < 0 || $exterieur < 0 || $nonproprio < 0}} - {{:assign date_err=$mvt.date|date:"d/m/Y"}} - {{:error message="Erreur : la quantité indiquée (%s) est incompatible avec la sortie de %s unités à la date du %s"|args:$_POST.quantite:$mvt.amount:$date_err}} - {{/if}} - {{/load}} - {{if ! $insere}} - {{:assign dispo_old=$nonproprio}} - {{:assign nonproprio="%d-%d"|math:$nonproprio:$_POST.quantite}} - {{if $nonproprio < 0}} - {{:assign date_err=$_POST.date|date:"d/m/Y"}} - {{:error message="Erreur : la quantité indiquée (%s) est supérieure à celle disponible (%d) à la date du %s"|args:$_POST.quantite:$dispo_old:$date_err}} - {{/if}} - {{/if}} - - {{* Enregistrer le mouvement *}} - {{:assign mvt_key=""|uuid}} - {{:save - key=$mvt_key - validate_schema="../movement.schema.json" - type="movement" - direction="output" - operation=$_POST.operation - amount=$_POST.quantite|intval - equipment=$equipment.key - date=$_POST.date|parse_date - comment=$_POST.remarques|trim - }} - {{:redirect force="../../historique.html?ok=1&key=%s&prop=0&msg=sortie"|args:$_GET.key}} -{{/form}} - -{{:admin_header title="Sortie de matériel" custom_css="./../../style.css" current="module_equipment"}} -{{:form_errors}} - -{{* Extraire et compiler les infos de la base *}} -{{:include file="../../_calcul_dispo.html" eqpmt_key=$_GET.key keep="categories,equipments"}} -{{:assign var=present from="equipments.%s.nonproprio"|args:$_GET.key}} - -{{if $present > 0}} - {{* déterminer le matériel concerné par le mouvement *}} - {{#load key=$_GET.key assign="equipment"}}{{/load}} - {{:assign var=cat_name from=categories.%s|args:$equipment.category}} - - {{* formulaire de sortie de matériel *}} -
-
- Informations matériel -
-
Matériel
-
{{$equipment.name}}
-
Catégorie
-
{{$cat_name}}
-
Quantité présente
-
{{$present}}
-
-
-
- Ajouter une sortie d'un matériel présent temporairement -
- {{: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="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}} -
-
-

- {{:button type="submit" name="save" label="Enregistrer" shape="right" class="main"}} -

-
-{{else}} -

Il n'y a aucun matériel en stock

-{{/if}} - -{{:admin_footer}}