private void WriteBase(DataRow rw, FileTipe FType) { string sql = ""; if (FType == FileTipe.Process) { sql = "p_RMS_Tasks_Hist_INSERT"; } else if (FType == FileTipe.Agents) { sql = "p_RMS_Users_Hist_INSERT"; } else { sql = "p_RMS_Deicing_Hist_INSERT"; } SqlCommand cmd = new SqlCommand(sql, connection); cmd.CommandType = CommandType.StoredProcedure; for (int i = 0; i < rw.Table.Columns.Count; i++) { cmd.Parameters.AddWithValue("@" + rw.Table.Columns[i].ColumnName, rw[i]); } cmd.ExecuteNonQuery(); }
public string Parse(FileTipe FType, string dataLine, string cnStr) { connection = new SqlConnection(cnStr); allRowParam addParam = new allRowParam(); addParam.Msg = "OK"; if (FType == FileTipe.Agents) { addParam.FileName = "agents.xml"; //Path.GetFileName(fileName); } else if (FType == FileTipe.Process) { addParam.FileName = "process.xml"; } else { addParam.FileName = "de-icing.xml"; } addParam.WriteReport = DateTime.Now; addParam.FileDate = DateTime.Now; addParam.RF_PK = Guid.NewGuid(); string logstr1 = addParam.FileName + ":" + addParam.FileDate.ToString() + "-"; try { DataTable AODBTable = getTable(dataLine, addParam, FType); int n = AODBTable.Rows.Count; connection.Open(); //Записываем в базу строки таблицы for (int i = 0; i < n; i++) { WriteBase(AODBTable.Rows[i], FType); } //Обновляем основную таблицу CloseBase(addParam); connection.Close(); } catch (Exception ex) { connection.Close(); addParam.Msg = "Error:" + ex.Message; addParam.retCode = -1; } string logstr2 = addParam.WriteReport.ToString() + "-" + addParam.Msg; return(logstr1 + logstr2 + "\n"); }
private DataTable getTable(String ResHTML, allRowParam addParam, FileTipe FType) { string sql = ""; if (FType == FileTipe.Process) { sql = "select * from RMS_Tasks_Hist (nolock) where 1=2"; } else if (FType == FileTipe.Agents) { sql = "select * from RMS_Users_Hist (nolock) where 1=2"; } else { sql = "select * from RMS_Deicing_Hist (nolock) where 1=2"; } SqlDataAdapter da = new SqlDataAdapter(sql, connection); DataTable rTab = new DataTable(); da.Fill(rTab); String FindTr = @"<ROW num=.*?>((.|\n)*?)</ROW>"; Regex rr = new Regex(FindTr, RegexOptions.IgnoreCase); MatchCollection ListRow = rr.Matches(ResHTML); for (int i = 0; i < ListRow.Count; i++) { Match mRow = ListRow[i]; String RowTxt = mRow.Groups[1].Value; DataRow rw = rTab.NewRow(); rTab.Rows.Add(rw); if (FType == FileTipe.Agents) { rw["RU_PK"] = Guid.NewGuid(); rw["RU_HIST"] = addParam.RF_PK; rw["RU_Flt_ID"] = int.Parse(GetField(RowTxt, "FLIGHT_ID")); rw["RU_AgentID"] = GetField(RowTxt, "AGENT_CODE"); rw["RU_AgentName"] = GetField(RowTxt, "AGENT_NAME"); } else if (FType == FileTipe.Process) //25.09.2019 { rw["RM_PK"] = Guid.NewGuid(); rw["RM_HIST"] = addParam.RF_PK; rw["RM_Flt_ID"] = int.Parse(GetField(RowTxt, "FLT_ID")); rw["RM_ProcessID"] = int.Parse(GetField(RowTxt, "PROCESSID")); rw["RM_ProcessName"] = GetField(RowTxt, "PROCESSNAME"); rw["RM_NotSendInfo"] = GetField(RowTxt, "NOT_SEND_INFO"); if (!String.IsNullOrEmpty(GetField(RowTxt, "ACTUALTIMEBEGIN"))) { rw["RM_ActualTimeBegin"] = DateTime.Parse(GetField(RowTxt, "ACTUALTIMEBEGIN")); } if (!String.IsNullOrEmpty(GetField(RowTxt, "ACTUALTIMEEND"))) { rw["RM_ActualTimeEnd"] = DateTime.Parse(GetField(RowTxt, "ACTUALTIMEEND")); } if (!String.IsNullOrEmpty(GetField(RowTxt, "PROCESS_MOD_FLAG"))) { rw["RM_ProcessModFlag"] = int.Parse(GetField(RowTxt, "PROCESS_MOD_FLAG")); } if (!String.IsNullOrEmpty(GetField(RowTxt, "SOURCEREF"))) { rw["RM_SourceRef"] = int.Parse(GetField(RowTxt, "SOURCEREF")); } } else { rw["DE_PK"] = Guid.NewGuid(); rw["DE_HIST"] = addParam.RF_PK; rw["DE_FLIGHT_ID"] = int.Parse(GetField(RowTxt, "FLIGHT_ID")); rw["DE_OPERATOR_NAME"] = GetField(RowTxt, "OPERATOR_NAME"); rw["DE_AUTO_NUM_POM"] = GetField(RowTxt, "AUTO_NUM_POM"); rw["DE_TYPE_I"] = int.Parse(GetField(RowTxt, "TYPE_I")); rw["DE_TYPE_IV"] = int.Parse(GetField(RowTxt, "TYPE_IV")); rw["DE_WATER"] = int.Parse(GetField(RowTxt, "WATER")); rw["DE_TAB_NUM"] = GetField(RowTxt, "TAB_NUM"); rw["DE_IO"] = GetField(RowTxt, "IO"); } } return(rTab); }
/// <summary> /// Recoge un archivo css y lo devuelve sin lineas en blanco /// </summary> /// <param name="fileName">Nombre del archivo</param> /// <param name="folder">Carpeta contenedora en el servidor desde la raiz</param> /// <param name="min">Nombre del archivo a minificar sin extension</param> /// <returns></returns> public static string InlineFile(FileTipe tipo, string fileName, string folder, string min) { string retorno = string.Empty; switch (tipo) { case FileTipe.css: retorno = "<style type=\"text/css\">"; break; case FileTipe.javascript: retorno = "<script type=\"text/javascript\">"; break; } try { ficheros f = new ficheros(); string file = f.RutaCompleta(folder) + fileName; if (f.existeFichero(fileName, folder) == true) { StreamReader read = new StreamReader(file); string content = read.ReadToEnd(); if (tipo == FileTipe.css) { content = content.Replace(Environment.NewLine, " "); content = content.Replace((char)10, ' '); content = content.Replace((char)11, ' '); content = content.Replace((char)12, ' '); content = content.Replace((char)13, ' '); content = content.Replace("\t", ""); content = content.Replace(" ", ""); content = content.Replace("; ", ";"); content = content.Replace(": ", ":"); content = content.Replace(" {", "{"); content = content.Replace("{ ", "{"); content = content.Replace(" }", "}"); content = content.Replace("} ", "}"); } retorno += content; read.Close(); } f = null; } catch { retorno += ""; } switch (tipo) { case FileTipe.css: retorno += "</style>"; break; case FileTipe.javascript: retorno += "</script>"; break; } return(retorno); }
/// <summary> /// Recoge un archivo css y lo devuelve sin lineas en blanco /// </summary> /// <param name="fileName">Nombres de los archivos</param> /// <param name="folder">Carpetas contenedoras en el servidor desde la raiz en el mismo orden que los archivos</param> /// <param name="min">Nombre del archivo a minificar sin extension</param> /// <returns></returns> public static string InlineFile(FileTipe tipo, string[] fileName, string[] folder, string min, bool inline = false) { string retorno = string.Empty; string fichero = min; ficheros f = new ficheros(); switch (tipo) { case FileTipe.css: fichero += ".css"; retorno = "<style>"; break; case FileTipe.javascript: fichero += ".js"; retorno = "<script>"; break; } string ok = string.Empty; try { for (int i = 0; i < fileName.Length; i++) { ok += "/* " + folder[i] + "/" + fileName[i]; if (string.IsNullOrEmpty(folder[i])) { ok += " (fichero remoto) */"; System.Net.WebClient wc = new System.Net.WebClient(); string content = wc.DownloadString(fileName[i]); wc.Dispose(); wc = null; if (tipo == FileTipe.css) { content = content.Replace(Environment.NewLine, " "); content = content.Replace((char)10, ' '); content = content.Replace((char)11, ' '); content = content.Replace((char)12, ' '); content = content.Replace((char)13, ' '); content = content.Replace("\t", ""); content = content.Replace(" ", " "); content = content.Replace("; ", ";"); content = content.Replace(": ", ":"); content = content.Replace(" {", "{"); content = content.Replace("{ ", "{"); content = content.Replace(" }", "}"); content = content.Replace("} ", "}"); } ok += content; } else { if (f.existeFichero(fileName[i], folder[i])) { ok += " exist */"; string file = f.RutaCompleta(folder[i]) + fileName[i]; StreamReader read = new StreamReader(file); string content = read.ReadToEnd(); System.Text.RegularExpressions.Regex rgx = new System.Text.RegularExpressions.Regex(@"(?=\/\*)(.*)(\*\/)"); content = rgx.Replace(content, ""); if (tipo == FileTipe.css) { content = content.Replace(Environment.NewLine, " "); content = content.Replace((char)10, ' '); content = content.Replace((char)11, ' '); content = content.Replace((char)12, ' '); content = content.Replace((char)13, ' '); content = content.Replace("\t", ""); content = content.Replace(" ", ""); content = content.Replace("; ", ";"); content = content.Replace(": ", ":"); content = content.Replace(" {", "{"); content = content.Replace("{ ", "{"); content = content.Replace(" }", "}"); content = content.Replace("} ", "}"); } ok += content; //retorno += content; read.Close(); } else { ok += " not exist */"; } } } } catch (Exception ex) { retorno = "/* exception " + ex.ToString() + "*/"; } if (inline == true) { switch (tipo) { case FileTipe.css: retorno += ok + "</style>"; break; case FileTipe.javascript: retorno += ok + "</script>"; break; } } else { f.guardaDato(fichero, ok, "dat"); switch (tipo) { case FileTipe.css: retorno = "<link rel=\"stylesheet\" href=\"" + string.Format("/dat/" + fichero + "?v={0}", CacheExpire(0)) + "\" type=\"text/css\" />"; break; case FileTipe.javascript: retorno = "<script src=\"" + string.Format("/dat/" + fichero + "?v={0}", CacheExpire(0)) + "\"></script>"; break; } } f = null; return(retorno); }