Пример #1
0
 /// <summary>
 /// Загрузка деклараций всех в БД
 /// </summary>
 /// <param name="declarationAll">Декларации</param>
 /// <param name="declarationData">Массив строк декларации</param>
 public void AddDeclarationAllModel(DeclarationAll declarationAll, ArrayBodyDoc declarationData)
 {
     if (!(from declarationAlls in Automation.DeclarationAlls
           where declarationAlls.RegNumDecl == declarationAll.RegNumDecl
           select new { DeclarationAlls = declarationAlls }).Any())
     {
         XmlReadOrWrite xml     = new XmlReadOrWrite();
         var            xsdFile = $"{ConfigurationManager.AppSettings["PathXsdScheme"]}XsdAllBodyData.xsd";
         var            xmlFile = $"{ConfigurationManager.AppSettings["PathDownloadTempXml"]}DeclarationDataAll.xml";
         xml.CreateXmlFile(xmlFile, declarationData, typeof(XsdShemeSqlLoad.XsdAllBodyData.ArrayBodyDoc));
         Automation.DeclarationAlls.Add(declarationAll);
         try
         {
             Automation.SaveChanges();
             BulkInsertIntoDb(xsdFile, xmlFile);
         }
         catch (DbEntityValidationException ex)
         {
             foreach (DbEntityValidationResult validationError in ex.EntityValidationErrors)
             {
                 Trace.WriteLine(validationError.Entry.Entity.ToString());
                 Trace.WriteLine("");
                 foreach (DbValidationError err in validationError.ValidationErrors)
                 {
                     Trace.WriteLine(err.ErrorMessage);
                 }
             }
         }
     }
     //Обновление данных и внутренних полей не требуется
 }
Пример #2
0
        public void MemoGen()
        {
            MemoReport memo = new MemoReport();
            //   memo.CreateDocument("D:\\Testing\\",null,null);
            ModelMemoReport memoReport = new ModelMemoReport()
            {
                SelectParameterDocument = new SelectParameterDocument()
                {
                    IdUser = 33, NameDocument = "RR", NumberDocument = 4, TabelNumber = "7751-00-099", TypeDocument = 1
                }
            };
            SelectSql         select       = new SelectSql();
            SelectImns        selectFrames = new SelectImns();
            SqlConnectionType sql          = new SqlConnectionType();
            XmlReadOrWrite    xml          = new XmlReadOrWrite();

            select.SelectMemoReport(ref memoReport);
            var commandOrders = string.Format(selectFrames.LastOrder, memoReport.UserDepartment.SmallTabelNumber);
            var userOrder     = sql.XmlString("Data Source=i7751-app020;Initial Catalog=imns51;Integrated Security=True;MultipleActiveResultSets=True", commandOrders);

            if (userOrder != null)
            {
                userOrder = string.Concat("<Orders>", userOrder, "</Orders>");
                memoReport.UserDepartment.Orders = ((Orders)xml.ReadXmlText(userOrder, typeof(Orders)));
            }
            memo.CreateDocument("D:\\Testing\\", memoReport);
        }
Пример #3
0
        /// <summary>
        /// Добавление выписок в БД
        /// </summary>
        /// <param name="cashBankAllUlFace">Выписки</param>
        /// <param name="innUl">ИНН ЮЛ</param>
        public void AddCashBankAllUlFace(ArrayBodyDoc cashBankAllUlFace, string innUl)
        {
            //ИНН Есть ли лицо
            int idUl;

            using (var context = new Base.Automation())
            {
                context.Database.CommandTimeout = 120000;
                idUl = (from users in context.UlFaces where users.Inn == innUl select users.IdUl).SingleOrDefault();
                cashBankAllUlFace.CashBankAllUlFace.ToList().ForEach(cashBank => cashBank.IdUl = idUl);
            }
            if (cashBankAllUlFace.CashBankAllUlFace[0].IdUl != 0)
            {
                //Удаляем старые записи по выписке заполняем новыми
                using (var contextDelete = new Base.Automation())
                {
                    contextDelete.Database.CommandTimeout = 120000;
                    contextDelete.CashBankAllUlFaces.RemoveRange(contextDelete.CashBankAllUlFaces.Where(x => x.IdUl == idUl));
                    contextDelete.SaveChanges();
                }
                XmlReadOrWrite xml     = new XmlReadOrWrite();
                var            xsdFile = $"{ConfigurationManager.AppSettings["PathXsdScheme"]}XsdAllBodyData.xsd";
                var            xmlFile = $"{ConfigurationManager.AppSettings["PathDownloadTempXml"]}CashDataBank.xml";
                xml.CreateXmlFile(xmlFile, cashBankAllUlFace, typeof(ArrayBodyDoc));
                BulkInsertIntoDb(xsdFile, xmlFile);
            }
            //Отсутствует лицо сохранение не возможно
        }
