org.chorem.callao.service
Class TransactionServiceImpl

java.lang.Object
  extended by org.chorem.callao.service.TransactionServiceImpl

public class TransactionServiceImpl
extends java.lang.Object

Cette classe permet la création d'une transaction comptable dans l'application. Toute action sur une transaction entraîne automatiquement une création de log. Une transaction est composée d'entrées comptables. Les actions sur les transactions sont soumises au statut de celle-ci, si elle est dans une période bloquée ou non.

Author:
Rémi Chapelet

Constructor Summary
TransactionServiceImpl()
           
 
Method Summary
 java.lang.String addEntry(EntryDTO entryDTO)
          Permet d'ajouter une entrée comptable pour une transaction donnée.
 java.lang.String addEntry(java.lang.String description, java.lang.String amount, boolean debit, java.lang.String lettering, java.lang.String detail, Transaction transaction, Account account)
          Permet d'ajouter une entrée comptable pour une transaction donnée.
 java.lang.String createTransaction(java.util.Date entryDate, java.lang.String voucherRef, java.lang.String description, TimeSpan timeSpan, Journal journal)
          Permet de créer une transaction comptable.
 java.lang.String createTransaction(TransactionDTO transactionDTO)
          Permet de créer une transaction à partir d'une transaction DTO.
 java.util.List<TransactionDTO> getAllTransactionDTO()
          Permet de rechercher toutes les transactions dans la base de données, avec en retour une liste de transactions au format DTO.
 java.lang.String isCorrectTransaction(TimeSpan timeSpan, Journal journal)
          Cette méthode permet de vérifier si une transaction possède des paramètres corrects.
 boolean isTransactionBalanced(Transaction transaction)
          Permet de vérifier si une transaction est équilibrée.
 boolean isTransactionBlocked(Transaction transaction)
          Permet de vérifier si une transaction est dans une période bloquée ou non
 java.lang.String modifyEntry(EntryDTO entryDTO)
          Permet de modifier une entrée.
 java.lang.String modifyEntry(java.lang.String topiaId, java.lang.String description, java.lang.String amount, boolean debit, java.lang.String lettering, java.lang.String detail, Transaction transaction, Account account)
          Permet de modifier une entrée comptable.
 java.lang.String modifyTransaction(java.lang.String topiaId, java.util.Date entryDate, java.lang.String voucherRef, java.lang.String description, TimeSpan timeSpan, Journal journal)
          Permet de modifier une transaction.
 java.lang.String modifyTransaction(TransactionDTO transactionDTO)
          Permet de modifier une transaction à partir d'une transaction DTO.
 java.lang.String removeEntry(EntryDTO entryDTO)
          Permet de supprimer une entrée à partir d'un DTO.
 java.lang.String removeEntry(java.lang.String topiaId)
          Permet d'effacer une entrée comptable.
 java.lang.String removeTransaction(java.lang.String topiaId)
          Permet d'effacer une transaction dans la base de données.
 java.lang.String removeTransaction(TransactionDTO transactionDTO)
          Supprime une transaction au format DTO.
 java.util.List<TransactionDTO> searchListTransactionDTOWithTimeSpan(TimeSpan timeSpan)
          Recherche les transactions DTO d'un timeSpan
 java.util.List<Transaction> searchListTransactionWithJournal(Journal journal)
          Recherche toutes les transactions appartenant à un même journal donné en paramètre.
 java.util.List<Transaction> searchListTransactionWithTimeSpan(TimeSpan timeSpan)
          Recherche toutes les transactions qui correspondent à un timespan.
 TransactionDTO searchTransactionDTO(java.lang.String topiaId)
          Recherche une transaction dans la base de données, et renvoie celle-ci sous format DTO.
 Transaction searchTransactionWithTopiaId(java.lang.String topiaId)
          Recherche une transaction unique avec son identifiant TopiaId.
 Transaction searchTransactionWithTopiaId(TransactionDTO transactionDTO)
          Recherche une transaction unique à partir d'une transaction DTO.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TransactionServiceImpl

public TransactionServiceImpl()
Method Detail

createTransaction

public java.lang.String createTransaction(java.util.Date entryDate,
                                          java.lang.String voucherRef,
                                          java.lang.String description,
                                          TimeSpan timeSpan,
                                          Journal journal)
Permet de créer une transaction comptable. Pour ajouter une transaction, le timeSpan doit être non bloqué.

Parameters:
entryDate -
voucherRef -
description -
timespan -
journal -
Returns:

createTransaction

public java.lang.String createTransaction(TransactionDTO transactionDTO)
Permet de créer une transaction à partir d'une transaction DTO. ATTENTION : si le journal ou timespan n'existe pas, l'ajout ne peut se faire. Si on souhaite, on peut créer le journal automatiquement lors de l'ajout de la transaction si il n'existe pas. Pour le timeSpan, il n'est pas cohérent qu'il n'existe pas. On ne peut travailler que sur une période comptable existante, et par conséquent il ne faut pas le créer.

Parameters:
transactionDTO -
Returns:

modifyTransaction

public java.lang.String modifyTransaction(java.lang.String topiaId,
                                          java.util.Date entryDate,
                                          java.lang.String voucherRef,
                                          java.lang.String description,
                                          TimeSpan timeSpan,
                                          Journal journal)
