Наследование: System.Web.UI.Page
Пример #1
0
        public async Task <ActionResult <license> > Postlicense(license license)
        {
            _context.licenses.Add(license);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("Getlicense", new { id = license.id }, license));
        }
Пример #2
0
        public async Task <IActionResult> Putlicense(int id, license license)
        {
            if (id != license.id)
            {
                return(BadRequest());
            }

            _context.Entry(license).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!licenseExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Пример #3
0
 public static async void giveLicense(this Player player, license license, int hours, Player by = null)
 {
     if (player.HasData("licenses"))
     {
         var curentlicenses = player.GetData <List <model> >("licenses");
         if (curentlicenses.Find(a => a.type == license) == null)
         {
             curentlicenses.Add(new model(license, hours));
             player.SetData("licenses", curentlicenses);
             await databaseManager.updateQuery($"UPDATE accounts SET licenses = '{NAPI.Util.ToJson(curentlicenses)}' WHERE username = '******' LIMIT 1").Execute();
         }
         else if (by != null)
         {
             by.SendChatMessage($"{player.Name} already has the {license} for {hours}");
         }
     }
 }
Пример #4
0
 private void btnExport_Click(object sender, EventArgs e)
 {
     if (dataGridView1.RowCount > 0)
     {
         DataGridViewSelectedRowCollection rows = dataGridView1.SelectedRows;
         if (rows.Count > 0)
         {
             SaveFileDialog sfd = new SaveFileDialog();
             sfd.DefaultExt       = "xml";
             sfd.CheckPathExists  = true;
             sfd.Filter           = "*.xml|xml files|*.*|all files";
             sfd.FileName         = "license.xml";
             sfd.FilterIndex      = 0;
             sfd.OverwritePrompt  = true;
             sfd.RestoreDirectory = true;
             sfd.Title            = "Enter name of file to export these " + rows.Count.ToString() + " license(s)";
             sfd.ValidateNames    = true;
             string sFileName = "";
             if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
             {
                 sFileName = sfd.FileName;
             }
             else
             {
                 return;
             }
             LicenseXML             licenseXML  = new LicenseXML();
             List <Helpers.license> licenseList = new List <license>();
             foreach (DataGridViewRow drv in rows)
             {
                 DataRow         dr  = (drv.DataBoundItem as DataRowView).Row;
                 Helpers.license lic = new license();
                 lic.id   = dr["deviceid"].ToString();
                 lic.key  = dr["key"].ToString();
                 lic.user = dr["endcustomer"].ToString();
                 licenseList.Add(lic);
             }
             licenseXML.licenses = licenseList.ToArray();
             if (LicenseXML.serialize(licenseXML, sFileName))
             {
                 MessageBox.Show("license(s) saved to " + sFileName);
             }
         }
     }
 }
Пример #5
0
 public static async Task setLicense(this Player player, license license, int hours, Player by = null)
 {
     if (player.HasData("licenses"))
     {
         var curentlicenses = player.GetData <List <model> >("licenses");
         if (curentlicenses.Find(a => a.type == license) == null)
         {
             curentlicenses.Add(new model(license, hours));
             player.SetData("licenses", curentlicenses);
             await databaseManager.updateQuery($"UPDATE accounts SET licenses = '{NAPI.Util.ToJson(curentlicenses)}' WHERE username = '******' LIMIT 1").Execute();
         }
         else
         {
             curentlicenses.Find(a => a.type == license).hours = hours;
             player.SetData("licenses", curentlicenses);
             await databaseManager.updateQuery($"UPDATE accounts SET licenses = '{NAPI.Util.ToJson(curentlicenses)}' WHERE username = '******' LIMIT 1").Execute();
         }
     }
 }
Пример #6
0
        public static async Task <bool> removeLicense(this Player player, license license, Player by = null)
        {
            if (player.HasData("licenses"))
            {
                var curentlicenses = player.GetData <List <model> >("licenses");
                if (curentlicenses.Find(a => a.type == license) != null)
                {
                    curentlicenses.Remove(curentlicenses.Find(a => a.type == license));
                }
                else
                {
                    return(false);
                }
                player.SetData("licenses", curentlicenses);

                await databaseManager.updateQuery($"UPDATE accounts SET licenses = '{NAPI.Util.ToJson(curentlicenses)}' WHERE username = '******' LIMIT 1").Execute();

                return(true);
            }
            return(false);
        }
Пример #7
0
        public static void Main(string[] args)
        {
            //указываем урл сервиса
            ws.Url = "http://www.cbr.ru/CreditInfoWebServ/CreditOrgInfo.asmx?WSDL";

            //урл справочника БИК КО
            string url = "http://cbr.ru/scripts/XML_bic2.asp";

            //Грузим справочники по формам 101 и 102
            XDocument cls101 = XDocument.Parse(ws.Form101IndicatorsEnumXML().OuterXml);
            //cls101.Save("cls101.xml");
            XDocument cls102 = XDocument.Parse(ws.Form102IndicatorsEnumXML().OuterXml);

            Thread.Sleep(1500);
            //Грузим список КО
            XDocument doc = XDocument.Parse(DownloadCO(url));

            List <bank>        banks    = new List <bank>();
            List <bank_childs> cOffices = new List <bank_childs>();
            List <Form101>     form101  = new List <Form101>();
            List <Form102>     form102  = new List <Form102>();
            List <Form123>     form123  = new List <Form123>();

            //"Поехали!" © Юрий гагарин
            foreach (XElement e in doc.Root.Elements("Record"))
            {
                Console.WriteLine("БИК: {0} ОГРН: {1}", e.Element("Bic").Value, e.Element("RegNum").Value);

                bank BankCard = new bank();

                try { BankCard.Bic = e.Element("Bic").Value; } catch { BankCard.Bic = ""; }
                try { BankCard.ogrn = e.Element("RegNum").Value; } catch { BankCard.ogrn = ""; }
                try { BankCard.IntCode = ws.BicToIntCode(BankCard.Bic); } catch { BankCard.IntCode = 0; }

                Thread.Sleep(1500);
                //грузим карточку КО
                XDocument CreditInfo = null;
                while (CreditInfo == null)
                {
                    try
                    {
                        CreditInfo = XDocument.Parse(ws.CreditInfoByIntCodeXML(BankCard.IntCode).OuterXml);
                    }
                    catch
                    {
                        Console.WriteLine("Trying connection...");
                    }
                }
                try
                {
                    CreditInfo = XDocument.Parse(ws.CreditInfoByIntCodeXML(BankCard.IntCode).OuterXml);
                }
                catch
                {
                    CreditInfo = XDocument.Parse(ws.CreditInfoByIntCodeXML(BankCard.IntCode).OuterXml);
                }


                //Заполняем остальные поля
                try { BankCard.RegNum = CreditInfo.Root.Element("CO").Element("RegNumber").Value; } catch { BankCard.RegNum = ""; }
                try { BankCard.Name = CreditInfo.Root.Element("CO").Element("OrgName").Value; } catch { BankCard.Name = ""; }
                try { BankCard.OrgFullName = CreditInfo.Root.Element("CO").Element("OrgFullName").Value; } catch { BankCard.OrgFullName = ""; }
                try { BankCard.phones = CreditInfo.Root.Element("CO").Element("phones").Value; } catch { BankCard.phones = ""; }
                try { BankCard.DateKGRRegistration = CreditInfo.Root.Element("CO").Element("DateKGRRegistration").Value; } catch { BankCard.DateKGRRegistration = ""; }
                try { BankCard.MainDateReg = CreditInfo.Root.Element("CO").Element("MainDateReg").Value; } catch { BankCard.MainDateReg = ""; }
                try { BankCard.UstavAdr = CreditInfo.Root.Element("CO").Element("UstavAdr").Value; } catch { BankCard.UstavAdr = ""; }
                try { BankCard.FactAdr = CreditInfo.Root.Element("CO").Element("FactAdr").Value; } catch { BankCard.FactAdr = ""; }
                try { BankCard.Director = CreditInfo.Root.Element("CO").Element("Director").Value; } catch { BankCard.Director = ""; }
                try { BankCard.UstMoney = CreditInfo.Root.Element("CO").Element("UstMoney").Value; } catch { BankCard.UstMoney = ""; }
                try { BankCard.OrgStatus = CreditInfo.Root.Element("CO").Element("OrgStatus").Value; } catch { BankCard.OrgStatus = ""; }
                try { BankCard.RegCode = CreditInfo.Root.Element("CO").Element("RegCode").Value; } catch { BankCard.RegCode = ""; }
                try { BankCard.SSV_Date = CreditInfo.Root.Element("CO").Element("SSV_Date").Value; } catch { BankCard.SSV_Date = ""; }

                //офисы/филиалы
                XDocument offices = XDocument.Parse(ws.GetOfficesXML(BankCard.IntCode).OuterXml);

                foreach (XElement o in offices.Root.Elements("Offices"))
                {
                    bank_childs cOffice = new bank_childs();
                    try { cOffice.IntCode = BankCard.IntCode; } catch { cOffice.IntCode = 0; }
                    try { cOffice.RegNum = BankCard.RegNum; } catch { cOffice.RegNum = ""; }
                    try { cOffice.Bic = BankCard.Bic; } catch { cOffice.Bic = ""; }
                    try { cOffice.ogrn = BankCard.ogrn; } catch { cOffice.ogrn = ""; }
                    try { cOffice.Name = BankCard.Name; } catch { cOffice.Name = ""; }
                    try { cOffice.OrgFullName = BankCard.OrgFullName; } catch { cOffice.OrgFullName = ""; }
                    try { cOffice.cregnum = o.Element("cregnum").Value; } catch { cOffice.cregnum = ""; }
                    try { cOffice.cname = o.Element("cname").Value; } catch { cOffice.cname = ""; }
                    try { cOffice.cndate = o.Element("cndate").Value; } catch { cOffice.cndate = ""; }
                    try { cOffice.straddrmn = o.Element("straddrmn").Value; } catch { cOffice.straddrmn = ""; }
                    try { cOffice.RegId = o.Element("RegId").Value; } catch { cOffice.RegId = ""; }

                    cOffices.Add(cOffice);
                }


                //заполняем Licenses
                foreach (XElement l in CreditInfo.Root.Elements("LIC"))
                {
                    license lic = new license();
                    BankCard.licenses = new List <license>();
                    try { lic.RegNum = BankCard.RegNum; } catch { lic.RegNum = ""; }
                    try { lic.LCode = l.Element("LCode").Value; } catch { lic.LCode = ""; }
                    try { lic.name = l.Element("LT").Value; } catch { lic.name = ""; }
                    try { lic.Date = l.Element("LDate").Value; } catch { lic.Date = ""; }
                    BankCard.licenses.Add(lic);
                }


                banks.Add(BankCard);
            }

            //заполняем массив рег. номеров КО, для получения общей отчетности по всем КО
            object [] CredOrgNumbers = new object[banks.Count];
            for (int i = 0; i < banks.Count; i++)
            {
                Console.WriteLine("{0} {1} {2} {3}", banks[i].RegNum, banks[i].IntCode, banks[i].Bic, banks[i].Name);
                CredOrgNumbers[i] = banks[i].RegNum;
            }

            //Сбрасываем в файл справочник КО
            StreamWriter writer          = new StreamWriter("cls_CreditOrgsInfo.csv", false, Encoding.Default);
            StreamWriter writer_licenses = new StreamWriter("cls_CreditOrgsInfo_licenses.csv", false, Encoding.Default);
            StreamWriter writer_offices  = new StreamWriter("cls_CreditOrgsInfo_offices.csv", false, Encoding.Default);

            foreach (bank b in banks)
            {
                Console.WriteLine("{0} {1} {2} {3}", b.RegNum, b.IntCode, b.Bic, b.Name);
                writer.WriteLine(b.IntCode + ";" + b.RegNum.Trim() + ";" + b.Bic.Trim() + ";" + b.ogrn.Trim() + ";" + b.Name.Trim() + ";" + b.OrgFullName.Trim() + ";" + b.MainDateReg.Trim() + ";" +
                                 b.DateKGRRegistration.Trim() + ";" + b.SSV_Date.Trim() + ";" + b.UstavAdr.Trim() + ";" + b.FactAdr.Trim() + ";" + b.Director.Trim() + ";" + b.UstMoney.Trim() + ";" +
                                 b.OrgStatus.Trim() + ";" + b.RegCode.Trim() + ";" + b.phones.Trim()
                                 );

                try
                {
                    foreach (bank_childs c in cOffices)
                    {
                        writer_offices.WriteLine(c.IntCode + ";" + c.RegNum.Trim() + ";" + c.Bic.Trim() + ";" + c.ogrn.Trim() + ";" + c.Name.Trim() + ";" + c.OrgFullName.Trim() + ";" +
                                                 c.cregnum.Trim() + ";" + c.cname.Trim() + ";" + c.cndate.Trim() + ";" +
                                                 c.straddrmn.Replace("\n", "").Replace("\r", "").Replace(";", ",").Trim() + ";" + c.RegId.Trim()
                                                 );
                        writer_offices.Flush();
                    }
                } catch { Console.WriteLine("Нет офисов?!"); }

                try
                {
                    foreach (license l in b.licenses)
                    {
                        writer_licenses.WriteLine(l.RegNum.Trim() + ";" + l.LCode.Trim() + ";" + l.name.Trim() + ";" + l.Date.Trim());
                        writer_licenses.Flush();
                    }
                    writer.Flush();
                } catch { Console.WriteLine("Нет лицензий?!"); }
            }
            writer.Close();
            writer_licenses.Close();
            writer.Dispose();
            writer_licenses.Dispose();
            writer_offices.Close();
            writer_offices.Dispose();

            //Собираем отчетность по 123 форме для всех КО
            writer = new StreamWriter("cls_CreditOrgsInfo_form123.csv", false, Encoding.Default);
            foreach (bank b in banks)
            {
                int RegNum = 0;
                try { RegNum = Convert.ToInt16(b.RegNum); } catch { RegNum = 0; }
                DateTime[] dates = null;
                while (dates == null)
                {
                    try
                    {
                        dates = ws.GetDatesForF123(RegNum);
                    }
                    catch { Console.WriteLine("Trying connection..."); }
                }

                foreach (DateTime date in dates.Where(d => DateTime.Compare(d, DateTime.Parse("01.10.2017")) > 0))
                {
                    XDocument Data123Full = null;
                    Thread.Sleep(1500);
                    try
                    {
                        Data123Full = XDocument.Parse(ws.Data123FormFullXML(RegNum, date).OuterXml);
                    }
                    catch
                    {
                        File.AppendAllText("log123.txt", date.ToString() + " | " + b.RegNum + Environment.NewLine);
                        Console.WriteLine("oops");
                        break;
                    }
                    //form123
                    Form123 f = new Form123();

                    foreach (XElement e in Data123Full.Root.Elements("F123"))
                    {
                        try { f.RegNum = b.RegNum; } catch { f.RegNum = ""; }                         //Регистрацонный номер КО

                        try { f.Date = date.ToString("yyyy-MM-dd"); } catch { f.Date = ""; }          //Дата (значения показателей привязаны к дате)

                        try { f.IndCode = e.Element("CODE").Value; } catch { f.IndCode = ""; }        //Номер счета индикатора/код показателя

                        try { f.name = e.Element("NAME").Value; } catch { f.RegNum = ""; }            //Название счетов баланса индикатора

                        try { f.value = e.Element("VALUE").Value; } catch { f.value = ""; }           //значение показателя

                        Console.WriteLine("{0} {1} {2}", "Форма 123", f.RegNum, f.IndCode);

                        writer.WriteLine(f.IndCode + ";" + f.name.Trim().Replace(";", "").Replace("\r", " ").Replace("\n", "") + ";" + f.Date + ";" + f.RegNum + ";" + f.value);
                        writer.Flush();
                    }
                }
            }
            writer.Close();
            //Собираем отчетность по 101 форме для всех КО
            //Сбрасываем в файл отчетность КО 101 формы
            writer = new StreamWriter("cls_CreditOrgsInfo_form101.csv", false, Encoding.Default);
            foreach (XElement e in cls101.Root.Elements("EIND").Where(a => a.Element("IndCode") != null))
            {
                Console.WriteLine("Грузим данные по 101 форме...");
                string IndCode = "";
                try { IndCode = e.Element("IndCode").Value; } catch { IndCode = ""; }
                XDocument Data101Full = null;
                while (Data101Full == null)
                {
                    try
                    {
                        Data101Full = XDocument.Parse(ws.Data101FullExV2XML(CredOrgNumbers, IndCode, DateTime.Parse("02.10.2017"), DateTime.Now).OuterXml);
                    }
                    catch
                    {
                        Console.WriteLine("Trying connection...");
                    }
                }


                try
                {
                    foreach (XElement d in Data101Full.Root.Elements("FD"))
                    {
                        Form101 f = new Form101();

                        try { f.RegNum = d.Element("regn").Value; } catch { f.RegNum = ""; }                                             //Регистрацонный номер КО

                        try { f.Date = d.Element("DT").Value; } catch { try { f.Date = d.Element("dt").Value; } catch { f.Date = ""; } } //Дата (значения показателей привязаны к дате)

                        try { f.value = d.Element("val").Value; } catch { f.value = ""; }                                                //Значение символа - cумма

                        try { f.IndID = e.Element("IndID").Value; } catch { f.IndID = ""; }                                              //Внутренний код индикатора

                        try { f.IndCode = e.Element("IndCode").Value; } catch { f.IndCode = ""; }                                        //Номер счета индикатора

                        try { f.name = e.Element("name").Value; } catch { f.name = ""; }                                                 //Название счетов баланса индикатора

                        try { f.IndType = e.Element("IndType").Value; } catch { f.IndType = ""; }                                        //Код счета индикатора

                        try { f.IndChapter = e.Element("IndChapter").Value; } catch { f.IndChapter = ""; }                               //Код раздела индикатора
                        //
                        try { f.pln = d.Element("pln").Value; } catch { f.pln = ""; }                                                    //Балансовые счета

                        try { f.ap = d.Element("ap").Value; } catch { f.ap = ""; }                                                       //Актив/Пассив

                        try { f.vr = d.Element("vr").Value; } catch { f.vr = ""; }                                                       //Входящие остатки в рублях

                        try { f.vv = d.Element("vv").Value; } catch { f.vv = ""; }                                                       //Входящие остатки в ин. вал., драг. металлы

                        try { f.vitg = d.Element("vitg").Value; } catch { f.vitg = ""; }                                                 //Входящие остатки итого

                        try { f.ora = d.Element("ora").Value; } catch { f.ora = ""; }                                                    //Обороты за отчетный период по дебету в рублях

                        try { f.ova = d.Element("ova").Value; } catch { f.ova = ""; }                                                    //Обороты за отчетный период по дебету в ин. вал., драг. металлы

                        try { f.oitga = d.Element("oitga").Value; } catch { f.oitga = ""; }                                              //Обороты за отчетный период по дебету итого

                        try { f.orp = d.Element("orp").Value; } catch { f.orp = ""; }                                                    //Обороты за отчетный период по кредиту в рублях

                        try { f.ovp = d.Element("ovp").Value; } catch { f.ovp = ""; }                                                    //Обороты за отчетный период по кредиту в ин. вал., драг. металлы

                        try { f.oitgp = d.Element("oitgp").Value; } catch { f.oitgp = ""; }                                              //Обороты за отчетный период по кредиту итого

                        try { f.ir = d.Element("ir").Value; } catch { f.ir = ""; }                                                       //Исходящие остатки в рублях

                        try { f.iv = d.Element("iv").Value; } catch { f.iv = ""; }                                                       //Исходящие остатки в ин. вал., драг. металлы

                        try { f.iitg = d.Element("iitg").Value; } catch { f.iitg = ""; }                                                 //Исходящие остатки итого


                        Console.WriteLine("{0} {1} {2}", "Форма 101", f.RegNum, f.IndCode);

                        writer.WriteLine(f.IndID + ";" + f.IndCode + ";" + f.name.Trim().Replace(";", "").Replace("\r", " ").Replace("\n", "") + ";" + f.IndType + ";" + f.IndChapter + ";" + f.RegNum + ";" + f.Date + ";" +
                                         f.value + ";" + f.pln + ";" + f.ap + ";" + f.vr + ";" + f.vv + ";" + f.vitg + ";" + f.ora + ";" + f.ova + ";" + f.oitga + ";" + f.orp + ";" + f.ovp + ";" + f.oitgp + ";" +
                                         f.ir + ";" + f.iv + ";" + f.iitg
                                         );
                        writer.Flush();
                    }
                } catch { Console.WriteLine("Нет такого элемента!"); }

                try
                {
                    foreach (XElement d in Data101Full.Root.Elements("FDF"))
                    {
                        Form101 f = new Form101();

                        try { f.RegNum = d.Element("regn").Value; } catch { f.RegNum = ""; }                                             //Регистрацонный номер КО

                        try { f.Date = d.Element("DT").Value; } catch { try { f.Date = d.Element("dt").Value; } catch { f.Date = ""; } } //Дата (значения показателей привязаны к дате)

                        try { f.value = d.Element("val").Value; } catch { f.value = ""; }                                                //Значение символа - cумма

                        try { f.IndID = e.Element("IndID").Value; } catch { f.IndID = ""; }                                              //Внутренний код индикатора

                        try { f.IndCode = e.Element("IndCode").Value; } catch { f.IndCode = ""; }                                        //Номер счета индикатора

                        try { f.name = e.Element("name").Value; } catch { f.name = ""; }                                                 //Название счетов баланса индикатора

                        try { f.IndType = e.Element("IndType").Value; } catch { f.IndType = ""; }                                        //Код счета индикатора

                        try { f.IndChapter = e.Element("IndChapter").Value; } catch { f.IndChapter = ""; }                               //Код раздела индикатора
                        //
                        try { f.pln = d.Element("pln").Value; } catch { f.pln = ""; }                                                    //Балансовые счета

                        try { f.ap = d.Element("ap").Value; } catch { f.ap = ""; }                                                       //Актив/Пассив

                        try { f.vr = d.Element("vr").Value; } catch { f.vr = ""; }                                                       //Входящие остатки в рублях

                        try { f.vv = d.Element("vv").Value; } catch { f.vv = ""; }                                                       //Входящие остатки в ин. вал., драг. металлы

                        try { f.vitg = d.Element("vitg").Value; } catch { f.vitg = ""; }                                                 //Входящие остатки итого

                        try { f.ora = d.Element("ora").Value; } catch { f.ora = ""; }                                                    //Обороты за отчетный период по дебету в рублях

                        try { f.ova = d.Element("ova").Value; } catch { f.ova = ""; }                                                    //Обороты за отчетный период по дебету в ин. вал., драг. металлы

                        try { f.oitga = d.Element("oitga").Value; } catch { f.oitga = ""; }                                              //Обороты за отчетный период по дебету итого

                        try { f.orp = d.Element("orp").Value; } catch { f.orp = ""; }                                                    //Обороты за отчетный период по кредиту в рублях

                        try { f.ovp = d.Element("ovp").Value; } catch { f.ovp = ""; }                                                    //Обороты за отчетный период по кредиту в ин. вал., драг. металлы

                        try { f.oitgp = d.Element("oitgp").Value; } catch { f.oitgp = ""; }                                              //Обороты за отчетный период по кредиту итого

                        try { f.ir = d.Element("ir").Value; } catch { f.ir = ""; }                                                       //Исходящие остатки в рублях

                        try { f.iv = d.Element("iv").Value; } catch { f.iv = ""; }                                                       //Исходящие остатки в ин. вал., драг. металлы

                        try { f.iitg = d.Element("iitg").Value; } catch { f.iitg = ""; }                                                 //Исходящие остатки итого


                        Console.WriteLine("{0} {1} {2}", "Форма 101", f.RegNum, f.IndCode);

                        writer.WriteLine(f.IndID + ";" + f.IndCode + ";" + f.name.Trim().Replace(";", "").Replace("\r", " ").Replace("\n", "") + ";" + f.IndType + ";" + f.IndChapter + ";" + f.RegNum + ";" + f.Date + ";" +
                                         f.value + ";" + f.pln + ";" + f.ap + ";" + f.vr + ";" + f.vv + ";" + f.vitg + ";" + f.ora + ";" + f.ova + ";" + f.oitga + ";" + f.orp + ";" + f.ovp + ";" + f.oitgp + ";" +
                                         f.ir + ";" + f.iv + ";" + f.iitg
                                         );
                        writer.Flush();
                    }
                } catch { Console.WriteLine("Нет такого элемента!"); }
            }
            writer.Close();
            writer.Dispose();



            //------------------------------------------------------------------------------


            List <Form102> clsForm102 = new List <Form102>();

            foreach (XElement e in cls102.Root.Elements("SIND").Where(a => a.Element("symbol") != null))
            {
                try {
                    Form102 f = new Form102();

                    try { f.symid = e.Element("symid").Value; } catch { f.symid = ""; }                             //внутренний код

                    try { f.symsort = e.Element("symsort").Value; } catch { f.symsort = ""; }                       //порядок сортировки

                    try { f.symbol = e.Element("symbol").Value; } catch { f.symbol = ""; }                          //Код показателя

                    try { f.symtype = e.Element("symtype").Value; } catch { f.symtype = ""; }

                    try { f.name = e.Element("name").Value.Trim(); } catch { f.name = ""; }                             //Название показателя

                    try { f.symset = e.Element("symset").Value; } catch { f.symset = ""; }

                    clsForm102.Add(f);
                } catch {}
            }


            //------------------------------------------------------------------------


            //Собираем отчетность по 102 форме для всех КО
            //Сбрасываем в файл отчетность КО 102 формы
            writer = new StreamWriter("cls_CreditOrgsInfo_form102.csv", false, Encoding.Default);

            foreach (Form102 e in clsForm102)
            {
                try
                {
                    Console.WriteLine("Грузим данные по 102 форме...");
                    XDocument Data102Full = null;
                    while (Data102Full == null)
                    {
                        try
                        {
                            Data102Full = XDocument.Parse(ws.Data102FormExXML(CredOrgNumbers, Convert.ToInt32(e.symbol), DateTime.Parse("02.10.2017"), DateTime.Now).OuterXml);
                        }
                        catch
                        {
                            Console.WriteLine("Trying connection...");
                        }
                    }

                    foreach (XElement d in Data102Full.Root.Elements("FD"))
                    {
                        Form102 f = new Form102();

                        try { f.RegNum = d.Element("regnum").Value; } catch { f.RegNum = ""; }     //Рег.номер КО

                        try { f.Date = d.Element("DT").Value; } catch { f.Date = ""; }             //Дата

                        try { f.value = d.Element("val").Value; } catch { f.value = ""; }          //Значение символа - cумма

                        try { f.symid = e.symid; } catch { f.symid = ""; }                         //внутренний код

                        try { f.symsort = e.symsort; } catch { f.symsort = ""; }                   //порядок сортировки

                        try { f.symbol = e.symbol; } catch { f.symbol = ""; }                      //Код показателя

                        try { f.symtype = e.symtype; } catch { f.symtype = ""; }

                        try { f.name = e.name.Trim(); } catch { f.name = ""; }                         //Название показателя

                        try { f.symset = e.symset; } catch { f.symset = ""; }

                        Console.WriteLine("{0} {1} {2}", "102 форма", f.RegNum, f.symbol);

                        writer.WriteLine(f.symid + ";" + f.symsort + ";" + f.symbol + ";" + f.symtype + ";" + f.name.Trim().Replace(";", ",").Replace("\r", " ").Replace("\n", "") + ";" + f.symset + ";" + f.RegNum + ";" + f.Date + ";" + f.value);
                        writer.Flush();
                    }
                } catch {}
            }

            writer.Close();
            writer.Dispose();

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
Пример #8
0
 public model(license type, int hours)
 {
     this.type  = type;
     this.hours = hours;
 }
Пример #9
0
 public static bool hasLicense(this Player player, license lic)
 {
     return(player.getLicenses().Find(license => license.type == lic && license.hours > 0) != null ? true : false);
 }
Пример #10
0
 protected void SaveLicence(license.myLicenseItem lic)
 {
     this.saveFileDialog.DefaultExt = "Txt";
     this.saveFileDialog.Filter = "Van ban(*.txt)|*.txt";
     this.saveFileDialog.CheckPathExists = true;
     this.saveFileDialog.AddExtension = true;
     this.saveFileDialog.RestoreDirectory = true;
     this.saveFileDialog.Title = "Thu muc luu ?";
     if (this.saveFileDialog.ShowDialog() != DialogResult.OK) return;
     common.license.SaveLicence(lic, this.saveFileDialog.FileName);
     common.sysLibs.ShowMessage("Đã lưu ra tập tin : " + this.saveFileDialog.FileName);
 }