Пример #4
0
 /// <summary>
 /// Сохранение отчета по Информации о ролях и ветках
 /// </summary>
 /// <param name="pathReport">Путь сохранения файла с информацией о ролями</param>
 /// <param name="infoRuleTemplate">Шаблон Подсистем</param>
 public static void CreateFileInfoRuleTemplate(string pathReport, InfoRuleTemplate infoRuleTemplate)
 {
     if (File.Exists(pathReport))
     {
         XmlReadOrWrite read = new XmlReadOrWrite();
         read.AddInfoRuleTemplate(pathReport, infoRuleTemplate);
     }
     else
     {
         var convert = new Converts.ConvettToXml.XmlConvert();
         convert.SerializerClassToXml(pathReport, infoRuleTemplate, typeof(InfoRuleTemplate));
     }
 }
Пример #5
0
 /// <summary>
 /// Сохранение Отчета по миграции
 /// </summary>
 /// <param name="pathreport">Путь сохранения файла с ролями</param>
 /// <param name="userrule">Роли и пользователи</param>
 public static void CreateFileRule(string pathreport, UserRules userrule)
 {
     if (File.Exists(pathreport))
     {
         XmlReadOrWrite read = new XmlReadOrWrite();
         read.AddRuleUsers(pathreport, userrule);
     }
     else
     {
         var convert = new Converts.ConvettToXml.XmlConvert();
         convert.SerializerClassToXml(pathreport, userrule, typeof(UserRules));
     }
 }
Пример #6
0
 /// <summary>
 ///  Проверка наличия журнала сделаных
 /// </summary>
 /// <param name="reportMigration">Путь к отчету с ошибками о миграции</param>
 /// <param name="report">Модель отчета о миграциии</param>
 public static void CreateReportMigration(string reportMigration, MigrationParse report)
 {
     if (File.Exists(reportMigration))
     {
         XmlReadOrWrite read = new XmlReadOrWrite();
         read.AddReportMigrationElemrnt(reportMigration, report);
     }
     else
     {
         var convert = new Converts.ConvettToXml.XmlConvert();
         convert.SerializerClassToXml(reportMigration, report, typeof(MigrationParse));
     }
 }
Пример #7
0
 /// <summary>
 ///  Проверка наличия журнала ошибок
 /// </summary>
 /// <param name="pathjurnal">Путь к журналу</param>
 /// <param name="znacenie">Обрабоатываемое значение</param>
 /// <param name="branch">Ветка в которой отрабатывае</param>
 /// <param name="error">Ошибка</param>
 public static void JurnalError(string pathjurnal, string znacenie, string branch, string error)
 {
     if (File.Exists(pathjurnal))
     {
         XmlReadOrWrite read = new XmlReadOrWrite();
         read.AddElementError(pathjurnal, znacenie, branch, error);
     }
     else
     {
         var convert = new Converts.ConvettToXml.XmlConvert();
         convert.CreateJurnalError(pathjurnal, znacenie, branch, error);
     }
 }
Пример #8
0
 /// <summary>
 ///  Проверка наличия журнала сделаных
 /// </summary>
 /// <param name="pathjurnal">Путь к журналу</param>
 /// <param name="znacenie">Обрабоатываемое значение</param>
 /// <param name="ok">Параметр что сделали</param>
 public static void JurnalOk(string pathjurnal, string znacenie, string ok)
 {
     if (File.Exists(pathjurnal))
     {
         XmlReadOrWrite read = new XmlReadOrWrite();
         read.AddElementOk(pathjurnal, znacenie, ok);
     }
     else
     {
         var convert = new  Converts.ConvettToXml.XmlConvert();
         convert.CreateJurnalOk(pathjurnal, znacenie, ok);
     }
 }
