fix(commercial) : reset erreurs RIB en tete et ne sauter que les amorces neuves vides (ERP-110)
This commit is contained in:
@@ -766,7 +766,10 @@ async function submitContacts(): Promise<void> {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
error => showError(error),
|
error => showError(error),
|
||||||
contact => isContactBlank(contact),
|
// On ne saute QUE les amorces neuves (id null) totalement vides. Un
|
||||||
|
// bloc existant vide est soumis -> 422 RG-1.05 inline (sinon la modif
|
||||||
|
// serait perdue en silence avec un faux toast de succes).
|
||||||
|
contact => contact.id === null && isContactBlank(contact),
|
||||||
)
|
)
|
||||||
// Tant qu'un bloc reste en erreur : pas de toast succes.
|
// Tant qu'un bloc reste en erreur : pas de toast succes.
|
||||||
if (hasError) return
|
if (hasError) return
|
||||||
@@ -905,6 +908,10 @@ async function submitAccounting(): Promise<void> {
|
|||||||
if (accountingReadonly.value || !canValidateAccounting.value || tabSubmitting.value) return
|
if (accountingReadonly.value || !canValidateAccounting.value || tabSubmitting.value) return
|
||||||
tabSubmitting.value = true
|
tabSubmitting.value = true
|
||||||
accountingErrors.clearErrors()
|
accountingErrors.clearErrors()
|
||||||
|
// Reset des erreurs RIB des le debut : l'etape 1 (PATCH scalaires) peut
|
||||||
|
// echouer et `return` avant submitRows (qui porte sinon le reset), laissant
|
||||||
|
// des erreurs de RIB obsoletes affichees sous les blocs.
|
||||||
|
ribErrors.value = []
|
||||||
try {
|
try {
|
||||||
// 1) PATCH des scalaires comptables (erreurs inline sur leurs champs).
|
// 1) PATCH des scalaires comptables (erreurs inline sur leurs champs).
|
||||||
try {
|
try {
|
||||||
@@ -941,7 +948,10 @@ async function submitAccounting(): Promise<void> {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
error => showError(error),
|
error => showError(error),
|
||||||
rib => isRibBlank(rib),
|
// On ne saute QUE les amorces neuves (id null) totalement vides. Un
|
||||||
|
// RIB existant vide est soumis -> 422 NotBlank inline (sinon la modif
|
||||||
|
// serait perdue en silence avec un faux toast de succes).
|
||||||
|
rib => rib.id === null && isRibBlank(rib),
|
||||||
)
|
)
|
||||||
if (ribHasError) return
|
if (ribHasError) return
|
||||||
toast.success({ title: t('commercial.clients.toast.updateSuccess') })
|
toast.success({ title: t('commercial.clients.toast.updateSuccess') })
|
||||||
|
|||||||
@@ -708,7 +708,10 @@ async function submitContacts(): Promise<void> {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
error => toast.error({ title: t('commercial.clients.toast.error'), message: apiErrorMessage(error) }),
|
error => toast.error({ title: t('commercial.clients.toast.error'), message: apiErrorMessage(error) }),
|
||||||
contact => isContactBlank(contact),
|
// On ne saute QUE les amorces neuves (id null) totalement vides. Un
|
||||||
|
// bloc existant vide est soumis -> 422 RG-1.05 inline (sinon la modif
|
||||||
|
// serait perdue en silence avec un faux toast de succes).
|
||||||
|
contact => contact.id === null && isContactBlank(contact),
|
||||||
)
|
)
|
||||||
// Tant qu'un bloc reste en erreur : pas de validation d'onglet ni de toast succes.
|
// Tant qu'un bloc reste en erreur : pas de validation d'onglet ni de toast succes.
|
||||||
if (hasError) return
|
if (hasError) return
|
||||||
@@ -886,6 +889,10 @@ async function submitAccounting(): Promise<void> {
|
|||||||
if (clientId.value === null || !canValidateAccounting.value || tabSubmitting.value) return
|
if (clientId.value === null || !canValidateAccounting.value || tabSubmitting.value) return
|
||||||
tabSubmitting.value = true
|
tabSubmitting.value = true
|
||||||
accountingErrors.clearErrors()
|
accountingErrors.clearErrors()
|
||||||
|
// Reset des erreurs RIB des le debut : l'etape 1 (PATCH scalaires) peut
|
||||||
|
// echouer et `return` avant submitRows (qui porte sinon le reset), laissant
|
||||||
|
// des erreurs de RIB obsoletes affichees sous les blocs.
|
||||||
|
ribErrors.value = []
|
||||||
try {
|
try {
|
||||||
// 1) PATCH des scalaires comptables (erreurs inline sur leurs champs).
|
// 1) PATCH des scalaires comptables (erreurs inline sur leurs champs).
|
||||||
try {
|
try {
|
||||||
@@ -925,7 +932,10 @@ async function submitAccounting(): Promise<void> {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
error => toast.error({ title: t('commercial.clients.toast.error'), message: apiErrorMessage(error) }),
|
error => toast.error({ title: t('commercial.clients.toast.error'), message: apiErrorMessage(error) }),
|
||||||
rib => isRibBlank(rib),
|
// On ne saute QUE les amorces neuves (id null) totalement vides. Un
|
||||||
|
// RIB existant vide est soumis -> 422 NotBlank inline (sinon la modif
|
||||||
|
// serait perdue en silence avec un faux toast de succes).
|
||||||
|
rib => rib.id === null && isRibBlank(rib),
|
||||||
)
|
)
|
||||||
if (ribHasError) return
|
if (ribHasError) return
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user