-
Notifications
You must be signed in to change notification settings - Fork 0
Les éléments bancaires
Christophe LEMOINE edited this page Jun 30, 2021
·
13 revisions
Kotlib.Objects.Account.cs
Account
représente un élément bancaire. C'est l'objet de base dont hérite les suivants. Il permet aussi à l'utilisateur de créer son propre type d'élément bancaire.
Account(string name, Identity owner)
-
AllowedCredit
decimal : Montant du découvert autorisé. Montant positif. -
Id
Guid : Identifiant unique. -
InitialAmount
decimal : Solde initial à la création de cet élément bancaire. -
Name
string : Dénomination de l'élément bancaire. -
Note
string : Informations complémentaires libres. -
Operations
OperationList : Liste des opérations associées. -
Owner
Identity : Identité du propriétaire. -
PartialAmount
decimal : Retourne le solde total des opérations associées. -
Paytypes
PaytypeList : Liste des moyens de paiements associés.
-
decimal PartialAmountAt(DateTime date, bool addInitialAmount = true)
: Calcule le solde des opérations liées à la date souhaitée, incluant ou non le solde initial.
var me = new Identity(name: "Ma carte d'identité")
{
Address = "1 rue des mimosas, 12345 Borne",
Forname = "Christophe",
Lastname = "Lemoine",
Mail = "pantaflex@tuta.io",
Note = "Born to be code",
Phone = "0102030405",
Url = "https://pantaflex44.me"
};
var account = new Account(name: "Mon élément bancaire",
owner: me)
{
AllowedCredit = 200m,
InitialAmount = 1300m,
Note = "Compte principal",
Owner = me,
Operations = OperationList.Empty,
Paytypes = PaytypeList.Defaults
};
BankAccount
est dérivé de Account
et représente un compte bancaire.
BankAccount(string name, Identity owner)
-
BankName
string : Nom de l'organisme bancaire. -
Bic
string : Code BIC. -
Contact
Identity : Identité du contact ou conseiller financier. -
Iban
string : Numéro IBAN.
var me = new Identity(name: "Ma carte d'identité")
{
Address = "1 rue des mimosas, 12345 Borne",
Forname = "Christophe",
Lastname = "Lemoine",
Mail = "pantaflex@tuta.io",
Note = "Born to be code",
Phone = "0102030405",
Url = "https://pantaflex44.me"
};
var bankaccount = new BankAccount(name: "Mon compte en banque",
owner: me)
{
AllowedCredit = 200m,
InitialAmount = 1300m,
Note = "Compte chèque",
Owner = me,
Operations = OperationList.Empty,
Paytypes = new PaytypeList(new List<Paytype>()
{
new BankCard(name: "Ma carte bancaire")
{
Number = "5135 1800 0000 0001",
CVV = "123",
Date = new CardDate(2025, 12)
},
new Check(name: "Mon chéquier")
}),
BankName = "CIC",
Iban = "FR76 5896 1234 5678 9012 3456 789",
Bic = "CMCIFRPP",
Contact = new Identity(name: "Mon conseiller")
{
Address = "586 route de la soif, 98745 Rennes",
Forname = "Jean",
Lastname = "Martin",
Mail = "j.martin@cic.org",
Phone = "0102030405"
}
};
Paycard
est dérivée de Account
et représente une carte de paiement autonome (PCS, etc.)
Paycard(string name, Identity owner, BankCard card)
-
Card
BankCard : Informations de la carte de paiement.
var me = new Identity(name: "Ma carte d'identité")
{
Address = "1 rue des mimosas, 12345 Borne",
Forname = "Christophe",
Lastname = "Lemoine",
Mail = "pantaflex@tuta.io",
Note = "Born to be code",
Phone = "0102030405",
Url = "https://pantaflex44.me"
};
var paycard = new Paycard(name: "Ma carte de paiement",
owner: me,
card: new BankCard(name: "N26")
{
Number = "5135 1800 0000 0001",
CVV = "123",
Date = new CardDate(2025, 12)
})
{
AllowedCredit = 0m,
InitialAmount = 2500m,
Note = "Compte N26",
Owner = me,
Operations = OperationList.Empty,
Paytypes = PaytypeList.Empty
};
Wallet
est dérivé de Account
et représente un porte monnaie, le fond d'une poche ou les économies sous le matelas de mamie.
Wallet(string name, Identity owner)
-
Electronic
bool : Portefeuille électronique. -
decimal : Non autorisé.AllowedCredit
var me = new Identity(name: "Ma carte d'identité")
{
Address = "1 rue des mimosas, 12345 Borne",
Forname = "Christophe",
Lastname = "Lemoine",
Mail = "pantaflex@tuta.io",
Note = "Born to be code",
Phone = "0102030405",
Url = "https://pantaflex44.me"
};
var wallet = new Wallet(name: "Mon portefeuille d'espèces",
owner: me)
{
InitialAmount = 10m,
Note = "Le fond de ma poche",
Owner = me,
Operations = OperationList.Empty,
Paytypes = PaytypeList.Empty,
Electronic = false
};
Kotlib.Objects.AccountList.cs
AccountList
représente une liste de type base Account
. Elle permet la gestion complète de cette liste, et possède des fonctionnalités qui lui sont propres.
AccountList
est dérivée de ObjectList
.
AccountList(IEnumerable<Account> items)
-
Count
int : Nombre d'éléments dans la liste. -
IsReadOnly
bool : Liste en lecture seule. -
Items
List<Account> : Liste générique représentant la liste des éléments. -
Empty
AccountList : Nouvelle liste vide. -
Transfers
TransferList : Liste des transferts bancaires associés à cet élément.
-
void Add(Account item)
: Ajoute un nouvel élément bancaire. -
void Clear()
: Vide la liste des éléments bancaires. -
bool Contains(T item)
: Retournetrue
si élément bancaire existe, sinon,false
. -
void CopyTo(Account[] array, int arrayIndex)
: Copie une portion d'une liste d'éléments à partir de la positionarrayIndex
. -
IEnumerator<Account> GetEnumerator()
: Retourne un énumérateur. -
IEnumerator IEnumerable.GetEnumerator()
: Retourne un énumérateur. -
int IndexOf(T item)
: Retourne la position d'un élément bancaire dans la liste. -
void Insert(int index, Account item)
: Insère un élément dans la liste à la positionindex
. -
bool Remove(Account item)
: Supprime un élément bancaire. -
int RemoveAll(Predicate<Account> predicate)
: Supprime un ou plusieurs éléments bancaires en fonction des conditionsLinq
représentées parpredicate
. Retourne le nombre d'éléments supprimés. -
void RemoveAt(int index)
: Supprime un élément bancaire à la positionindex
. -
void CleanTransfers()
: Vide la liste des transferts bancaires. -
static List<Tuple<string, string, Type>> GetAvaillableAccounts()
: Retourne une liste des types d'éléments bancaires inclus dans la librairie. Chaque élément de la liste est formé comme suit:Tuple<string nom, string description, Type type>
, oùnom
représente la dénomination de l'élément bancaire,description
, la description de l'élément nommé, ettype
, le type interne de l'élément bancaire. -
Account GetById(Guid id)
: Retourne un l'élément bancaire associé à l'identifiant uniqueid
passé en paramètre.
-
event AccountEventHandler AccountAddedEvent
: Se produit lorsqu'un élément a été ajouté à la liste. -
event AccountEventHandler AccountUpdatedEvent
: Se produit lorsqu'un élément a été modifié. -
event AccountEventHandler AccountRemovedEvent
: Se produit lorsqu'un élément a été supprimé.
Kotlib.Net est sous Licence GNU/GPL v3. Guide rapide | Licence | Copyright (C) 2020-2021 Christophe LEMOINE