Skip to content

Opérations Administration

Vincent Zwingmann edited this page Mar 9, 2026 · 3 revisions

Ajouter un nouveau compte

Pour ajouter un nouveau compte, injecter un document dans la collection v12-app.comptesbancaires

Le document doit avoir la forme suivante :

{
	"_id": "<<id_du_compte>>",
	"libelle": "Nom du compte",
	"proprietaire": {
		"_id": {
			"$oid": "5484268384b7ff1e5f26b692"
		},
		"login": "vzwingma",
		"libelle": "Vincent"
	},
	"itemIcon": "img/<<nom de la banque>>.png",
	"ordre": {
		"$numberInt": "<<ordre d'affichage>>"
	},
	"actif": true
}

Initier un nouveau budget

Pour initier un nouveau budget pour un nouveau compte, injecter un document dans la collection v12-app.budgets dans la bdd.

Le document doit avoir la forme suivante :

{
	"_id": "<<id_du_budget>>",
	"actif": true,
	"idCompteBancaire": "<<id_du_compte>>",
	"mois": "NOVEMBER",
	"annee": {
		"$numberInt": "2022"
	},
	"listeOperations": [],
	"dateMiseAJour": {
		"$date": {
			"$numberLong": "1665304684286"
		}
	},
	"soldes": {
		"soldeAtFinMoisCourant": {
			"$numberDouble": "0"
		},
		"soldeAtFinMoisPrecedent": {
			"$numberDouble": "0"
		},
		"soldeAtMaintenant": {
			"$numberDouble": "0"
		}
	},
	"totauxParCategories": {},
	"totauxParSSCategories": {}
}

  • id_du_compte : est l'identifiant du compte, créé précédemment
  • id_du_budget : est la concaténation de : "id_du_compte_annee_n° du mois"

Modifier les libellés des opérations

  • Tout d'abord, lister tous les libellés des opérations, depuis la base de données MongoDB, via la pipeline MongoDB
  • Constituer la liste des libellés à changer et leur nouvelle valeur. (s'aider de ChatGPT pour formaliser cela
  • Constituer un document JSON présentant cette liste à modifier, sous la forme {avant/apres} suivante :
[
    { "avant": "*** Alignement ***", "apres": "Alignement" },
    { "avant": "13 eme mois", "apres": "13ème mois" },
    { "avant": "Alignement  ", "apres": "Alignement" },
]
  • Utiliser l'API d'administration pour founir la liste des opérations à modifier pour le compte

API Classe AdminBudgetResource

La classe AdminBudgetResource est un contrôleur REST d'administration qui expose des opérations de maintenance sur les budgets. Elle agit comme un adaptateur pour le port IBudgetAdminAppProvider.

Chemin de base : /budgets/v2/admin

Points d'entrée

consolidateLibellesOperations

  • Description : Met à jour en masse les libellés des opérations d'un compte (remplacement avant/après).
  • Méthode HTTP : POST
  • Chemin : /budgets/v2/admin/compte/{idCompte}/operations/libelles/override
  • Rôles autorisés : USER_OPERATIONS
  • Corps de la requête : Liste de LibelleAvantApres (JSON) – chaque entrée contient avant et apres
  • Réponses :
    • 200 : Opération réussie – retourne le flux des libellés mis à jour (Multi<String>)
    • 401 : Utilisateur non authentifié
    • 403 : Opération non autorisée
    • 404 : Données introuvables
    • 500 : Opération en échec
  • Comportement : Si la liste fournie est nulle ou vide, retourne un flux vide sans erreur.

Injections

  • IBudgetAdminAppProvider budgetAdminService : Fournisseur de services d'administration des budgets.

Exemple d'utilisation

Fournir le JSON LibelleAvantApres dans le corps de la requête :

[
    { "avant": "*** Alignement ***", "apres": "Alignement" },
    { "avant": "13 eme mois",         "apres": "13ème mois" }
]

Voir aussi la pipeline MongoDB pour récupérer la liste des libellés existants avant de construire ce payload.

Clone this wiki locally