Templates, decomposition prix restructuree, TVA + VFL, fix DM buttons

This commit is contained in:
Jo
2026-07-06 12:40:10 +02:00
parent ad198a1756
commit b25c3d9170
11 changed files with 1311 additions and 152 deletions
+45 -13
View File
@@ -1,9 +1,10 @@
{% extends 'base.html' %}
{% block title %}Paramètres{% endblock %}
{% block title %}Parametres{% endblock %}
{% block content %}
<div class="page-header">
<h1><i class="bi bi-sliders me-2 text-secondary"></i>Paramètres</h1>
<h1><i class="bi bi-sliders me-2 text-secondary"></i>Parametres globaux</h1>
<p class="text-muted small mt-1">Valeurs par defaut — remplacees si un profil est selectionne lors du calcul.</p>
</div>
<form method="POST">
@@ -19,10 +20,10 @@
step="0.01" value="{{ settings.filament_price_per_kg }}">
</div>
<div class="mb-3">
<label class="form-label">Marge matière (%)</label>
<label class="form-label">Marge matiere (%)</label>
<input type="number" name="material_margin_pct" class="form-control"
step="0.5" value="{{ settings.material_margin_pct }}">
<div class="form-text">Appliquée sur le coût matière brut.</div>
<div class="form-text">Appliquee sur le cout matiere brut.</div>
</div>
</div>
</div>
@@ -30,7 +31,7 @@
<div class="col-md-6">
<div class="card">
<div class="card-header py-3"><i class="bi bi-lightning-charge me-2"></i>Électricité</div>
<div class="card-header py-3"><i class="bi bi-lightning-charge me-2"></i>Electricite</div>
<div class="card-body">
<div class="mb-3">
<label class="form-label">Prix kWh (€)</label>
@@ -58,7 +59,7 @@
step="1" value="{{ settings.printer_price }}">
</div>
<div class="col-6">
<label class="form-label">Durée de vie (h)</label>
<label class="form-label">Duree de vie (h)</label>
<input type="number" name="printer_lifespan_hours" class="form-control"
step="100" value="{{ settings.printer_lifespan_hours }}">
</div>
@@ -70,7 +71,7 @@
step="0.5" value="{{ settings.nozzle_price }}">
</div>
<div class="col-6">
<label class="form-label">Durée de vie buse (h)</label>
<label class="form-label">Duree de vie buse (h)</label>
<input type="number" name="nozzle_lifespan_hours" class="form-control"
step="10" value="{{ settings.nozzle_lifespan_hours }}">
</div>
@@ -82,7 +83,7 @@
step="0.5" value="{{ settings.plate_price }}">
</div>
<div class="col-6">
<label class="form-label">Durée de vie plateau (h)</label>
<label class="form-label">Duree de vie plateau (h)</label>
<input type="number" name="plate_lifespan_hours" class="form-control"
step="50" value="{{ settings.plate_lifespan_hours }}">
</div>
@@ -112,10 +113,41 @@
<div class="card-header py-3"><i class="bi bi-percent me-2"></i>Fiscal</div>
<div class="card-body">
<div class="mb-3">
<label class="form-label">Taux cotisations micro-entrepreneur (%)</label>
<input type="number" name="tax_rate_pct" class="form-control"
step="0.1" value="{{ settings.tax_rate_pct }}">
<div class="form-text">12.3% pour vente de marchandises (2024).</div>
<label class="form-label fw-semibold">Cotisations sociales (%)</label>
<input type="number" name="cotisations_rate_pct" class="form-control"
step="0.1" value="{{ settings.cotisations_rate_pct }}">
<div class="form-text">12.3% pour prestation de services (2024). Calculees sur le CA HT.</div>
</div>
<div class="mb-3">
<label class="form-label fw-semibold">Versement Forfaitaire Liberatoire — impot (%)</label>
<input type="number" name="vfl_rate_pct" class="form-control"
step="0.1" value="{{ settings.vfl_rate_pct }}">
<div class="form-text">
1.7% pour prestation de services (option VFL). Mettre 0 si vous n'etes pas au VFL
(impot calcule separement sur declaration classique).
</div>
</div>
<hr>
<div class="mb-2">
<label class="form-label fw-semibold">TVA (%)</label>
<input type="number" name="tva_rate_pct" class="form-control"
step="0.1" value="{{ settings.tva_rate_pct }}">
<div class="form-text">
<strong>0</strong> si vous etes en franchise en base de TVA (CA &lt; seuil).
<strong>20</strong> si vous avez depasse le seuil et devez facturer la TVA.
La TVA est affichee separement et s'ajoute au prix HT.
</div>
</div>
{% set total_charges = settings.cotisations_rate_pct + settings.vfl_rate_pct %}
<div class="alert alert-info py-2 mt-3 mb-0 small">
<i class="bi bi-info-circle me-1"></i>
Charges totales sur CA : <strong>{{ total_charges }} %</strong>
(cotisations {{ settings.cotisations_rate_pct }}% + VFL {{ settings.vfl_rate_pct }}%)
{% if settings.tva_rate_pct > 0 %}
+ TVA {{ settings.tva_rate_pct }}% ajoutee au prix HT
{% else %}
— franchise TVA active
{% endif %}
</div>
</div>
</div>
@@ -125,7 +157,7 @@
<div class="mt-4">
<button type="submit" class="btn px-4 py-2 fw-bold" style="background:#ff6b35;color:#fff">
<i class="bi bi-save me-2"></i>Enregistrer les paramètres
<i class="bi bi-save me-2"></i>Enregistrer les parametres
</button>
</div>
</form>