Fix: prb de date sur les prêts différés
This commit is contained in:
@@ -561,6 +561,12 @@ export default function InvestissementDetail() {
|
||||
const showFinDeMois = (form.type_remb === 'in_fine' || form.type_remb === 'differe')
|
||||
&& dayOfMonth(form.date_premiere_echeance) > 27;
|
||||
|
||||
// Validation date d'échéance pour les prêts différés
|
||||
if (form.type_remb === 'differe' && !form.date_premiere_echeance) {
|
||||
setEditErr("La date d'échéance est requise pour un prêt différé.");
|
||||
return;
|
||||
}
|
||||
|
||||
const payload = {
|
||||
investisseur_id: Number(form.investisseur_id) || undefined,
|
||||
plateforme_id: Number(form.plateforme_id),
|
||||
@@ -1590,12 +1596,14 @@ export default function InvestissementDetail() {
|
||||
freq_interets: t === 'differe' ? 'in_fine' : (form.freq_interets === 'in_fine' ? 'mensuel' : form.freq_interets),
|
||||
};
|
||||
if (t === 'differe') {
|
||||
if (form.date_premiere_echeance) next.date_cible = form.date_premiere_echeance;
|
||||
else if (form.date_souscription && form.duree_mois) {
|
||||
// Recalculer la date d'échéance depuis souscription+durée (prioritaire sur l'ancienne valeur)
|
||||
if (form.date_souscription && form.duree_mois) {
|
||||
const dpe = addMonthsFE(form.date_souscription, 1);
|
||||
const cible = addMonthsFE(dpe, Number(form.duree_mois) - 1);
|
||||
next.date_premiere_echeance = cible;
|
||||
next.date_cible = cible;
|
||||
} else if (form.date_premiere_echeance) {
|
||||
next.date_cible = form.date_premiere_echeance;
|
||||
}
|
||||
} else {
|
||||
if (form.date_souscription) {
|
||||
|
||||
@@ -680,6 +680,12 @@ export default function Investissements() {
|
||||
const showFinDeMois = (form.type_remb === 'in_fine' || form.type_remb === 'differe')
|
||||
&& dayOfMonth(form.date_premiere_echeance) > 27;
|
||||
|
||||
// Validation date d'échéance pour les prêts différés
|
||||
if (form.type_remb === 'differe' && !form.date_premiere_echeance) {
|
||||
setErr("La date d'échéance est requise pour un prêt différé. Vérifiez que la durée et la date de souscription sont renseignées.");
|
||||
return;
|
||||
}
|
||||
|
||||
const payload = {
|
||||
investisseur_id: Number(form.investisseur_id) || undefined,
|
||||
plateforme_id: Number(form.plateforme_id),
|
||||
@@ -1366,13 +1372,14 @@ export default function Investissements() {
|
||||
freq_interets: t === 'differe' ? 'in_fine' : (form.freq_interets === 'in_fine' ? 'mensuel' : form.freq_interets),
|
||||
};
|
||||
if (t === 'differe') {
|
||||
if (form.date_premiere_echeance) {
|
||||
next.date_cible = form.date_premiere_echeance;
|
||||
} else if (form.date_souscription && form.duree_mois) {
|
||||
// Recalculer la date d'échéance depuis souscription+durée (prioritaire sur l'ancienne valeur)
|
||||
if (form.date_souscription && form.duree_mois) {
|
||||
const dpe = addMonthsFE(form.date_souscription, 1);
|
||||
const cible = addMonthsFE(dpe, Number(form.duree_mois) - 1);
|
||||
next.date_premiere_echeance = cible;
|
||||
next.date_cible = cible;
|
||||
} else if (form.date_premiere_echeance) {
|
||||
next.date_cible = form.date_premiere_echeance;
|
||||
}
|
||||
} else {
|
||||
if (form.date_souscription) {
|
||||
@@ -1434,7 +1441,7 @@ export default function Investissements() {
|
||||
}} />
|
||||
</div>
|
||||
<div>
|
||||
<label>Date 1ère échéance *</label>
|
||||
<label>{form.type_remb === 'differe' ? "Date d'échéance (versement unique) *" : 'Date 1ère échéance *'}</label>
|
||||
<input type="date" required value={form.date_premiere_echeance}
|
||||
onChange={e => {
|
||||
const dpe = e.target.value;
|
||||
|
||||
Reference in New Issue
Block a user