Пример #9
0
        public void TestOfficialXlsx()
        {
            ReportCardModel model = new ReportCardModel()
            {
                SettingParameters = new SettingParameters()
                {
                    TabelNumber = "7751-00-548", Year = 2021, IdDepartment = 8,
                    Type        = new Type()
                    {
                        IdType = 1, NameType = "Полный"
                    },
                    View = new View()
                    {
                        IdView = 0, NameView = "Первичный"
                    },
                    Mouth = new Mouth()
                    {
                        NumberMouthString = "09", NameMouth = "Сентябрь", NumberMouth = 9
                    }
                }
            };
            SqlConnectionType sql          = new SqlConnectionType();
            SelectImns        selectFrames = new SelectImns();
            XmlReadOrWrite    xml          = new XmlReadOrWrite();
            SelectSql         select       = new SelectSql();

            select.SelectCardModelLeader(ref model);
            var command        = string.Format(selectFrames.UserReportCard, model.SettingParameters.LeaderD.NameDepartment, $"{model.SettingParameters.Year}-{model.SettingParameters.Mouth.NumberMouthString}-01");
            var userReportCard = sql.XmlString("Data Source=i7751-app020;Initial Catalog=imns51;Integrated Security=True;MultipleActiveResultSets=True", command);

            userReportCard = string.Concat("<SettingParameters>", userReportCard, "</SettingParameters>");
            model.SettingParameters.UsersReportCard = ((SettingParameters)xml.ReadXmlText(userReportCard, typeof(SettingParameters))).UsersReportCard;
            foreach (var usersReportCard in model.SettingParameters.UsersReportCard)
            {
                var commandVacation = string.Format(selectFrames.ItemVacationNew, usersReportCard.Tab_num, $"{model.SettingParameters.Year}", $"{model.SettingParameters.Year}");
                var userVacation    = sql.XmlString("Data Source=i7751-app020;Initial Catalog=imns51;Integrated Security=True;MultipleActiveResultSets=True", commandVacation);
                userVacation = string.Concat("<UsersReportCard>", userVacation, "</UsersReportCard>");
                usersReportCard.ItemVacation = ((UsersReportCard)xml.ReadXmlText(userVacation, typeof(UsersReportCard))).ItemVacation;
                var commandDisability = string.Format(selectFrames.Disability, usersReportCard.Tab_num, $"{model.SettingParameters.Year}");
                var userDisability    = sql.XmlString("Data Source=i7751-app020;Initial Catalog=imns51;Integrated Security=True;MultipleActiveResultSets=True", commandDisability);
                userDisability             = string.Concat("<UsersReportCard>", userDisability, "</UsersReportCard>");
                usersReportCard.Disability = ((UsersReportCard)xml.ReadXmlText(userDisability, typeof(UsersReportCard))).Disability;
                var commandBusiness = string.Format(selectFrames.Business, usersReportCard.Tab_num, $"{model.SettingParameters.Year}");
                var userBusiness    = sql.XmlString("Data Source=i7751-app020;Initial Catalog=imns51;Integrated Security=True;MultipleActiveResultSets=True", commandBusiness);
                userBusiness             = string.Concat("<UsersReportCard>", userBusiness, "</UsersReportCard>");
                usersReportCard.Business = ((UsersReportCard)xml.ReadXmlText(userBusiness, typeof(UsersReportCard))).Business;
            }
            ReportCard report = new ReportCard();

            report.CreateDocument("D:\\Testing\\", model);
        }
Пример #10
0
        /// <summary>
        /// Загрузка сведений по фактическому действию патента
        /// </summary>
        /// <param name="docPatent">Модель для загрузки сведений по фактическому действию патента</param>
        public void AddSvedFactPatent(ArrayBodyDoc docPatent)
        {
            var index = docPatent.SvedFactPatent[0].IdPatent;

            if (index != 0)
            {
                Automation.SvedFactPatents.RemoveRange(Automation.SvedFactPatents.Where(x => x.IdPatent == index));
                Automation.SaveChanges();
                XmlReadOrWrite xml     = new XmlReadOrWrite();
                var            xsdFile = $"{ConfigurationManager.AppSettings["PathXsdScheme"]}XsdAllBodyData.xsd";
                var            xmlFile = $"{ConfigurationManager.AppSettings["PathDownloadTempXml"]}SvedFactPatent.xml";
                xml.CreateXmlFile(xmlFile, docPatent, typeof(ArrayBodyDoc));
                BulkInsertIntoDb(xsdFile, xmlFile);
            }
        }
Пример #11
0
        /// <summary>
        /// Добавление в БД Книги Продаж
        /// </summary>
        /// <param name="books">Книга</param>
        /// <param name="bookPurchase">Книга продаж</param>
        public void AddBookPurchase(ref Book books, ArrayBodyDoc bookPurchase)
        {
            var book = books;

            bookPurchase.BookPurchase.ToList().ForEach(sales => sales.IdBook = book.IdBook);
            using (var contextDelete = new Base.Automation())
            {
                contextDelete.Database.CommandTimeout = 120000;
                contextDelete.BookPurchases.RemoveRange(contextDelete.BookPurchases.Where(x => x.IdBook == book.IdBook));
                contextDelete.SaveChanges();
            }
            XmlReadOrWrite xml     = new XmlReadOrWrite();
            var            xsdFile = $"{ConfigurationManager.AppSettings["PathXsdScheme"]}XsdAllBodyData.xsd";
            var            xmlFile = $"{ConfigurationManager.AppSettings["PathDownloadTempXml"]}bookPurchase.xml";

            xml.CreateXmlFile(xmlFile, bookPurchase, typeof(ArrayBodyDoc));
            BulkInsertIntoDb(xsdFile, xmlFile);
            UpdeteBookPurchase(ref books);
        }
