Ajout lieu de stockage et membre destinataire sortie

This commit is contained in:
Jean-Christophe Engel 2025-03-28 10:43:54 +01:00
commit 7b3dcbce01
16 changed files with 439 additions and 72 deletions

View file

@ -146,7 +146,7 @@
</dl>
</fieldset>
<fieldset class="sortie">
<legend>Ajouter une sortie d'un matériel présent temporairement</legend>
<legend>Enregistrer la sortie d'un matériel présent temporairement</legend>
<dl>
{{: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}}

View file

@ -5,11 +5,6 @@
- key : clé du matériel à sortir
*}}
{{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"}}
@ -27,9 +22,22 @@
{{:error message="Impossible de saisir une date dans le futur (%s)"|args:$_POST.date}}
{{/if}}
{{* vérifier les infos saisies *}}
{{if $_POST.operation == ""}}
{{:error message="Vous devez choisir un type de sortie"}}
{{/if}}
{{:assign var="type_mvt" from="config.output_nature.%s.type"|args:$_POST.operation}}
{{if $_POST.user|count > 1}}
{{:error message="Un membre au plus peut être associé à une sortie"}}
{{/if}}
{{#foreach from=$_POST.user key="id" item="name"}}
{{:assign var="user.id" value=$id}}
{{:assign var="user.name" value=$name}}
{{/foreach}}
{{* récupérer les infos du matériel *}}
{{#load type="equipment" key=$_GET.key assign="equipment"}}
{{/load}}
{{#load type="equipment" key=$_GET.key assign="equipment"}}{{/load}}
{{:assign stock=0}}
{{:assign exterieur=0}}
@ -42,7 +50,6 @@
{{if ! $insere && $mvt.date > $_POST.date|parse_date}}
{{:assign insere=true}}
{{:assign dispo_old="%d-%d"|math:$stock:$exterieur}}
{{:assign var="type_mvt" from="config.output_nature.%s.type"|args:$_POST.operation}}
{{if $type_mvt == 'définitif'}}
{{:assign stock="%d-%d"|math:$stock:$_POST.amount}}
@ -134,11 +141,16 @@
equipment=$equipment.key
date=$_POST.date|parse_date
comment=$_POST.remarques|trim
user=$user.id
}}
{{:redirect force="../../historique.html?ok=1&key=%s&prop=1&msg=sortie"|args:$_GET.key}}
{{/form}}
{{:admin_header title="Sortie de matériel" custom_css="./../../style.css" current="module_equipment"}}
{{if ! $dialog}}
{{* barre de navigation *}}
{{:include file="../../_nav.html" current="sorties"}}
{{/if}}
{{:form_errors}}
{{* Extraire et compiler les infos de la base *}}
@ -167,11 +179,20 @@
</dl>
</fieldset>
<fieldset class="sortie">
<legend>Ajouter une sortie</legend>
<legend>Enregistrer une sortie</legend>
<dl>
{{:input type="select" name="operation" label="Type" required=true default_empty="— Aucun —" options=$output_labels|sort}}
{{:input type="date" name="date" label="Date de sortie" required=true default=$now|date_short}}
{{:input type="number" name="amount" label="Quantité" required=true default=$dispo min=1 max=$dispo}}
{{:input
type="list"
name="user"
label="Membre"
target="!users/selector.php"
multiple=true
max=1
help="dans le cas d'une sortie temporaire, il est possible d'associer un membre bénéficiaire"
}}
{{:input type="textarea" name="remarques" label="Remarques" cols="40" rows="3" required=false}}
</dl>
</fieldset>
@ -180,7 +201,15 @@
</p>
</form>
{{else}}
<p class="block error">Il y a 0 unité de ce matériel disponible à la date du {{$now|date_short}}</p>
<p class="block error">Il n'y a aucune unité de ce matériel disponible à la date du {{$now|date_short}}</p>
{{/if}}
{{:admin_footer}}
<script type="text/javascript" src="scripts.js"></script>
<script type="text/javascript">
let op = $('#f_operation');
op.addEventListener("change", (evt) => {
toggleUserChoice(document.querySelector("#user"));
}
</script>