equipment/inventaire.html

169 lines
4.1 KiB
HTML

{{* -*- brindille -*- *}}
{{*
inventaire des entrées/sorties des matériels permanents
*}}
{{* Sélecteur catégories *}}
{{:assign var="options." value="" label="Toutes les catégories" href="?prop=1"}}
{{#load type="category" order="$$.name"}}
{{:assign var="categories.%s"|args:$key value=$name}}
{{:assign
var="options."
value=$key
label=$name
href="?cat_key=%s&prop=1"|args:$key
}}
{{/load}}
<fieldset class="shortFormRight">
<legend>Filtrer par catégorie</legend>
{{:dropdown
title="Filtrer par catégorie"
options=$options
value="%s"|args:$_GET.cat_key
}}
</fieldset>
<div class="shortFormLeft">
<p class="help">Inventaire des matériels propriété de l'association</p>
</div>
{{* types d'entrées et sorties *}}
{{:include file="./_get_config.html" keep="config"}}
{{#foreach from=$config.input_nature key=key}}
{{:assign var="types.input.%s."|args:$type value=$key}}
{{/foreach}}
{{#foreach from=$types.input key=key}}
{{:assign var=elem from="types.input.%s"|args:$key}}
{{:assign elem=$elem|quote_sql|implode:","}}
{{:assign elem="("|cat:$elem|cat:")"}}
{{:assign var="input_types.%s"|args:$key value=$elem}}
{{/foreach}}
{{#foreach from=$config.output_nature key=key}}
{{:assign var="types.output.%s."|args:$type value=$key}}
{{/foreach}}
{{#foreach from=$types.output key=key}}
{{:assign var=elem from="types.output.%s"|args:$key}}
{{:assign elem=$elem|quote_sql|implode:","}}
{{:assign elem="("|cat:$elem|cat:")"}}
{{:assign var="output_types.%s"|args:$key value=$elem}}
{{/foreach}}
{{* filtrer selon la catégorie *}}
{{if $_GET.cat_key == null}}
{{:assign condition="1"}}
{{else}}
{{:assign cat_key=$_GET.cat_key|quote_sql}}
{{:assign condition="$$.category == %s"|args:$cat_key}}
{{/if}}
{{#list
select="
$$.name AS 'Matériel' ;
(SELECT $$.name
FROM @TABLE as cat
WHERE cat.key = @TABLE.$$.category) AS 'Catégorie' ;
(SELECT
SUM($$.amount)
FROM module_data_equipment AS mvt
WHERE
$$.type = 'movement'
AND
$$.operation IN %s
AND
$$.equipment = module_data_equipment.key
) -
(SELECT
COALESCE(SUM($$.amount), 0)
FROM module_data_equipment AS mvt
WHERE
$$.type = 'movement'
AND
$$.operation IN %s
AND
$$.equipment = module_data_equipment.key
) AS 'Stock' ;
(SELECT
COALESCE(SUM($$.amount), 0)
FROM module_data_equipment AS mvt
WHERE
$$.type = 'movement'
AND
$$.operation IN %s
AND
$$.equipment = module_data_equipment.key
) -
(SELECT
COALESCE(SUM($$.amount), 0)
FROM module_data_equipment AS mvt
WHERE
$$.type = 'movement'
AND
$$.operation IN %s
AND
$$.equipment = module_data_equipment.key
) AS 'Sorti' ;
'' AS 'Disponible'
"|args:$input_types.définitif:$output_types.définitif:$output_types.temporaire:$input_types.retour
type="equipment"
where="$$.status <> 'archived' AND %s"|args:$condition
group="col1 HAVING col3 NOT NULL"
order=1
}}
{{:assign var=cat_name from=categories.%s|args:$category}}
{{:assign dispo="%d-%d"|math:$col3:$col4}}
<tr>
<td>{{$name}}</td>
<td>{{$cat_name}}</td>
<td class="num">{{$col3}}</td>
<td class="num">{{$col4}}</td>
<td class="num nosort">{{$dispo}}</td>
<td class="actions">
{{if $col4 > 0}}
{{:linkbutton
label="Retour"
href="mouvements/entrees/retour.html?key=%s"|args:$key
shape="history"
target="_dialog"}}
{{/if}}
{{if $dispo > 0}}
{{:linkbutton
label="Sortie"
shape="minus"
href="mouvements/sorties/stock_disponible.html?key=%s"|args:$key
target="_dialog"}}
{{/if}}
{{:linkbutton
label="Entrée"
shape="plus"
href="mouvements/entrees/repertorie.html?key=%s"|args:$key
target="_dialog"}}
{{:linkbutton
label="Historique"
href="historique.html?key=%s&prop=1"|args:$key
shape="table"}}
{{:linkbutton
label="Modifier"
href="modifier_materiel.html?key=%s&prop=1&stock=%s"|args:$key:$col3
shape="edit"
target="_dialog"}}
</td>
</tr>
{{else}}
<p class="block alert">Aucun matériel.</p>
{{/list}}
<script type="text/javascript" src="scripts.js"></script>
<script type="text/javascript">
(function () {
disableColumSort(document.querySelector("table[class=list]"));
})();
</script>