Пример #12
0
 /// <summary>
 /// Сохранение отчета по Информации о пользователях и их ролях и шаблонах
 /// </summary>
 /// <param name="path">Путь сохранения</param>
 /// <param name="infoUserTemlateAndRule">Шаблоны пользователей и ролей</param>
 public static void CreateFileInfoUserRuleTemplate(string pathReport, InfoUserTemlateAndRule infoUserTemlateAndRule)
 {
     if (File.Exists(pathReport))
     {
         XmlReadOrWrite read = new XmlReadOrWrite();
         if (infoUserTemlateAndRule.Users != null)
         {
             read.AddInfoUserRuleTemplate(pathReport, infoUserTemlateAndRule);
         }
         if (infoUserTemlateAndRule.Template != null)
         {
             read.AddInfoRuleTemplate(pathReport, infoUserTemlateAndRule);
         }
     }
     else
     {
         var convert = new Converts.ConvettToXml.XmlConvert();
         convert.SerializerClassToXml(pathReport, infoUserTemlateAndRule, typeof(InfoUserTemlateAndRule));
     }
 }
Пример #13
0
 /// <summary>
 /// Выполнение процедуры возвращающая xml файл для разбора на web UI
 /// </summary>
 /// <param name="model">Модель выборки</param>
 /// <returns></returns>
 public ModelSelect ResultSelectProcedureString <T>(ModelSelect model)
 {
     try
     {
         var           xml           = new XmlReadOrWrite();
         SerializeJson serializeJson = new SerializeJson();
         var           result        = Automation.Database.SqlQuery <string>(model.ParameterProcedureWeb.SelectUser,
                                                                             new SqlParameter(model.ParameterProcedureWeb.ParameterProcedure.Split(',')[0], model.ParametrsSelect.IdCodeProcedure),
                                                                             new SqlParameter(model.ParameterProcedureWeb.ParameterProcedure.Split(',')[1], string.IsNullOrWhiteSpace(model.ParametrsSelect.Inn) ? (object)DBNull.Value : model.ParametrsSelect.Inn),
                                                                             new SqlParameter(model.ParameterProcedureWeb.ParameterProcedure.Split(',')[2], model.ParametrsSelect.RegNumber)).ToArray();
         var resultServer = (T)xml.ReadXmlText(string.Join("", result), typeof(T));
         model.ResultSelectProcedureWeb = serializeJson.JsonLibrary(resultServer);
         return(model);
     }
     catch (Exception e)
     {
         Loggers.Log4NetLogger.Error(e);
         return(null);
     }
 }
Пример #14
0
 /// <summary>
 ///  Проверка наличия журнала сделаных
 /// </summary>
 /// <param name="pathjurnal">Путь к журналу</param>
 /// <param name="znacenie">Обрабоатываемое значение</param>
 /// <param name="ok">Параметр что сделали</param>
 public static void JurnalOk(string pathjurnal, string znacenie, string ok)
 {
     try
     {
         if (File.Exists(pathjurnal))
         {
             XmlReadOrWrite read = new XmlReadOrWrite();
             read.AddElementOk(pathjurnal, znacenie, ok);
         }
         else
         {
             var convert = new Converts.ConvettToXml.XmlConvert();
             convert.CreateJurnalOk(pathjurnal, znacenie, ok);
         }
     }
     catch (Exception e)
     {
         System.Windows.Forms.MessageBox.Show(e.ToString());
     }
 }
