示例#1
0
        //[OperationBehavior(TransactionAutoComplete = true, TransactionScopeRequired = true)]
        public void Данные_СписокТелефонов_Проиндекировать(decimal id_node, string user, string domain)
        {
            var phones = new List <object[]>();

            if (id_node == 0)
            {
                var query = new Query();
                query.Sql = @"select * from tblValueString where (@node = [id_node] or @node = 0) and [type] = 'СписокТелефонов.Телефоны' and [string_value] <> ''";
                query.ДобавитьПараметр("@node", id_node);
                phones.AddRange(data.Поиск(query, Хранилище.Оперативное, domain).AsEnumerable().Select(
                                    p => new object[] { p.Field <decimal>("id_node"), p.Field <string>("string_value") }));
            }
            else
            {
                phones.Add(new object[] { id_node, data.ПолучитьЗначение <object>(id_node, "СписокТелефонов.Телефоны", Хранилище.Оперативное, domain) });
            }

            foreach (var item in phones)
            {
                var numbers = Regex.Replace(Convert.ToString(item[1]), @"[^\d]", string.Empty);
                var items   = new List <string>();
                data.СохранитьЗначениеПростое((decimal)item[0], "СписокТелефонов.ТелефоныИндекс", Данные_СписокТелефонов_ПолучитьИндекс(Convert.ToString(item[1])), false, Хранилище.Оперативное, user, domain);
                data.СохранитьЗначениеПростое((decimal)item[0], "СписокТелефонов.ТелефоныЦифры", numbers, false, Хранилище.Оперативное, user, domain);
            }
        }
示例#2
0
 protected object GetValue(string name)
 {
     if (this.id_node > 0)
     {
         return(client.ПолучитьЗначение <object>(id_node, name));
     }
     else
     {
         return(v != null && v.ContainsKey(name) ? v[name] : null);
     }
 }