Projet

Général

Profil

Actions

Anomalie #1016

fermé

Cotisation par durée

Ajouté par Michel LO il y a environ 7 ans. Mis à jour il y a 4 mois.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
22/02/2017
Echéance:
% réalisé:

100%

Temps estimé:
Version utilisée:

Description

Dans une cotisation par durée, l'ajout de la durée entraîne un jour de trop car la date finale calculée est celle ddu début de préiode de cotisation suivante au lieu d'être la fin de cotisation.

Si la date de début de cotisation est le 22 février 2017, la date calculée de fin de cotisation de 12 mois doit être le 21 février et non pas le 22 février 2018

dans _retrieveEndDate, il faut calculer non pas en ajoutant la durée mais en ajoutant la durée - 1 jour

suggestion :

remplacer
//case membership extension
$dext = new \DateInterval('P' . $this->_extension . 'M’);
$edate = $bdate->add($dext);
$this->_end_date = $edate->format('Y-m-d');

par

//case membership extension
$dext = new \DateInterval('P' . $this->_extension . 'M');
$moinsunjour = new \DateInterval("P1D");
$moinsunjour->invert=1;
$edate = $bdate->add($dext);
$edate = $bdate->add($moinsunjour);
$this->_end_date = $edate->format('Y-m-d');


Demandes liées 1 (0 ouverte1 fermée)

Lié à Galette - Anomalie #1762: Contribution start date overloadFerméJohan Cwiklinski22/12/2023

Actions

Mis à jour par Jean Joseph il y a environ 6 ans

Bonjour,
je rencontre la même difficulté.
Bien à vous.

Mis à jour par Guillaume AGNIERAY il y a plus de 2 ans

  • Statut changé de Nouveau à Commentaire

J'ai cet inconvénient aussi dans le cas de cotisations par date de début d'exercice.
Sur la liste des adhérents, la date d'échéance affichée est aussi celle du premier jour de l'exercice suivant.

Voici une tentative pour corriger ça dans les 2 cas de figure : https://framagit.org/galette/galette/-/merge_requests/12

J'apporte au passage un changement sur l'édition des cotisations par durée.
Actuellement, la durée est toujours ajoutée à la date de début de cotisation pour recalculer la date d'échéance.

J'aimerai de mon côté pouvoir étendre la période en renseignant simplement le nombre de mois supplémentaires souhaités.
Par exemple renseigner 4 mois dans le champ et pas 16.

À ce stade, si j'ai bien ajusté les tests unitaires, tout semble fonctionner correctement.

Si je n'oublie rien, il reste encore :
  • à régler le cas de la modification d'une contribution où seules les autres infos que la durée sont changées (le montant uniquement par exemple)
  • à préparer l'update pour les données existantes : il faudra soustraire 1 jour de toutes les dates des cotisations déjà enregistrées.

P.S. Pour moi la version utilisée est la 9.6.1. Dois-je changer la version utilisée dans les propriétés de la demande ?

Mis à jour par Guillaume AGNIERAY il y a environ 2 ans

Guillaume Agnieray a écrit (#note-2):

Voici une tentative pour corriger ça dans les 2 cas de figure : https://framagit.org/galette/galette/-/merge_requests/12

J'ai revu ma copie en traitant aussi au passage #1590 : https://framagit.org/galette/galette/-/merge_requests/17

J'apporte au passage un changement sur l'édition des cotisations par durée.
Actuellement, la durée est toujours ajoutée à la date de début de cotisation pour recalculer la date d'échéance.

J'aimerai de mon côté pouvoir étendre la période en renseignant simplement le nombre de mois supplémentaires souhaités.
Par exemple renseigner 4 mois dans le champ et pas 16.

J'ai abandonné cette idée. Ça n'a en réalité pas grand intérêt :p

Mis à jour par Guillaume AGNIERAY il y a presque 2 ans

  • Statut changé de Commentaire à Résolu
  • % réalisé changé de 0 à 100

Mis à jour par Guillaume AGNIERAY il y a 4 mois

Cette demande est résolue depuis plus d'un an. Je pense qu'elle peut être fermée.

Mis à jour par Johan Cwiklinski il y a 4 mois

  • Statut changé de Résolu à Fermé

Mis à jour par Guillaume AGNIERAY il y a 4 mois

Actions

Formats disponibles : Atom PDF