Пример #15
0
 /// <summary>
 /// Добавление деклараций на все
 /// </summary>
 /// <param name="declarationUl">Основа декларации</param>
 /// <param name="declarationData">Массив строк декларации</param>
 /// <param name="innUl">ИНН</param>
 public void AddDeclarationModel(DeclarationUl declarationUl, ArrayBodyDoc declarationData, string innUl)
 {
     using (var context = new Base.Automation())
     {
         context.Database.CommandTimeout = 120000;
         var idUl = (from users in context.UlFaces where users.Inn == innUl select users.IdUl).SingleOrDefault();
         declarationUl.IdUl = idUl;
     }
     if (declarationUl.IdUl != 0)
     {
         if (!(from declarationUls in Automation.DeclarationUls
               where declarationUls.RegNumDecl == declarationUl.RegNumDecl
               select new { DeclarationUls = declarationUls }).Any())
         {
             XmlReadOrWrite xml     = new XmlReadOrWrite();
             var            xsdFile = $"{ConfigurationManager.AppSettings["PathXsdScheme"]}XsdAllBodyData.xsd";
             var            xmlFile = $"{ConfigurationManager.AppSettings["PathDownloadTempXml"]}DeclarationData.xml";
             xml.CreateXmlFile(xmlFile, declarationData, typeof(XsdShemeSqlLoad.XsdAllBodyData.ArrayBodyDoc));
             Automation.DeclarationUls.Add(declarationUl);
             try
             {
                 Automation.SaveChanges();
                 BulkInsertIntoDb(xsdFile, xmlFile);
             }
             catch (DbEntityValidationException ex)
             {
                 foreach (DbEntityValidationResult validationError in ex.EntityValidationErrors)
                 {
                     Trace.WriteLine(validationError.Entry.Entity.ToString());
                     Trace.WriteLine("");
                     foreach (DbValidationError err in validationError.ValidationErrors)
                     {
                         Trace.WriteLine(err.ErrorMessage);
                     }
                 }
             }
         }
         //Обновление данных и внутренних полей не требуется
     }
     //Отсутствует лицо сохранение не возможно
 }
Пример #16
0
        /// <summary>
        /// Обновление или добавление в таблицу модель оборудования АКСИОК
        /// </summary>
        /// <param name="equipmentModels">Модель оборудования</param>
        /// <param name="typeXml">Тип разборки xml</param>
        /// <param name="idType">Ун типа</param>
        /// <param name="idProduct">Ун продукта</param>
        public void AddAndUpdateFullLoadAksiok <T>(T equipmentModels, string typeXml, int idType = 0, int idProduct = 0)
        {
            XmlReadOrWrite xmlConvert = new XmlReadOrWrite();

            Inventory.Database.ExecuteSqlCommand(LogicaSelect.SelectUser,
                                                 new SqlParameter(LogicaSelect.SelectedParametr.Split(',')[0], SqlDbType.Xml)
            {
                Value = equipmentModels == null ? SqlXml.Null : new SqlXml(new XmlTextReader(xmlConvert.ClassToXml(equipmentModels, equipmentModels.GetType()), XmlNodeType.Document, null))
            },
                                                 new SqlParameter(LogicaSelect.SelectedParametr.Split(',')[1], SqlDbType.VarChar)
            {
                Value = typeXml
            },
                                                 new SqlParameter(LogicaSelect.SelectedParametr.Split(',')[2], SqlDbType.Int)
            {
                Value = idType
            },
                                                 new SqlParameter(LogicaSelect.SelectedParametr.Split(',')[3], SqlDbType.Int)
            {
                Value = idProduct
            });
        }
Пример #17
0
        /// <summary>
        /// Добавление данных  в выписку Внутрянка
        /// </summary>
        /// <param name="statementFull">Body Statement</param>
        /// <param name="innUl">ИНН</param>
        public void AddStatementFull(XsdShemeSqlLoad.XsdAllBodyData.ArrayBodyDoc statementFull, string innUl)
        {
            //ИНН Есть ли лицо
            int idUl;

            using (var context = new Base.Automation())
            {
                context.Database.CommandTimeout = 120000;
                idUl = (from users in context.UlFaces where users.Inn == innUl select users.IdUl).SingleOrDefault();
                statementFull.StatementData.ToList().ForEach(state => state.IdUl = idUl);
            }
            if (statementFull.StatementData[0].IdUl != 0)
            {
                ////Удаляем старые записи по выписке заполняем новыми
                using (var contextDelete = new Base.Automation())
                {
                    contextDelete.Database.CommandTimeout = 120000;
                    contextDelete.StatementFulls.RemoveRange(contextDelete.StatementFulls.Where(x => x.IdUl == idUl));
                    contextDelete.SaveChanges();
                }
                XmlReadOrWrite xml     = new XmlReadOrWrite();
                var            xsdFile = $"{ConfigurationManager.AppSettings["PathXsdScheme"]}XsdAllBodyData.xsd";
                var            xmlFile = $"{ConfigurationManager.AppSettings["PathDownloadTempXml"]}DeclarationData.xml";
                xml.CreateXmlFile(xmlFile, statementFull, typeof(ArrayBodyDoc));
                BulkInsertIntoDb(xsdFile, xmlFile);
            }
            //Процедура вытягивания учредителей и Руководителей Цель Выписки и Карточки организации
            var logicModel = Automation.LogicsSelectAutomations.FirstOrDefault(logic => logic.Id == 9);

            if (logicModel != null)
            {
                using (var context = new Base.Automation())
                {
                    context.Database.CommandTimeout = 120000;
                    var resultDb = context.Database.SqlQuery <string>(logicModel.SelectUser, new SqlParameter(logicModel.SelectedParametr.Split(',')[0], innUl)).FirstOrDefault();
                }
            }
        }
