-
{{ cs.would_create }}
Comptes à créer
+
{{ cs.would_create }}
Comptes à créer Crée dans ERPNext tous les comptes F qui n'ont pas encore de fiche client — pas seulement ceux facturés récemment. Politique F autoritaire : le nom n'est jamais écrasé, le statut est dérivé des services (jamais imposé), et l'opération est idempotente (relançable sans doublon).
Créer dans ERPNext tous les comptes F qui n'existent pas encore (F→OPS), pas seulement ceux facturés récemment.
{{ cs.safe_add }}
À enrichir (sûr)
{{ cs.needs_review }}
À réviser (actionnable)
{{ cs.unchanged }}
Inchangés
@@ -230,6 +230,7 @@
import { ref, computed, onMounted, onBeforeUnmount } from 'vue'
import { useQuasar } from 'quasar'
import { HUB_URL } from 'src/config/hub'
+import HelpHint from 'src/components/shared/HelpHint.vue'
const $q = useQuasar()
@@ -346,6 +347,10 @@ async function showDetail (field) {
reviewDetail.value = { field, items: d.sample || [], total: d.would_apply || 0 }
} catch (e) { $q.notify({ type: 'negative', message: e.message }) }
}
+// Créer TOUS les comptes F manquants (F→OPS complet) — passe par le run ASYNC de l'orchestrateur (scope 'customers') → progression + polling, pas de requête bloquante.
+function confirmCreateAll () {
+ $q.dialog({ title: 'Créer tous les comptes manquants', message: `Créer dans ERPNext les
${cs.value.would_create} compte(s) F sans Customer (incl. résiliés) ?
Politique : créé visible, statut dérivé des services. Idempotent — relançable sans doublon.`, html: true, cancel: true, ok: { label: 'Créer tout', color: 'info' } }).onOk(() => startSync('customers'))
+}
function confirmApplyAll () {
const bf = rep.value.customers.review_by_field || {}
const detail = Object.entries(bf).filter(([f]) => f !== 'customer_name').map(([f, n]) => `${f}: ${n}`).join(' · ')
diff --git a/apps/ops/src/pages/ReportARPage.vue b/apps/ops/src/pages/ReportARPage.vue
index e85f578..d8480aa 100644
--- a/apps/ops/src/pages/ReportARPage.vue
+++ b/apps/ops/src/pages/ReportARPage.vue
@@ -13,6 +13,9 @@
+
+ {{ props.value }}{{ props.value }}
+
{{ formatMoney(props.value) }}
diff --git a/apps/ops/src/pages/ReportVentesPage.vue b/apps/ops/src/pages/ReportVentesPage.vue
index e37f0e1..e8f6810 100644
--- a/apps/ops/src/pages/ReportVentesPage.vue
+++ b/apps/ops/src/pages/ReportVentesPage.vue
@@ -13,23 +13,38 @@
- {{ props.value }}
+ {{ props.value }}
{{ formatMoney(props.value) }}
+
+ {{ props.value }}{{ props.value }}
+
+
+
openModal(dt, name, t)" />