Bonjour {{ currentUser?.email?.split('@')[0] }}

{{ new Date().toLocaleDateString('fr-FR', { weekday: 'long', day: 'numeric', month: 'long' }) }} {{ isRealtimeConnected ? 'En direct' : 'Connexion...' }}
Total ventes
{{ formatCurrency(salesTotals.montant) }}
A reverser
{{ formatCurrency(salesTotals.aDonner) }}
Comm. SumUp
-{{ formatCurrency(salesTotals.sumup) }}
Comm. Créâmes
-{{ formatCurrency(salesTotals.creames) }}
Filtres
Historique des ventes
{{ sales.length }}
Date Artisan Description Montant Comm. A donner Actions
{{ formatDate(sale.sale_date) }} {{ sale.expand?.artisan?.name || '-' }} {{ sale.product_description || '-' }} {{ formatCurrency(sale.total) }} CB E V Ch {{ formatCurrency(calcCommCreames(sale)) }} {{ formatCurrency(calcADonner(sale)) }}
Aucune vente trouvee

Point de Vente

{{ new Date().toLocaleDateString('fr-FR', { weekday: 'long', day: 'numeric', month: 'long' }) }} {{ isRealtimeConnected ? 'En direct' : 'Connexion...' }}
Panier {{ cart.length }} article(s)
{{ product.name }}
{{ formatCurrency(product.price) }}
Stock: {{ product.stock_quantity }}
Panier

Panier vide

{{ item.product.name }}
{{ item.quantity }}
{{ formatCurrency(item.quantity * item.product.price) }}

{{ artisan.name }}
Aucun artisan (ajoutez des produits au panier)
Total {{ formatCurrency(cartTotal) }}

Gestion des Produits

{{ filteredProducts.length }} produit(s) affiché(s)
Liste des produits
{{ filteredProducts.length }}
Nom Categorie Artisan Prix Stock Statut Actions
{{ product.name }}
{{ product.description }}
{{ product.expand?.categorie?.name || '-' }} {{ product.expand?.artisan?.name || '-' }} {{ formatCurrency(product.price) }} {{ product.stock_quantity }} - {{ product.is_active ? 'Actif' : 'Inactif' }}

Gestion des Artisans

{{ activeVendors.length }} actif(s) · {{ inactiveVendors.length }} inactif(s)
{{ activeVendors.length }} actifs {{ vendors.length - activeVendors.length }} inactifs
Artisans Actifs
{{ filteredActiveVendors.length }}

Aucun artisan actif trouve

{{ vendor.name }}

{{ vendor.email || '-' }} | {{ vendor.phone || '-' }}

{{ vendor.commission_rate || 15 }}% Pas de commission
Loyer expiré: {{ getVendorLastRent(vendor.id).amount?.toFixed(2) || 0 }}€ ({{ formatRentPeriod(getVendorLastRent(vendor.id)) }}) Dernier loyer: {{ getVendorLastRent(vendor.id).amount?.toFixed(2) || 0 }}€ ({{ formatRentPeriod(getVendorLastRent(vendor.id)) }})
Aucun loyer
Artisans Inactifs
{{ filteredInactiveVendors.length }}

Aucun artisan inactif

{{ vendor.name }}

{{ vendor.email || '-' }} | {{ vendor.phone || '-' }}

{{ vendor.commission_rate || 15 }}%
Loyer expiré: {{ getVendorLastRent(vendor.id).amount?.toFixed(2) || 0 }}€ ({{ formatRentPeriod(getVendorLastRent(vendor.id)) }}) Dernier loyer: {{ getVendorLastRent(vendor.id).amount?.toFixed(2) || 0 }}€ ({{ formatRentPeriod(getVendorLastRent(vendor.id)) }})
Aucun loyer

Suivi Financier

Gestion des recettes et dépenses
Total Recettes

{{ totalRecettes.toFixed(2) }}€

Commissions créâmes
Total Dépenses

{{ totalDepenses.toFixed(2) }}€

Frais et charges
Solde

{{ soldeFinancier.toFixed(2) }}€

Recettes - Dépenses
Transactions
{{ filteredTransactions.length }} résultat(s)
Date Type Catégorie Description Mode paiement Montant Actions
Aucune transaction trouvée
{{ formatDate(trans.transaction_date) }} {{ trans.type === 'recette' ? 'Recette' : 'Dépense' }} {{ trans.category || '-' }} Auto {{ trans.description || '-' }} {{ trans.payment_method || '-' }} {{ trans.type === 'recette' ? '+' : '-' }}{{ trans.amount.toFixed(2) }}€