Пример #18
0
 /// <summary>
 /// Получение данных для клиента на парсинг значений
 /// </summary>
 /// <param name="idTemplate">Уникальные номера шаблонов</param>
 /// <returns></returns>
 public List <LibaryXMLAutoModelXmlSql.PreCheck.Ifns51.FromAis.SrvToLoad> LoadModelPreCheck(string idTemplate)
 {
     try
     {
         var xml        = new XmlReadOrWrite();
         var logicModel = Automation.LogicsSelectAutomations.FirstOrDefault(logic => logic.Id == 5);
         if (logicModel != null)
         {
             var sqlSelectModel = logicModel.SelectUser.Replace(logicModel.SelectedParametr.Split(',')[0], idTemplate);
             var result         = Automation.Database.SqlQuery <string>(sqlSelectModel)?.ToArray();
             if (result?[0] != null)
             {
                 var resultServer = ((ArrayOfSrvToLoad)xml.ReadXmlText(string.Join("", result), typeof(ArrayOfSrvToLoad))).SrvToLoad.ToList();
                 return(resultServer);
             }
         }
     }
     catch (Exception ex)
     {
         Loggers.Log4NetLogger.Error(ex);
     }
     return(null);
 }
Пример #19
0
        /// <summary>
        /// Это для инвентаризации выборка
        /// </summary>
        /// <param name="logic">Логика</param>
        /// <returns></returns>
        public string SqlModelInventory <T>(LogicaSelect logic)
        {
            SerializeJson serializeJson = new SerializeJson();
            object        result;
            string        resultModel;

            Inventory.Database.CommandTimeout = 120000;
            if (logic.IsResultXml)
            {
                var xml = new XmlReadOrWrite();
                result = Inventory.Database.SqlQuery <string>(logic.SelectUser).ToArray();
                var resultXml = (T)xml.ReadXmlText(string.Join("", (string[])result), typeof(T));
                resultModel = serializeJson.JsonLibrary(resultXml, "dd.MM.yyyy HH:mm");
            }
            else
            {
                result = Inventory.Database.SqlQuery <T>(logic.SelectUser).ToList();
                dynamic expand = new ExpandoObject();
                AddProperty(expand, typeof(T).Name, result);
                resultModel = serializeJson.JsonLibrary(expand, "dd.MM.yyyy HH:mm");
            }
            return(resultModel);
        }
Пример #20
0
        /// <summary>
        /// Выполнение запроса и конвертация его в JSON
        /// </summary>
        /// <param name="sqlSelect">Выборка пользовательская из таблицы LogicsSelectAutomation</param>
        /// <returns></returns>
        public string SqlModelAutomation <T>(SelectParametrSheme.LogicsSelectAutomation sqlSelect)
        {
            SerializeJson serializeJson = new SerializeJson();
            object        result;
            string        resultModel;

            Automation.Database.CommandTimeout = 120000;
            if (sqlSelect.IsResultXml)
            {
                var xml = new XmlReadOrWrite();
                result = Automation.Database.SqlQuery <string>(sqlSelect.SelectUser).ToArray();
                var resultXml = (T)xml.ReadXmlText(string.Join("", (string[])result), typeof(T));
                resultModel = serializeJson.JsonLibrary(resultXml, "dd.MM.yyyy HH:mm");
            }
            else
            {
                result = Automation.Database.SqlQuery <T>(sqlSelect.SelectUser).ToList();
                dynamic expand = new ExpandoObject();
                AddProperty(expand, typeof(T).Name, result);
                resultModel = serializeJson.JsonLibrary(expand, "dd.MM.yyyy HH:mm");
            }
            return(resultModel);
        }
Пример #21
0
        public void AllIpTelephoneAndMacAdress()
        {
            var ipModel  = "10.77.67.{0}";
            var i        = 2;
            var listIp   = new List <IpAndMac>();
            var xmlWrite = new XmlReadOrWrite();

            while (i < 255)
            {
                var mac      = new IpAndMac();
                var ipAdress = string.Format(ipModel, i);
                try
                {
                    IPAddress[] address = Dns.GetHostAddresses(ipAdress);
                    byte[]      ab      = new byte[6];
                    int         len     = ab.Length;
                    SendARP(BitConverter.ToInt32(address[0].GetAddressBytes(), 0), 0, ab, ref len);
                    string[] macAddressString = new string[(int)len];
                    for (int j = 0; j < len; j++)
                    {
                        macAddressString[i] = ab[i].ToString("x2");
                    }

                    mac.Ip  = ipAdress;
                    mac.Mac = string.Join(":", macAddressString);
                }
                catch (Exception exception)
                {
                    mac.Ip  = ipAdress;
                    mac.Mac = "Mac не определен";
                }
                i++;
                listIp.Add(mac);
            }
            xmlWrite.CreateXmlFile("D:\\Telephone.xml", listIp, typeof(List <IpAndMac>));
        }
