com.siebel.rf.offline.request.handler.businessdayprocessing
Class BusinessDayProcessingHandler

java.lang.Object
  |
  +--com.siebel.rf.offline.branch.server.Handler
        |
        +--com.siebel.rf.offline.request.handler.businessdayprocessing.BusinessDayProcessingHandler
All Implemented Interfaces:
RequestHandler

public class BusinessDayProcessingHandler
extends Handler

The handler class for BusinessDayProcessing


Constructor Summary
BusinessDayProcessingHandler()
           
 
Method Summary
 Teller completeBranchEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode, java.lang.String userId, java.lang.String workstationNo)
          Completes the Branch End of Business day process
 java.util.Vector handleRequest()
          Handles the clients request in Online/Offline mode for the Branch
 Teller imBranchGoToNextDay(java.lang.String companyCode, java.lang.String branchCode, java.lang.String userId, java.lang.String workstationNo)
          Used when a Branch is operating in AM/PM mode.
 java.util.Vector imCalculateBranchCurrencyTotals(java.util.Vector currencyBoxDenominationSnapshots, java.util.Vector branchCurrencyTotalsVector, java.util.Vector currencyBoxObjects)
          Calculates the branchCurrencyTotals for the Branch End of Business Day operation
 java.util.Vector imCalculateCurrencyTotalsForBranchEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode)
          Calculates the Branch Currency Totals for each currency as the total of the currency values found in the CurrencyBoxDenominationSnapshots plus any residual balances for each currency that are in the Branch CurrencyTotals minus all currency amounts that have been sent to Branch Currency Totals as a result of a teller completing a final sign off and doing a teller end of day before the Branch End of Business Day operation has been completed.
 void imCompleteBranchEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode, java.lang.String userId)
          Completes the Branch End of Business Day operation.
 void imCreateBranchCurrencyTotalsSnapshot(java.lang.String companyCode, java.lang.String branchCode, java.lang.String snapShotType, java.util.Vector runningTotal, java.util.Vector notesTotal, java.util.Vector coinTotal, java.util.Vector currency)
          Creates the BranchCurrencyTotalsSnapshot for the Branch End of Business Day.
 java.util.Vector imGetAllFinalSignOffCurrencyBoxDetailsAtEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode, java.lang.String processingDate)
          Returns all currencyBoxes for Teller who have completed a final sign off, teller end of business day and teller end of day, at the time the Branch End of Business Day operaion is being completed.
 java.util.Iterator imGetBranchCurrencyTotalsForBranchEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode)
          Retrieves the Branch Currency Totals so they may be used as part of the calculation for the Branch End of Business Day currency totals calculation
 java.util.Vector imGetCurrencyBoxDenominationSnapShotsForBranchBySnapShotTypeAndDate(java.lang.String companyCode, java.lang.String branchCode, java.lang.String snapShotType, java.lang.String date)
          Retrieves all CurrencyBoxDenominationSnapshots for the Branch which match the search criteria.
 java.lang.String imGetCurrentProcessingDateForBranch(java.lang.String companyCode, java.lang.String branchCode)
          Returns the current processing date for the Branch
 java.lang.Boolean imIsTellerEndOfBusinessDayRequired(java.lang.String companyCode, java.lang.String userId)
          Checks if a Teller End Of Business Day operation is required to be carried out by the user.
 void imSetNextDayProcessingDateForBranch(java.lang.String companyCode, java.lang.String branchCode)
          Used when a Branch is operating in AM/PM mode and will update the processingDate on the Branch for the next business day that has been obtained from the System Calendar.
 void imSetTellerEndOfBusinessDayRequired(java.lang.String companyCode, java.lang.String userId)
          Sets the tellerEndOfBusinessDayRequired flag on the User
 void imTellerEndOfBusinessDayForNonPrimaryHolder(java.lang.String companyCode, java.lang.String userId, java.lang.String branchCode, java.lang.String tellerEndOfBusinessDayRequired, java.lang.String tellerEndOfDayRequired)
          Conducted by a Teller when they are working in AM/PM mode and they are the non primary holder of the cashbox.
 void imTellerEndOfBusinessDayForPrimaryHolder(java.lang.String companyCode, java.lang.String userId, java.lang.String branchCode, java.lang.String tellerEndOfBusinessDayRequired, java.lang.String tellerEndOfDayRequired)
          Conducted by a Teller when they are working in AM/PM mode and are the primary holder of the cashbox.
 Teller imTellerGoToNextDay(java.lang.String companyCode, java.lang.String userId, java.lang.String branchCode, java.lang.String workstationNo)
          Undertaken by the Teller when they are working in AM/PM mode and wish to proceed to work in PM mode
 java.lang.Boolean imVerifyBranchEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode)
          Checks to see that all Tellers in the Branch have completed their Teller End of Business Day operation
 java.util.Vector initiateBranchEndOfBusinessDay(java.lang.String companyCode, java.lang.String branchCode, java.lang.String userId)
          Undertaken by a Branch operating in AM/PM mode.
 Teller tellerEndOfBusinessDay(java.lang.Boolean isPrimaryHolder, java.lang.String companyCode, java.lang.String userId, java.lang.String branchCode, java.lang.String tellerEndOfBusinessDayRequired, java.lang.String tellerEndOfDayRequired, java.lang.String workstationNo)
          Conducted by a Teller when they are working in AM/PM mode It is undertaken at the end of the AM period prior to the teller go to next day operation.
 
