示例#1
0
        public List <ABONENTS> SelectAbonentsByName(string textToFind)
        {
            using (DBDemoModel db = new DBDemoModel(_pass))
            {
                //Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-us"); //если нужны ошибки на англ. яз.
                List <ABONENTS> abon;
                try
                {
                    var cont = db.ABONENTS
                               .Where(a => a.OWNER.ToUpper().Contains(textToFind.ToUpper()))
                               .Include(a => a.BANS);
                    abon = cont.ToList();
                }
                catch (Exception e)
                {
                    MessageBox.Show($"Ошибка получения списка абонентов {e.Message}");
                    return(new List <ABONENTS>());
                }

                foreach (var a in abon) //установим selectedBan и selectedMSISDN в соответствии с критериями поиска
                {
                    var ban = a.BANS.FirstOrDefault();
                    a.SelectedBAN    = ban?.BAN;
                    a.SelectedMSISDN = ban?.NUMBERS.FirstOrDefault()?.MSISDN;
                }
                return(abon);
            }
        }
示例#2
0
 public List <ABONENTS> SelectAbonentsByMSISDN(string textToFind)
 {
     using (DBDemoModel db = new DBDemoModel(_pass))
     {
         var cont = from a in db.ABONENTS
                    join n in db.NUMBERS on a.KOD_SUBSCRIBE equals n.KOD_SUBSCRIBE
                    where n.MSISDN.Contains(textToFind)
                    select a;
         var abon = cont.Include(a => a.BANS.Select(m => m.NUMBERS)).ToList();
         foreach (var a in abon) //установим selectedBan и selectedMSISDN в соответствии с критериями поиска
         {
             foreach (var b in a.BANS)
             {
                 var msisdn = b.NUMBERS.Where(m => m.MSISDN.Contains(textToFind)).FirstOrDefault();
                 a.SelectedMSISDN = msisdn?.MSISDN;
                 a.SelectedBAN    = msisdn?.BAN;
                 if (msisdn != null)
                 {
                     break;
                 }
             }
         }
         return(new List <ABONENTS>(abon));
     }
 }
示例#3
0
 public bool CanConnectDB()
 {
     try
     {
         using (DBDemoModel db = new DBDemoModel(_pass))
         {
             db.Database.Connection.Open();
             return(true);
         }
     }
     catch (Exception)
     {
         return(false);
     }
 }
示例#4
0
 public List <ABONENTS> SelectAbonentsByBAN(string textToFind)
 {
     using (DBDemoModel db = new DBDemoModel(_pass))
     {
         var cont = from a in db.ABONENTS
                    join b in db.BANS on a.KOD_SUBSCRIBE equals b.SR_SUBSCRIBE
                    where b.BAN.ToUpper().Contains(textToFind.ToUpper()) // может содержать буквы
                    select a;
         var abon = cont.Include(a => a.BANS.Select(m => m.NUMBERS)).ToList();
         foreach (var a in abon) //установим selectedBan и selectedMSISDN в соответствии с критериями поиска
         {
             var ban = a.BANS.Where(b => b.BAN.Contains(textToFind)).FirstOrDefault();
             a.SelectedBAN    = ban?.BAN;
             a.SelectedMSISDN = ban?.NUMBERS.FirstOrDefault()?.MSISDN;
         }
         return(new List <ABONENTS>(abon));
     }
 }
示例#5
0
 public List <ABONENTS> SelectAbonentsByINN(string textToFind)
 {
     using (DBDemoModel db = new DBDemoModel(_pass))
     {
         int inn;
         Int32.TryParse(textToFind, out inn);
         var cont = db.ABONENTS
                    .Where(a => a.INN_PASSPORT == (int?)inn)
                    .Include(a => a.BANS);
         var abon = cont.ToList();
         foreach (var a in abon) //установим selectedBan и selectedMSISDN в соответствии с критериями поиска
         {
             var ban = a.BANS.FirstOrDefault();
             a.SelectedBAN    = ban?.BAN;
             a.SelectedMSISDN = ban?.NUMBERS.FirstOrDefault()?.MSISDN;
         }
         return(new List <ABONENTS>(abon));
     }
 }
示例#6
0
 public ABONENTS GetAbonent(decimal id)
 {
     using (DBDemoModel db = new DBDemoModel(_pass))
     {
         ABONENTS abon;
         try
         {
             var cont = db.ABONENTS
                        .Where(a => a.KOD_SUBSCRIBE == id)
                        .Include(a => a.BANS.Select(m => m.NUMBERS))
                        .Single();
             abon = cont;
         }
         catch (Exception e)
         {
             MessageBox.Show($"Ошибка получения абонента {e.Message}");
             return(new ABONENTS());
         }
         return(abon);
     }
 }
示例#7
0
        public List <ABONENTS> SelectAbonentsByBill(string textToFind)
        {
            using (DBDemoModel db = new DBDemoModel(_pass))
            {
                var cont = from n in db.NUMBERS
                           join b in db.BILLS on n.BAN equals b.BAN
                           join a in db.ABONENTS on n.KOD_SUBSCRIBE equals a.KOD_SUBSCRIBE
                           where b.BILL.Contains(textToFind)
                           select a;
                var abon = cont.Include(a => a.BANS.Select(b => b.NUMBERS)).ToList(); //одной строкой не работает с oracle ниже 12С из-за APPLY
                abon = cont.Include(a => a.BANS.Select(b => b.BILLS)).ToList();

                foreach (var a in abon) //установим selectedBan и selectedMSISDN в соответствии с критериями поиска
                {
                    var ban = a.BANS.FirstOrDefault();
                    a.SelectedBAN    = ban?.BAN;
                    a.SelectedMSISDN = ban?.NUMBERS.FirstOrDefault()?.MSISDN;
                }
                return(new List <ABONENTS>(abon));
            }
        }