Пример #22
0
        public void TestPrintServer()
        {
            Select         auto         = new Select();
            var            ping         = new Ping();
            XmlReadOrWrite xml          = new XmlReadOrWrite();
            var            t            = auto.AllFullModel();
            var            printServer  = new PrintServer(@"\\i7751-sys030");
            var            prQueue      = printServer.GetPrintQueues();
            var            allSerNumber = auto.AllSerNumber();
            var            listPrinters = (from printer in prQueue
                                           select new Printers()
            {
                Description = printer.Description,
                Name = printer.Name,
                Ip = "10.177.172." + Regex.Match(printer.QueuePort.Name, @"(\d+)(?!.*\d)").Value,
                HasToner = printer.HasToner
            }
                                           ).ToList();
            //foreach (var fullModel in t)
            //{
            //    var findModel = Regex.Match(fullModel.NameModel, @"(\d+)(?!.*\d)").Value;
            //    foreach (var pr in listPrinters)
            //    {
            //        if (pr.Description.Contains(findModel))
            //        {
            //            pr.ModelId = fullModel.IdModel;
            //            pr.FullUrl =
            //                string.Format(
            //                    string.IsNullOrWhiteSpace(fullModel.UrlModel) ? "http://{0}" : fullModel.UrlModel,
            //                    pr.Ip);
            //            pr.IdClass = fullModel.IdClasification;

            //            PingReply pingReply = null;
            //            pingReply = ping.Send(pr.Ip);
            //            // if (pr.Ip == "10.177.172.149")
            //            //{
            //            if (pingReply.Status == IPStatus.Success)
            //            {
            //                pr.SerialNumber = StepTraining(allSerNumber, pr.FullUrl);
            //                Dispose();
            //            }
            //            else
            //            {
            //                pr.Error = "Удаленный IP не пингуется";
            //            }
            //            // }
            //        }
            //    }
            //}
            //xml.CreateXmlFile("D:\\Test.xml", listPrinters, typeof(List<Printers>));
            //auto.Dispose();
            //var mfuSerNum = new List<string>()
            //{
            //    "3389259968",
            //    "3389258155",
            //    "3389258163",
            //    "5311734336",
            //    "5311734360",
            //    "5311734220",
            //    "5311734263",
            //    "3398312405",
            //    "VNC3X07936"

            //};
            //StepTraining(mfuSerNum, "https://10.177.172.136/DevMgmt/ProductConfigDyn.xml");  //
        }