Methods inherited from class com.siebel.rf.offline.branch.server.Handler
fireOfflineEvent, getOriginalRequest, getRequest, getResponse, handleRequest, isAValidResponse, isBranchOnline
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BusinessDayProcessingHandler

public BusinessDayProcessingHandler()
Method Detail

handleRequest

public java.util.Vector handleRequest()
                               throws com.bankframe.ejb.ProcessingErrorException,
                                      com.bankframe.validation.ValidationException
Handles the clients request in Online/Offline mode for the Branch
Overrides:
handleRequest in class Handler
Returns:
response Vector
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown when processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

initiateBranchEndOfBusinessDay

public java.util.Vector initiateBranchEndOfBusinessDay(java.lang.String companyCode,
                                                       java.lang.String branchCode,
                                                       java.lang.String userId)
                                                throws com.bankframe.ejb.ProcessingErrorException,
                                                       com.bankframe.validation.ValidationException
Undertaken by a Branch operating in AM/PM mode. Its purpose is to record the Branch End of Day Currency totals at the end of the AM period. This operation can not be undertaken by the user until all Tellers have completed their Teller End of Business Day operation. It is completed prior to the Branch moving to the next business day.
Parameters:
companyCode - String
branchCode - String
userId - String
Returns:
Vector
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imVerifyBranchEndOfBusinessDay

public java.lang.Boolean imVerifyBranchEndOfBusinessDay(java.lang.String companyCode,
                                                        java.lang.String branchCode)
                                                 throws com.bankframe.ejb.ProcessingErrorException,
                                                        com.bankframe.validation.ValidationException
Checks to see that all Tellers in the Branch have completed their Teller End of Business Day operation
Parameters:
companyCode - String
branchCode - String
Returns:
true if all Tellers in the Branch have completed their Teller End of Business day operation and false otherwise.
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imCalculateCurrencyTotalsForBranchEndOfBusinessDay

public java.util.Vector imCalculateCurrencyTotalsForBranchEndOfBusinessDay(java.lang.String companyCode,
                                                                           java.lang.String branchCode)
                                                                    throws com.bankframe.ejb.ProcessingErrorException,
                                                                           com.bankframe.validation.ValidationException
Calculates the Branch Currency Totals for each currency as the total of the currency values found in the CurrencyBoxDenominationSnapshots plus any residual balances for each currency that are in the Branch CurrencyTotals minus all currency amounts that have been sent to Branch Currency Totals as a result of a teller completing a final sign off and doing a teller end of day before the Branch End of Business Day operation has been completed.
Parameters:
companyCode - String
branchCode - String
Returns:
Vector of Branch Currency Totals for each currency
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imGetCurrentProcessingDateForBranch

public java.lang.String imGetCurrentProcessingDateForBranch(java.lang.String companyCode,
                                                            java.lang.String branchCode)
                                                     throws com.bankframe.ejb.ProcessingErrorException,
                                                            com.bankframe.validation.ValidationException
Returns the current processing date for the Branch
Parameters:
companyCode - String
branchCode - String
Returns:
the value of processingDate
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imGetBranchCurrencyTotalsForBranchEndOfBusinessDay

public java.util.Iterator imGetBranchCurrencyTotalsForBranchEndOfBusinessDay(java.lang.String companyCode,
                                                                             java.lang.String branchCode)
                                                                      throws com.bankframe.ejb.ProcessingErrorException,
                                                                             com.bankframe.validation.ValidationException
Retrieves the Branch Currency Totals so they may be used as part of the calculation for the Branch End of Business Day currency totals calculation
Parameters:
companyCode - String
branchCode - String
Returns:
Iterator of Branch Currency Totals
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imGetCurrencyBoxDenominationSnapShotsForBranchBySnapShotTypeAndDate

