/// <summary> /// Отправка на сервис Lotus для регистрации и согласования /// </summary> /// <param name="postAddress">Адрес отправки письма</param> /// <param name="requestModel">Модель</param> public void ServicePostLotus(string postAddress, object requestModel) { var json = new SerializeJson(); var js = json.JsonLibrary(requestModel); var request = (HttpWebRequest)WebRequest.Create(postAddress); request.Method = "POST"; request.ContentType = "application/json"; var body = Encoding.UTF8.GetBytes(js); request.ContentLength = body.Length; using (Stream stream = request.GetRequestStream()) { stream.Write(body, 0, body.Length); } using (var response = (HttpWebResponse)request.GetResponse()) { if (response.StatusCode == HttpStatusCode.OK) { string resultServer; using (StreamReader rdr = new StreamReader(response.GetResponseStream())) { resultServer = rdr.ReadToEnd(); } var conf = (Confirmation)json.JsonDeserializeObjectClass <Confirmation>(resultServer); } } }
/// <summary> /// Создание процесса Прием КРСБ Наследника Массово /// </summary> /// <param name="conectstring">Строка соединения</param> /// <param name="setting">Настройки</param> /// <returns></returns> public string CreateKrsb(string conectstring, FullSetting setting) { try { var delocreate = new AddKrsb(); var sqlconnect = new SqlConnectionType(); SerializeJson serializeJson = new SerializeJson(); if (setting.DeloPriem.DelaPriem.Count > 0) { delocreate.CreateDelo(setting.DeloPriem.DelaPriem); sqlconnect.StartingProcedure <string, string>(conectstring, ((ServiceWcf) sqlconnect.SelectFullParametrSqlReader(conectstring, ModelSqlFullService.ProcedureSelectParametr, typeof(ServiceWcf), ModelSqlFullService.ParamCommand("19"))).ServiceWcfCommand.Command); return(serializeJson.JsonLibrary((CreateDela)sqlconnect.SelectFullParametrSqlReader <string, string>(conectstring, ((ServiceWcf) sqlconnect.SelectFullParametrSqlReader(conectstring, ModelSqlFullService.ProcedureSelectParametr, typeof(ServiceWcf), ModelSqlFullService.ParamCommand("20"))).ServiceWcfCommand.Command, typeof(CreateDela)))); } Loggers.Log4NetLogger.Error(new Exception("Нет дел для создания процессов!!!")); return(null); } catch (Exception e) { Loggers.Log4NetLogger.Error(e); return(null); } }
/// <summary> /// Рассылка изменений по таблице праздничные дни /// </summary> /// <param name="holiday"></param> public static void SubscribeRbHoliday(Rb_Holiday holiday) { IHubContext context = GlobalHost.ConnectionManager.GetHubContext <SignalRinventory>(); Loggers.Log4NetLogger.Info(new Exception("Модель настроек праздничных дней пошла: " + holiday.Id)); SerializeJson json = new SerializeJson(); context.Clients.All.SubscribeRbHoliday(json.JsonLibrary(holiday)); }
/// <summary> /// Подписка на изменение Поставка-контракт /// </summary> /// <param name="nameSupply">Поставка-контракт</param> public static void SubscribeSupply(Supply nameSupply) { IHubContext context = GlobalHost.ConnectionManager.GetHubContext <SignalRinventory>(); Loggers.Log4NetLogger.Info(new Exception("Модель Поставка-контракт рассылка пошла: " + nameSupply.NameSupply)); SerializeJson json = new SerializeJson(); context.Clients.All.SubscribeSupply(json.JsonLibrary(nameSupply)); }
/// <summary> /// Вытягивание выборки на сайт для поставления в нее параметров данных /// </summary> /// <param name="setting">Параметры настройки</param> /// <returns></returns> public string ServiceCommand(FullSetting setting) { var sqlConnect = new SqlConnectionType(); SerializeJson serializeJson = new SerializeJson(); return(serializeJson.JsonLibrary( (ServiceWcf) sqlConnect.SelectFullParametrSqlReader(ConnectionString, ModelSqlFullService.ProcedureSelectParametr, typeof(ServiceWcf), ModelSqlFullService.ParamCommand(setting.ParamService.IdCommand.ToString())))); }
/// <summary> /// Данный блок относится к БДК /// </summary> /// <param name="select">Команда Select</param> /// <returns>Возвращаем модель JSON в виде строки</returns> public string BdkSqlSelect(string select) { var sqlConnect = new SqlConnectionType(); SerializeJson serializeJson = new SerializeJson(); return (serializeJson.JsonLibrary( (AnalisBdkFull) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, select, typeof(AnalisBdkFull)))); }
/// <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); }
/// <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); }
/// <summary> /// Выполнение команд с генерацией параметров на ФРОНТЕ /// </summary> /// <param name="command">Команда</param> /// <returns></returns> public string SqlSelect(AngularModel command) { var sqlConnect = new SqlConnectionType(); SerializeJson serializeJson = new SerializeJson(); switch (command.Id) { case 1: return (serializeJson.JsonLibrary( (SysNum) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, command.Command, typeof(SysNum)))); case 12: return (serializeJson.JsonLibrary( (Mail) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, command.Command, typeof(Mail)))); case 13: return (serializeJson.JsonLibrary( (ModelFull) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, command.Command, typeof(ModelFull)))); case 14: return (serializeJson.JsonLibrary( (Soprovod) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, command.Command, typeof(Soprovod)))); case 21: return (serializeJson.JsonLibrary( (No) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, command.Command, typeof(No)))); case 29: return (serializeJson.JsonLibrary( (ServerAndComputer) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, command.Command, typeof(ServerAndComputer)))); default: return("Данная команда не определена!!!"); } }
/// <summary> /// Отправка запроса на сервер /// </summary> /// <param name="serviceAddress">Сервисный адрес</param> /// <param name="requestType">Тип объекта класса</param> /// <returns></returns> public string ResultPost(string serviceAddress, object requestType) { try { var json = new SerializeJson(); var js = json.JsonLibrary(requestType); var body = Encoding.UTF8.GetBytes(js); var request = (HttpWebRequest)WebRequest.Create(serviceAddress); request.Method = "POST"; request.ContentType = "application/json"; request.ContentLength = body.Length; using (Stream stream = request.GetRequestStream()) { stream.Write(body, 0, body.Length); stream.Close(); } var response = (HttpWebResponse)request.GetResponse(); response.Close(); if (response.StatusCode == HttpStatusCode.Gone) { var log = new SqlPreCheckLog(); log.AddTaxJournal(Environment.UserName, "POST", HttpStatusCode.Gone.ToString(), "Возникла фатальная ошибка 410!"); } if (response.StatusCode == HttpStatusCode.OK) { var log = new SqlPreCheckLog(); log.AddTaxJournal(Environment.UserName, "POST", HttpStatusCode.OK.ToString(), "Все хорошо!"); return("ОК!"); } if (response.StatusCode == HttpStatusCode.BadRequest) { var log = new SqlPreCheckLog(); log.AddTaxJournal(Environment.UserName, "POST", HttpStatusCode.BadRequest.ToString(), "Данные не проходят проверку!"); return("ОК!"); } return(null); } catch (Exception e) { //Лог ошибки var log = new SqlPreCheckLog(); log.AddTaxJournal(Environment.UserName, "POST", "Ошибка", e.ToString()); return(null); } }
/// <summary> /// Выборка Всех из БД B зависимости от номера 1: Пользователи 2: Отделы и т д /// </summary> /// <returns></returns> public string SelectFull(ModelParametr.ModelParametr parametr) { var sqlconnect = new SqlConnectionType(); SerializeJson serializeJson = new SerializeJson(); switch (parametr.IdParamSelect) { case 1: return (serializeJson.JsonLibrary( (AllUsers) sqlconnect.SelectFullParametrSqlReader(Connection, Command.InfoLogic.NameProcedure, typeof(AllUsers), ModelProcedure.ModelProcedure.ParamCommand(parametr.IdParamSelect.ToString())))); default: return(null); } }
/// <summary> /// Запрос по процедурам лежащим в них выборок Предпроверка генерация динамических таблиц (сама таблица) /// </summary> /// <param name="model">С запроса</param> /// <returns></returns> public ModelSelect ResultSelectProcedure <T>(ModelSelect model) { try { SerializeJson serializeJson = new SerializeJson(); var result = Automation.Database.SqlQuery <T>(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)).ToList(); dynamic expand = new ExpandoObject(); AddProperty(expand, model.ParameterProcedureWeb.ModelClassFind, result); model.ResultSelectProcedureWeb = serializeJson.JsonLibrary(expand); return(model); } catch (Exception e) { Loggers.Log4NetLogger.Error(e); return(null); } }
/// <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); } }
/// <summary> /// Выполнение команды на сервере под номером /// </summary> /// <param name="setting">Параметры</param> /// <returns></returns> public string SqlSelect(FullSetting setting) { var sqlConnect = new SqlConnectionType(); SerializeJson serializeJson = new SerializeJson(); var ping = new PingIp.PingIp(); switch (setting.Id) { case 29: var server = ping.Ping( (ServerAndComputer) sqlConnect.SelectFullParametrSqlReader <string, string>(ConnectionString, Service(setting).ServiceWcfCommand.Command, typeof(ServerAndComputer))); return(serializeJson.JsonLibrary(server)); default: return("Данная команда не определена!!!"); } }
/// <summary> /// Получение\выгрузка всех праздничных дней /// </summary> /// <returns></returns> public string GetHolidays() { SerializeJson json = new SerializeJson(); return(json.JsonLibrary(Inventory.Rb_Holidays)); }
/// <summary> /// Выгрузка поставщиков /// </summary> /// <returns></returns> public string Supply() { SerializeJson json = new SerializeJson(); return(json.JsonLibrary(Inventory.Supplies)); }