Permet de modifier une transaction. Cette dernière est identifiée par la clé topiaId.

Parameters:
topiaId -
entryDate -
voucherRef -
description -
timespan -
journal -
Returns:

modifyTransaction

public java.lang.String modifyTransaction(TransactionDTO transactionDTO)
Permet de modifier une transaction à partir d'une transaction DTO. Elle va rechercher le journal et le timespan correspondants.

Parameters:
transactionDTO -
Returns:

searchTransactionWithTopiaId

public Transaction searchTransactionWithTopiaId(java.lang.String topiaId)
Recherche une transaction unique avec son identifiant TopiaId.

Parameters:
topiaId -
Returns:

searchTransactionWithTopiaId

public Transaction searchTransactionWithTopiaId(TransactionDTO transactionDTO)
Recherche une transaction unique à partir d'une transaction DTO.

Parameters:
transactionDTO -
Returns:

searchTransactionDTO

public TransactionDTO searchTransactionDTO(java.lang.String topiaId)
Recherche une transaction dans la base de données, et renvoie celle-ci sous format DTO. Nous ne pouvons pas appeler la méthode searchTransactionWithTopiaId du fait que lors de la convertion, nous avons besoin du journal et du timeSpan. Or il ne faut donc pas de fermeture de connexion à la base de données pour celà.

Parameters:
topiaId -
Returns:

searchListTransactionWithTimeSpan

public java.util.List<Transaction> searchListTransactionWithTimeSpan(TimeSpan timeSpan)
Recherche toutes les transactions qui correspondent à un timespan.

Parameters:
timeSpan -
Returns:

searchListTransactionDTOWithTimeSpan

public java.util.List<TransactionDTO> searchListTransactionDTOWithTimeSpan(TimeSpan timeSpan)
Recherche les transactions DTO d'un timeSpan

Parameters:
timeSpan -
Returns:

searchListTransactionWithJournal

public java.util.List<Transaction> searchListTransactionWithJournal(Journal journal)
Recherche toutes les transactions appartenant à un même journal donné en paramètre.

Parameters:
journal -
Returns:

getAllTransactionDTO

public java.util.List<TransactionDTO> getAllTransactionDTO()
Permet de rechercher toutes les transactions dans la base de données, avec en retour une liste de transactions au format DTO.

Returns:

isCorrectTransaction

public java.lang.String isCorrectTransaction(TimeSpan timeSpan,
                                             Journal journal)
Cette méthode permet de vérifier si une transaction possède des paramètres corrects. Un journal doit exister. Un timeSpan doit exister et être non bloqué.

Parameters:
timeSpan -
journal -
Returns:

removeTransaction

public java.lang.String removeTransaction(java.lang.String topiaId)
Permet d'effacer une transaction dans la base de données. ATTENTION : Elle supprime également toutes les entées comptables associées. Une transaction appartenant à un timeSpan bloqué ne peut être supprimée.

Returns:

removeTransaction

public java.lang.String removeTransaction(TransactionDTO transactionDTO)
Supprime une transaction au format DTO.

Parameters:
transactionDTO -
Returns:

addEntry

public java.lang.String addEntry(java.lang.String description,
                                 java.lang.String amount,
                                 boolean debit,
                                 java.lang.String lettering,
                                 java.lang.String detail,
                                 Transaction transaction,
                                 Account account)
Permet d'ajouter une entrée comptable pour une transaction donnée. ATTENTION : la transaction doit être NON bloquée.

Parameters:
description -
amount -
debit -
lettering -
detail -
transaction -
Returns:

addEntry

public java.lang.String addEntry(EntryDTO entryDTO)
Permet d'ajouter une entrée comptable pour une transaction donnée. L'entrée est sous format DTO.

Parameters:
entryDTO -
Returns:

modifyEntry

public java.lang.String modifyEntry(java.lang.String topiaId,
                                    java.lang.String description,
                                    java.lang.String amount,
                                    boolean debit,
                                    java.lang.String lettering,
                                    java.lang.String detail,
                                    Transaction transaction,
                                    Account account)
Permet de modifier une entrée comptable. ATTENTION : la transaction doit être NON bloquée.

Parameters:
topiaId -
description -
amount -
debit -
lettering -
detail -
transaction -
account -
Returns:

modifyEntry

public java.lang.String modifyEntry(EntryDTO entryDTO)
Permet de modifier une entrée.

Parameters:
entryDTO -
Returns:

removeEntry

public java.lang.String removeEntry(java.lang.String topiaId)
Permet d'effacer une entrée comptable. Elle est identifiée par son identifiant topiaID. Une entrée peut être supprimée seulement si elle est non bloquée.

Parameters:
topiaId -
Returns:

removeEntry

public java.lang.String removeEntry(EntryDTO entryDTO)
Permet de supprimer une entrée à partir d'un DTO.

Parameters:
entryDTO -
Returns:

isTransactionBlocked

public boolean isTransactionBlocked(Transaction transaction)
Permet de vérifier si une transaction est dans une période bloquée ou non

Parameters:
transaction -
Returns:

isTransactionBalanced

public boolean isTransactionBalanced(Transaction transaction)
Permet de vérifier si une transaction est équilibrée.

Parameters:
transaction -
Returns:


Copyright © 2008-2010 CodeLutin. All Rights Reserved.