//删除路由规则 private static bool DeleteRoutingRule(DB_Talk.Model.m_RouteRule model) { bool b = false; List<DB_Talk.Model.m_RouteRule> lst = new List<DB_Talk.Model.m_RouteRule>(); QueryRoutingRule(out lst); lst=lst.Where(w => w.DestRouteID == model.DestRouteID && w.ID == model.ID).ToList(); foreach (DB_Talk.Model.m_RouteRule m in lst) { MBoxSDK.ConfigSDK.tagRoutingRule RoutingRule = new MBoxSDK.ConfigSDK.tagRoutingRule(); RoutingRule.sourceRuleSelectIndex = m.OriRouteID; RoutingRule.destRuleSelectIndex = m.DestRouteID; RoutingRule.routeGroupIndex = m.ID; b = MBoxSDK.ConfigSDK.MBOX_DeleteRoutingRule(Global.Params.BoxHandle, RoutingRule); if (!b) return false; } return true; }
//创建路由规则 private static bool CreateRoutingRule(DB_Talk.Model.m_RouteRule model) { bool b = false; List<DB_Talk.Model.m_RouteRule> lst = new List<DB_Talk.Model.m_RouteRule>(); QueryRoutingRule(out lst); if (lst != null && lst.Count > 0) { if (lst.Contains(model)) { List<DB_Talk.Model.m_RouteRule> listModelRRule = new DB_Talk.BLL.m_RouteRule().GetModelList( string.Format(" i_Flag=0 and ID='{0}' and OriRouteID='{1}' and DestRouteID='{2}' and BoxID='{3}'", model.ID, model.OriRouteID, model.DestRouteID, model.BoxID)); if (listModelRRule.Count == 0) new DB_Talk.BLL.m_RouteRule().Add(model); return true; //存在的不再添加 } } MBoxSDK.ConfigSDK.tagRoutingRule RoutingRule = new MBoxSDK.ConfigSDK.tagRoutingRule(); RoutingRule.sourceRuleSelectIndex = model.OriRouteID; RoutingRule.destRuleSelectIndex = model.DestRouteID; RoutingRule.routeGroupIndex = model.ID; b = MBoxSDK.ConfigSDK.MBOX_CreateRoutingRule(Global.Params.BoxHandle, RoutingRule); if (b) new DB_Talk.BLL.m_RouteRule().Add(model); return b; }