Пример #23
0
 /// <summary>
 /// Собираем модель карточки (полная)
 /// </summary>
 /// <param name="inn">ИНН</param>
 /// <param name="year">Год выгрузки</param>
 /// <returns></returns>
 public CardFaceUl CardUi(string inn, int year)
 {
     try
     {
         var xml      = new XmlReadOrWrite();
         var cardFace = new CardFaceUl()
         {
             Card = new Card()
         };
         Automation.Database.CommandTimeout = 120000;
         var logicModel = Automation.LogicsSelectAutomations.FirstOrDefault(logic => logic.Id == 8);
         if (logicModel != null)
         {
             cardFace.FaceUl = Automation.Database.SqlQuery <FaceUl>(logicModel.SelectUser,
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 1),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).FirstOrDefault();
             cardFace.BranchUlFace = Automation.Database.SqlQuery <BranchUlFace>(logicModel.SelectUser,
                                                                                 new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                                 new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 2),
                                                                                 new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.Card.List1Card = Automation.Database.SqlQuery <List1Card>(logicModel.SelectUser,
                                                                                new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                                new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 3),
                                                                                new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.HistoriUlFace = Automation.Database.SqlQuery <HistoriUlFace>(logicModel.SelectUser,
                                                                                   new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                                   new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 4),
                                                                                   new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.CashUlFace = Automation.Database.SqlQuery <CashUlFace>(logicModel.SelectUser,
                                                                             new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                             new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 5),
                                                                             new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.CashBankSpr = Automation.Database.SqlQuery <CashBankSpr>(logicModel.SelectUser,
                                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 6),
                                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.Card.List2Card = Automation.Database.SqlQuery <List2Card>(logicModel.SelectUser,
                                                                                new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                                new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 7),
                                                                                new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             var rukAndUcrh = Automation.Database.SqlQuery <string>(logicModel.SelectUser,
                                                                    new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                    new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 8),
                                                                    new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             if (rukAndUcrh[0] != null)
             {
                 var res = (CardFaceUl)xml.ReadXmlText(string.Join("", rukAndUcrh), typeof(CardFaceUl));
                 cardFace.RukAndUcrh = res.RukAndUcrh;
             }
             cardFace.ImZmTrUl = Automation.Database.SqlQuery <ImZmTrUl>(logicModel.SelectUser,
                                                                         new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                         new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 9),
                                                                         new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.Active = Automation.Database.SqlQuery <Active>(logicModel.SelectUser,
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 10),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.Balans = Automation.Database.SqlQuery <Balans>(logicModel.SelectUser,
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 11),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.Profit = Automation.Database.SqlQuery <Profit>(logicModel.SelectUser,
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 12),
                                                                     new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.Nds = Automation.Database.SqlQuery <Nds>(logicModel.SelectUser,
                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 13),
                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.FlRukUcrh = Automation.Database.SqlQuery <FlRukUcrh>(logicModel.SelectUser,
                                                                           new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                           new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 14),
                                                                           new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.SummaryBankSales = Automation.Database.SqlQuery <SummaryBankSales>(logicModel.SelectUser,
                                                                                         new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                                         new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 15),
                                                                                         new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
             cardFace.SummaryBankPurchase = Automation.Database.SqlQuery <SummaryBankPurchase>(logicModel.SelectUser,
                                                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[0], inn),
                                                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[1], 16),
                                                                                               new SqlParameter(logicModel.SelectedParametr.Split(',')[2], year)).ToArray();
         }
         return(cardFace);
     }
     catch (Exception ex)
     {
         Loggers.Log4NetLogger.Error(ex);
     }
     return(null);
 }
Пример #24
0
        /// <summary>
        /// Модель загрузки Шаблонов в БД по шаблону
        /// </summary>
        /// <typeparam name="T">Шаблон class to xml</typeparam>
        /// <param name="modelTemplate">Шаблон</param>
        /// <param name="idProcedureLoad">УН процедуры загрузки</param>
        /// <param name="idProcessBlock">УН процедуры процесса</param>
        /// <returns></returns>
        public ModelPathReport LoadModelToDataBase <T>(T modelTemplate, int idProcedureLoad, int idProcessBlock)
        {
            var report = new ModelPathReport();

            try
            {
                var isProcessTrue = Inventory.EventProcesses.FirstOrDefault(complete => complete.Id == idProcessBlock);
                if (isProcessTrue == null)
                {
                    throw new InvalidOperationException($"Фатальная ошибка отсутствует процесс Id - {idProcessBlock} в системе!");
                }
                if (isProcessTrue.IsComplete == true)
                {
                    var addObjectDb = new AddObjectDb.AddObjectDb();
                    var task        = Task.Run(() =>
                    {
                        ModelSelect model = new ModelSelect {
                            LogicaSelect = SqlSelectModel(idProcedureLoad)
                        };
                        XmlReadOrWrite xml = new XmlReadOrWrite();
                        addObjectDb.IsProcessComplete(idProcessBlock, false);
                        using (var transaction = Inventory.Database.BeginTransaction())
                        {
                            try
                            {
                                Inventory.Database.CommandTimeout = 18000;
                                Inventory.Database.ExecuteSqlCommand(model.LogicaSelect.SelectUser,
                                                                     new SqlParameter(model.LogicaSelect.SelectedParametr.Split(',')[0], SqlDbType.Xml)
                                {
                                    Value = new SqlXml(new XmlTextReader(xml.ClassToXml(modelTemplate, modelTemplate.GetType()), XmlNodeType.Document, null))
                                });
                                transaction.Commit();
                                Inventory.Dispose();
                            }
                            catch (Exception e)
                            {
                                transaction.Rollback();
                                Inventory.Dispose();
                                Loggers.Log4NetLogger.Error(e);
                            }
                        }
                    });
                    task.ConfigureAwait(true).GetAwaiter().OnCompleted((() =>
                    {
                        addObjectDb.IsProcessComplete(idProcessBlock, true);
                        addObjectDb.Dispose();
                    }));
                    report.Note = $"{isProcessTrue.NameProcess} запущен!";
                }
                else
                {
                    report.Note = $"{isProcessTrue.NameProcess} уже запущен ожидайте окончание процесса!";
                }
            }
            catch (Exception e)
            {
                report.Note = e.Message;
                Loggers.Log4NetLogger.Error(e);
            }
            return(report);
        }