Example #1
0
 private bool runCalculateFeesForUnit(IDalSession session, FeeFactory feeFactory, IManagementPeriodUnit unit, out string message)
 {
     bool success = false;
     message = "";
     try
     {
         switch (unit.ManagementPeriod.ManagementType)
         {
             case B4F.TotalGiro.Accounts.ManagementPeriods.ManagementTypes.ManagementFee:
                 unit.Success = feeFactory.CalculateFeePerUnit(session, unit);
                 break;
             case B4F.TotalGiro.Accounts.ManagementPeriods.ManagementTypes.KickBack:
                 unit.Success = calculateKickBackOnUnit(session, unit, out message);
                 break;
         }
         if (!string.IsNullOrEmpty(message))
             unit.Message = message;
         success = session.Update(unit);
     }
     catch (Exception ex)
     {
         message = Util.GetMessageFromException(ex);
         string logMessage = string.Format("Error in runCalculateFeesForUnit -> unit: {0}; {1}", unit.Key, message);
         log.Error(logMessage);
     }
     return success;
 }