public java.util.Vector imGetCurrencyBoxDenominationSnapShotsForBranchBySnapShotTypeAndDate(java.lang.String companyCode,
                                                                                            java.lang.String branchCode,
                                                                                            java.lang.String snapShotType,
                                                                                            java.lang.String date)
                                                                                     throws com.bankframe.ejb.ProcessingErrorException,
                                                                                            com.bankframe.validation.ValidationException
Retrieves all CurrencyBoxDenominationSnapshots for the Branch which match the search criteria.
Parameters:
companyCode - String
branchCode - String
snapShotType - String
date - String
Returns:
Vector of CurrencyBoxDenominationSnapshots for the Branch
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imGetAllFinalSignOffCurrencyBoxDetailsAtEndOfBusinessDay

public java.util.Vector imGetAllFinalSignOffCurrencyBoxDetailsAtEndOfBusinessDay(java.lang.String companyCode,
                                                                                 java.lang.String branchCode,
                                                                                 java.lang.String processingDate)
                                                                          throws com.bankframe.ejb.ProcessingErrorException,
                                                                                 com.bankframe.validation.ValidationException
Returns all currencyBoxes for Teller who have completed a final sign off, teller end of business day and teller end of day, at the time the Branch End of Business Day operaion is being completed.
Parameters:
companyCode - String
branchCode - String
processingDate - String
Returns:
Vector of currencyBoxes for Teller
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imCalculateBranchCurrencyTotals

public java.util.Vector imCalculateBranchCurrencyTotals(java.util.Vector currencyBoxDenominationSnapshots,
                                                        java.util.Vector branchCurrencyTotalsVector,
                                                        java.util.Vector currencyBoxObjects)
                                                 throws com.bankframe.ejb.ProcessingErrorException,
                                                        com.bankframe.validation.ValidationException
Calculates the branchCurrencyTotals for the Branch End of Business Day operation
Parameters:
currencyBoxDenominationSnapshots - Vector
branchCurrencyTotals - Vector
currencyBoxObjects - Vector
Returns:
Vector of branchCurrencyTotals for the Branch End of Business Day operation
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imBranchGoToNextDay

public Teller imBranchGoToNextDay(java.lang.String companyCode,
                                  java.lang.String branchCode,
                                  java.lang.String userId,
                                  java.lang.String workstationNo)
                           throws com.bankframe.ejb.ProcessingErrorException,
                                  com.bankframe.validation.ValidationException
Used when a Branch is operating in AM/PM mode. It will update the processingDate on the Branch for the next business day and will record that this operation has been completed in the user's journal
Parameters:
companyCode - String
branchCode - String
userId - String
workstationNo - String
Returns:
teller/user for the branch
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imSetNextDayProcessingDateForBranch

public void imSetNextDayProcessingDateForBranch(java.lang.String companyCode,
                                                java.lang.String branchCode)
                                         throws com.bankframe.ejb.ProcessingErrorException,
                                                com.bankframe.validation.ValidationException
Used when a Branch is operating in AM/PM mode and will update the processingDate on the Branch for the next business day that has been obtained from the System Calendar.
Parameters:
companyCode - String
branchCode - String
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imTellerGoToNextDay

public Teller imTellerGoToNextDay(java.lang.String companyCode,
                                  java.lang.String userId,
                                  java.lang.String branchCode,
                                  java.lang.String workstationNo)
                           throws com.bankframe.ejb.ProcessingErrorException,
                                  com.bankframe.validation.ValidationException
Undertaken by the Teller when they are working in AM/PM mode and wish to proceed to work in PM mode
Parameters:
companyCode - String
userId - String
branchCode - String
workstationNo - String
Returns:
teller/user for the branch
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imSetTellerEndOfBusinessDayRequired

public void imSetTellerEndOfBusinessDayRequired(java.lang.String companyCode,
                                                java.lang.String userId)
                                         throws com.bankframe.ejb.ProcessingErrorException,
                                                com.bankframe.validation.ValidationException
Sets the tellerEndOfBusinessDayRequired flag on the User
Parameters:
companyCode - String
userId - String
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imTellerEndOfBusinessDayForNonPrimaryHolder

public void imTellerEndOfBusinessDayForNonPrimaryHolder(java.lang.String companyCode,
                                                        java.lang.String userId,
                                                        java.lang.String branchCode,
                                                        java.lang.String tellerEndOfBusinessDayRequired,
                                                        java.lang.String tellerEndOfDayRequired)
                                                 throws com.bankframe.ejb.ProcessingErrorException,
                                                        com.bankframe.validation.ValidationException
