Bonjour,
mes besoins ont changé, notamment car mes entrées et sorties d’argent chaque mois ne sont plus aussi immobiles qu’avant, et par conséquent j’aimerais pouvoir avoir chaque mois un budget potentiellement différent.
Actuellement il y a un budget, quel que soit le mois. J’aimerais maintenant pouvoir définir “Transport” à 100€ en juin mais à 110€ en juillet, sans que ça change la valeur pour juin.
L’UI ne changerait pas en revanche.
Le budget est actuellement stocké dans la catégorie directement : https://framagit.org/bnjbvr/kresus/blob/master/server/models/category.js#L15.
Tel que je le vois désormais, il faudrait un nouveau modèle
let Budget = cozydb.getModel('bankcategory', {
// Internal category id.
categoryId: String,
// Month for which the budget is defined
month: Number,
// Year for which the budget is defined
year: Number,
// Threshold
value: {
type: Number,
default: 0
}
});
À l’utilisation, si l’UI ne change pas, l’UX s’adapte: lorsqu’aucun budget n’est défini (si, pour toutes les catégories, aucun budget n’est défini) pour le mois et l’année sélectionnée, on tente de récupérer les budgets du dernier mois/année qui a un budget défini (pour éviter à l’utilisateur de le saisir de nouveau).
Lors de la suppression d’une catégorie il faudrait donc s’assurer de la suppression des budgets associés au categoryId.
Pour la migration à partir du modèle actuel, 2 possibilités :
- On prend le budget actuel et on le colle dans le modèle avec le mois et l’année en cours
- On prend le budget actuel et pour chaque mois/année possible (selon les opérations existantes) on crée une entrée.
Qu’est-ce que vous en pensez ? Je sais que certains ont d’autres besoins bien précis mais j’aimerais rester simple et avancer par étapes) ?