static RatedRouteDto mapToRoute(CarrierRouteRow pCarrierRouteRow, CarrierAcctDto pCarrierAcct, BaseRouteDto pBaseRoute, RouteState pCarrierRouteState) { if (pCarrierRouteRow == null) { return(null); } var _route = new RatedRouteDto(); _route.RatedRouteId = pCarrierRouteRow.Carrier_route_id; _route.Status = pCarrierRouteRow.RouteStatus; _route.ACDTarget = pCarrierRouteRow.Acd_target; _route.ACDTimeWindow = pCarrierRouteRow.Acd_time_window; _route.ASRTarget = pCarrierRouteRow.Asr_target; _route.ASRTimeWindow = pCarrierRouteRow.Asr_time_window; _route.NextEP = pCarrierRouteRow.Next_ep; _route.AccountId = pCarrierAcct.CarrierAcctId; _route.AccountName = pCarrierAcct.Name; _route.AccountStatus = pCarrierAcct.Status; _route.BaseRoute = pBaseRoute; _route.RouteState = pCarrierRouteState; _route.DefaultRatingInfo = pCarrierAcct.DefaultRatingInfo; return(_route); }
static CarrierRouteRow mapToCarrierRouteRow(RatedRouteDto pRoute) { if (pRoute == null) { return(null); } var _carrierRouteRow = new CarrierRouteRow(); _carrierRouteRow.Carrier_route_id = pRoute.RatedRouteId; _carrierRouteRow.RouteStatus = pRoute.Status; _carrierRouteRow.Acd_target = pRoute.ACDTarget; _carrierRouteRow.Acd_time_window = pRoute.ACDTimeWindow; _carrierRouteRow.Asr_target = pRoute.ASRTarget; _carrierRouteRow.Asr_time_window = pRoute.ASRTimeWindow; _carrierRouteRow.Next_ep = pRoute.NextEP; _carrierRouteRow.Carrier_acct_id = pRoute.AccountId; if (pRoute.BaseRouteId == 0) { _carrierRouteRow.IsRoute_idNull = true; } else { _carrierRouteRow.Route_id = pRoute.BaseRouteId; } return(_carrierRouteRow); }
internal static void Update(Rbr_Db pDb, RatedRouteDto pRoute) { //TODO: ??? confirm what else should be changed ??? var _carrierRouteRow = mapToCarrierRouteRow(pRoute); pDb.CarrierRouteCollection.Update(_carrierRouteRow); }
internal static void Update(Rbr_Db pDb, RatedRouteDto pRoute) { var _wholesaleRouteRow = mapToWholesaleRouteRow(pRoute); pDb.WholesaleRouteCollection.Update(_wholesaleRouteRow); //pDb.AddChangedObject(new CustomerRouteKey(TxType.Delete, _wholesaleRouteRow.Wholesale_route_id)); }
protected int getWholesaleRouteId(Rbr_Db pDb, short pServiceId, int pBaseRouteId, int pRoutingPlanId) { try { RatedRouteDto _wholesaleRoute = CustomerRouteManager.GetRouteByServiceIdBaseRouteId(pDb, pServiceId, pBaseRouteId, pRoutingPlanId); if (_wholesaleRoute == null) { string _msg = string.Format("Skipping Route, doesn't exists in DialPlan. {0}, {1}, {2}.", pServiceId, pBaseRouteId, pRoutingPlanId); TimokLogger.Instance.LogRbr(LogSeverity.Error, "ServiceController.importRatesOnly", string.Format("{0}", _msg)); Host.ReportStatus(_msg); return(0); } if (_wholesaleRoute.RoutingPlanId <= 0) { string _msg = string.Format("Skipping Route, doesn't exists in RoutingPlan. {0}, {1}, {2}.", pServiceId, pBaseRouteId, pRoutingPlanId); TimokLogger.Instance.LogRbr(LogSeverity.Error, "ServiceController.importRatesOnly", string.Format("ServiceController.importRatesOnly | {0}", _msg)); Host.ReportStatus(_msg); return(0); } return(_wholesaleRoute.RatedRouteId); } catch (Exception _ex) { string _msg = string.Format("ERROR: {0}, Retreiving WholesaleRoute: {1}, {2}, {3}", pServiceId, pBaseRouteId, pRoutingPlanId, _ex.Message); Host.ReportStatus(_msg); TimokLogger.Instance.LogRbr(LogSeverity.Error, "RatesImporter.getWholesaleRoute", string.Format("{0}\r\n{1}", _msg, _ex)); throw; } }
static WholesaleRouteRow mapToWholesaleRouteRow(RatedRouteDto pRoute) { if (pRoute == null) { return(null); } var _wholesaleRouteRow = new WholesaleRouteRow(); _wholesaleRouteRow.Wholesale_route_id = pRoute.RatedRouteId; //TODO: should we add ServiceId to Route _wholesaleRouteRow.Service_id = pRoute.AccountId; _wholesaleRouteRow.RouteStatus = pRoute.Status; if (pRoute.BaseRouteId == 0) { _wholesaleRouteRow.IsRoute_idNull = true; } else { _wholesaleRouteRow.Route_id = pRoute.BaseRouteId; } return(_wholesaleRouteRow); }
//public static RatingInfoDto[] GetRates(short pAcctId, int pCountryId, RouteType pRouteType, DateTime pDate) { // using (var _db = new Rbr_Db()) { // if (pRouteType == RouteType.Carrier) { // throw new NotImplementedException(); // } // if (pRouteType == RouteType.Wholesale) { // return getWholesaleRates(_db, pAcctId, pRouteType, pCountryId, pDate); // } // //else if (pRouteType == RouteType.Retail) { // // //TODO: // //} // throw new ArgumentException(string.Format("UNSUPPORTED Type : {0}", pRouteType), "pRouteType"); // } //} public static RatingHistoryEntry GetNewRatingHistoryEntry(int pRatedRouteId, RouteType pRouteType) { using (var _db = new Rbr_Db()) { RatedRouteDto _route = null; if (pRouteType == RouteType.Carrier) { _route = CarrierRouteManager.Get(_db, pRatedRouteId); } else if (pRouteType == RouteType.Wholesale) { _route = CustomerRouteManager.Get(_db, pRatedRouteId); } else if (pRouteType == RouteType.Retail) { } if (_route != null) { var _ratingInfo = _route.DefaultRatingInfo.Clone(); if (_ratingInfo != null) { var _ratingHistoryEntry = new RatingHistoryEntry(pRouteType, pRatedRouteId, DateTime.Today, Configuration.Instance.Db.SqlSmallDateTimeMaxValue, _ratingInfo.Clone()); _ratingHistoryEntry.HasChanged = true; return(_ratingHistoryEntry); } } return(null); } }
protected int getCarrierRouteId(Rbr_Db pDb, short pCarrierAcctId, int pBaseRouteId) { try { RatedRouteDto _carrierRoute = CarrierRouteManager.Get(pDb, pCarrierAcctId, pBaseRouteId); if (_carrierRoute == null) { string _msg = string.Format("Skipping Route, doesn't exists in DialPlan. {0}, {1}.", pCarrierAcctId, pBaseRouteId); TimokLogger.Instance.LogRbr(LogSeverity.Error, "ServiceController.getCarrierRouteId", string.Format("ServiceController.importRatesOnly | {0}", _msg)); Host.ReportStatus(_msg); return(0); } return(_carrierRoute.RatedRouteId); } catch (Exception _ex) { string _msg = string.Format("ERROR: {0}, getCarrierRouteId: {1}, {2}", pCarrierAcctId, pBaseRouteId, _ex.Message); Host.ReportStatus(_msg); TimokLogger.Instance.LogRbr(LogSeverity.Error, "RatesImporter.getCarrierRouteId", string.Format("{0}\r\n{1}", _msg, _ex)); throw; } }
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); }
public void DeleteRoute(RatedRouteDto pRoute, ViewContext pContext) { using (var _db = new Rbr_Db()) { using (var _tx = new Transaction(_db, pRoute, pContext)) { if (pContext == ViewContext.Carrier) { CarrierRouteManager.Delete(_db, pRoute); } else if (pContext == ViewContext.Customer) { CustomerRouteManager.Delete(_db, pRoute); } else if (pContext == ViewContext.Service) { CustomerRouteManager.Delete(_db, pRoute); } else { throw new NotImplementedException("ViewContext: " + pContext); } _tx.Commit(); } } }
internal static void Delete(Rbr_Db pDb, RatedRouteDto pRoute) { //NOTE: !!! NO DELETE !!!, Archive only pRoute.Status = Status.Archived; Update(pDb, pRoute); }
public static void DeleteDialPeerByRoute(CarrierAcctDto pCarrierAcct, EndPointRow pEndPointRow, RatedRouteDto pCarrierRoute) { using (var _db = new Rbr_Db()) { using (var _tx = new Transaction(_db, pCarrierAcct, pEndPointRow, pCarrierRoute)) { var _carrierAcctEPMapRow = CarrierAcctManager.GetDialPeer(_db, pCarrierAcct.CarrierAcctId, pEndPointRow.End_point_id, pCarrierRoute.RatedRouteId); CarrierAcctManager.DeleteDialPeer(_db, _carrierAcctEPMapRow, pEndPointRow); _tx.Commit(); } } }
public static void AddDialPeerByRoute(CarrierAcctDto pCarrierAcct, EndPointRow pEndPointRow, RatedRouteDto pCarrierRoute) { using (var _db = new Rbr_Db()) { using (var _tx = new Transaction(_db, pCarrierAcct, pEndPointRow, pCarrierRoute)) { var _carrierAcctEPMapRow = new CarrierAcctEPMapRow { Carrier_acct_id = pCarrierAcct.CarrierAcctId, Carrier_route_id = pCarrierRoute.RatedRouteId, End_point_id = pEndPointRow.End_point_id, Priority = 0 }; CarrierAcctManager.AddDialPeer(_db, _carrierAcctEPMapRow, pEndPointRow); _tx.Commit(); } } }
static TerminationChoiceDto mapToTerminationChoice(TerminationChoiceRow_Base pTerminationChoiceRow, RatedRouteDto pCarrierRoute) { if (pTerminationChoiceRow == null) { return(null); } var _terminationChoice = new TerminationChoiceDto(); _terminationChoice.TerminationChoiceId = pTerminationChoiceRow.Termination_choice_id; _terminationChoice.RoutingPlanId = pTerminationChoiceRow.Routing_plan_id; _terminationChoice.RouteId = pTerminationChoiceRow.Route_id; _terminationChoice.Priority = pTerminationChoiceRow.Priority; _terminationChoice.CarrierBaseRouteStatus = pCarrierRoute.BaseRoute.BaseStatus; _terminationChoice.CarrierRouteId = pCarrierRoute.RatedRouteId; _terminationChoice.CarrierRouteName = pCarrierRoute.Name; _terminationChoice.CarrierRouteStatus = pCarrierRoute.Status; _terminationChoice.CarrierRouteState = pCarrierRoute.RouteState; _terminationChoice.CarrierAcctName = pCarrierRoute.AccountName; _terminationChoice.CarrierAcctStatus = pCarrierRoute.AccountStatus; _terminationChoice.Version = pTerminationChoiceRow.Version; return(_terminationChoice); }