Conducted by a Teller when they are working in AM/PM mode and they are the non primary holder of the cashbox. It is undertaken at the end of the AM period prior to the teller next day operation.
Parameters:
companyCode - String
userId - String
branchCode - String
tellerEndOfBusinessDayRequired - String
tellerEndOfDayRequired - String
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imIsTellerEndOfBusinessDayRequired

public java.lang.Boolean imIsTellerEndOfBusinessDayRequired(java.lang.String companyCode,
                                                            java.lang.String userId)
                                                     throws com.bankframe.ejb.ProcessingErrorException,
                                                            com.bankframe.validation.ValidationException
Checks if a Teller End Of Business Day operation is required to be carried out by the user.
Parameters:
companyCode - String
userId - String
Returns:
true if Teller End Of Business Day is required to be carried out by the user, otherwise false
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imTellerEndOfBusinessDayForPrimaryHolder

public void imTellerEndOfBusinessDayForPrimaryHolder(java.lang.String companyCode,
                                                     java.lang.String userId,
                                                     java.lang.String branchCode,
                                                     java.lang.String tellerEndOfBusinessDayRequired,
                                                     java.lang.String tellerEndOfDayRequired)
                                              throws com.bankframe.ejb.ProcessingErrorException,
                                                     com.bankframe.validation.ValidationException
Conducted by a Teller when they are working in AM/PM mode and are the primary holder of the cashbox. It is undertaken at the end of the AM period prior to the teller go to next day operation.
Parameters:
companyCode - String
userId - String
branchCode - String
tellerEndOfBusinessDayRequired - String
tellerEndOfDayRequired - String
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imCompleteBranchEndOfBusinessDay

public void imCompleteBranchEndOfBusinessDay(java.lang.String companyCode,
                                             java.lang.String branchCode,
                                             java.lang.String userId)
                                      throws com.bankframe.ejb.ProcessingErrorException,
                                             com.bankframe.validation.ValidationException
Completes the Branch End of Business Day operation. It creates a record of the Branch Currency Totals at the end of the business day and records that this operation has been completed in the actor's journal.
Parameters:
companyCode - String
branchCode - String
userId - String
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

imCreateBranchCurrencyTotalsSnapshot

public void imCreateBranchCurrencyTotalsSnapshot(java.lang.String companyCode,
                                                 java.lang.String branchCode,
                                                 java.lang.String snapShotType,
                                                 java.util.Vector runningTotal,
                                                 java.util.Vector notesTotal,
                                                 java.util.Vector coinTotal,
                                                 java.util.Vector currency)
                                          throws com.bankframe.ejb.ProcessingErrorException,
                                                 com.bankframe.validation.ValidationException
Creates the BranchCurrencyTotalsSnapshot for the Branch End of Business Day.
Parameters:
companyCode - String
branchCode - String
snapShotType - String
runningTotal - Vector
notesTotal - Vector
coinTotal - Vector
currency - Vector
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

tellerEndOfBusinessDay

public Teller tellerEndOfBusinessDay(java.lang.Boolean isPrimaryHolder,
                                     java.lang.String companyCode,
                                     java.lang.String userId,
                                     java.lang.String branchCode,
                                     java.lang.String tellerEndOfBusinessDayRequired,
                                     java.lang.String tellerEndOfDayRequired,
                                     java.lang.String workstationNo)
                              throws com.bankframe.ejb.ProcessingErrorException,
                                     com.bankframe.validation.ValidationException
Conducted by a Teller when they are working in AM/PM mode It is undertaken at the end of the AM period prior to the teller go to next day operation.
Parameters:
isPrimaryHolder - Boolean
companyCode - String
userId - String
branchCode - String
tellerEndOfBusinessDayRequired - String
tellerEndOfDayRequired - String
workstationNo -  
Returns:
Teller to go to next day operation
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails

completeBranchEndOfBusinessDay

public Teller completeBranchEndOfBusinessDay(java.lang.String companyCode,
                                             java.lang.String branchCode,
                                             java.lang.String userId,
                                             java.lang.String workstationNo)
                                      throws com.bankframe.ejb.ProcessingErrorException,
                                             com.bankframe.validation.ValidationException
Completes the Branch End of Business day process
Parameters:
companyCode -  
branchCode -  
userId -  
workstationNo -  
Returns:
Teller after completing Branch End of Business day process
Throws:
com.bankframe.ejb.ProcessingErrorException - This exception is thrown if processing fails
com.bankframe.validation.ValidationException - This exception is thrown if validation fails