List <CarrierRoute> getCarrierRoutes(CustomerAcct pCustomerAcct, Route pCustomerRoute, RoutingAlgorithmType pRoutingAlgorithm, string pDestNumber)
        {
            List <CarrierRoute> _carrierRoutes;

            if (pRoutingAlgorithm == RoutingAlgorithmType.LCR)
            {
                //TODO: put number of LCR routes into config file
                const int _numberOfLCRRoutes = 2;
                _carrierRoutes = getLCRList(_numberOfLCRRoutes, pDestNumber);
            }
            else if (pRoutingAlgorithm == RoutingAlgorithmType.Manual)
            {
                _carrierRoutes = getManual(pCustomerAcct.RoutingPlanId, pCustomerRoute.BaseRouteId, 1);
            }
            else if (pRoutingAlgorithm == RoutingAlgorithmType.LoadBalance)
            {
                _carrierRoutes = getLoadBalancing(pCustomerAcct.RoutingPlanId, pCustomerRoute.BaseRouteId);
            }
            else
            {
                throw new RbrException(RbrResult.Routing_AlgorithmUnknown, "RoutingService.getCarrierRoutes", string.Format("Unknown Alghorithm={0}", pRoutingAlgorithm));
            }
            return(_carrierRoutes);
        }
Exemple #2
0
 public void AddRoutingPlan(RoutingPlanDto pRoutingPlan, int[] pSelectedBaseRouteIds, RoutingAlgorithmType pDefaultRoutingAlgorithmType)
 {
     using (var _db = new Rbr_Db()) {
         using (var _tx = new Transaction(_db, pRoutingPlan, pSelectedBaseRouteIds, pDefaultRoutingAlgorithmType)) {
             //TODO: NEW DAL - VirtualSwitch
             pRoutingPlan.VirtualSwitchId = AppConstants.DefaultVirtualSwitchId;
             pRoutingPlan.RoutingPlanId   = RoutingManager.AddRoutingPlan(_db, pRoutingPlan);
             RoutingManager.AddRoutingPlanDetails(_db, pRoutingPlan, pSelectedBaseRouteIds, pDefaultRoutingAlgorithmType);
             _tx.Commit();
         }
     }
 }
        static RatedRouteDto mapToRoute(WholesaleRouteRow pWholesaleRouteRow, int pRoutingPlanId, RoutingAlgorithmType pRoutingAlgorithmType, ServiceDto pService, BaseRouteDto pBaseRoute, RouteState pRouteState)
        {
            if (pWholesaleRouteRow == null)
            {
                return(null);
            }

            var _route = new RatedRouteDto
            {
                RatedRouteId      = pWholesaleRouteRow.Wholesale_route_id,
                AccountId         = pService.ServiceId,
                AccountName       = pService.Name,
                AccountStatus     = pService.Status,
                RoutingPlanId     = pRoutingPlanId,
                Algorithm         = pRoutingAlgorithmType,
                Status            = pWholesaleRouteRow.RouteStatus,
                BaseRoute         = pBaseRoute,
                RouteState        = pRouteState,
                DefaultRatingInfo = pService.DefaultRatingInfo
            };

            return(_route);
        }
Exemple #4
0
 public void AddRoutingPlanDetails(RoutingPlanDto pRoutingPlan, int[] pSelectedBaseRouteIds, RoutingAlgorithmType pDefaultRoutingAlgorithmType)
 {
     using (var _db = new Rbr_Db()) {
         using (var _tx = new Transaction(_db, pRoutingPlan, pSelectedBaseRouteIds, pDefaultRoutingAlgorithmType)) {
             RoutingManager.AddRoutingPlanDetails(_db, pRoutingPlan, pSelectedBaseRouteIds, pDefaultRoutingAlgorithmType);
             _tx.Commit();
         }
     }
 }
 internal static void AddRoutingPlanDetails(Rbr_Db pDb, RoutingPlanDto pRoutingPlan, int[] pSelectedBaseRouteIds, RoutingAlgorithmType pDefaultRoutingAlgorithmType)
 {
     if (pRoutingPlan != null && pSelectedBaseRouteIds != null && pSelectedBaseRouteIds.Length > 0)
     {
         foreach (var _baseRouteId in pSelectedBaseRouteIds)
         {
             var _routingPlanDetailRow = new RoutingPlanDetailRow();
             _routingPlanDetailRow.Routing_plan_id = pRoutingPlan.RoutingPlanId;
             _routingPlanDetailRow.Route_id        = _baseRouteId;
             _routingPlanDetailRow.Algorithm       = pDefaultRoutingAlgorithmType;
             AddRoutingPlanDetailRow(pDb, _routingPlanDetailRow);
         }
     }
 }