using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; using System.Net; using System.Configuration; namespace AlabusTransfer { internal class Program { static Helper.Log Log = new Helper.Log(); static void Main(string[] args) { Log.insert_entry(0, 0, "Start Alabus-Abgleich"); string url = Properties.Settings.Default.URL; CallRestMethod(url); Log.insert_entry(0, 0, "Ende Alabus-Abgleich"); clsDB db = new clsDB(); Helper.clsMailClient mc = new Helper.clsMailClient(); mc.CreateTestMessage("QW-Tool: Autom. Alabus-Import", db.get_importstatistik()); Log.insert_entry(0, 0, "Mail versandt"); } static void CallRestMethod(string url) { //var wc = new WebClient(); //var data = wc.DownloadString(url); Log.insert_entry(0, 0, "Start Alabus-Download"); string dbconnection = Properties.Settings.Default.QWToolConnectionstring; String userName = Properties.Settings.Default.UID; String passWord = Properties.Settings.Default.PWD; Uri restUri = new Uri(url); string localTarget = Properties.Settings.Default.TransferPath + "DataDownload.gz"; // String userName = "40307"; // String passWord = "Turicum18"; string noDownload = Properties.Settings.Default.NoDownload; if (noDownload != "YES") { string credentials = Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes(userName + ":" + passWord)); using (var webClient = new WebClient()) { webClient.Headers[HttpRequestHeader.Authorization] = "Basic " + credentials; webClient.DownloadFile(restUri, localTarget); } } Log.insert_entry(0, 0, "Ende Alabus-Download"); unzip_file(); load_data(); } static void unzip_file()/* TODO ERROR: Skipped SkippedTokensTrivia */ { Log.insert_entry(0, 0, "Start Unzip"); string filename = "DataDownload.gz"; string targetFolder = Properties.Settings.Default.TransferPath; filename = targetFolder + "\\" + filename; string extension; extension = System.IO.Path.GetExtension(filename); if (extension == ".gz") { Helper.zipHelper csh = new Helper.zipHelper(); var fi = new System.IO.FileInfo(filename); csh.Decompress(fi); System.Data.DataSet DS = new System.Data.DataSet(); string fn; fn = System.IO.Path.GetFileNameWithoutExtension(filename); DS.ReadXml(targetFolder + "\\" + fn); System.Data.DataSet dsverein = new System.Data.DataSet(); dsverein.Tables.Add(DS.Tables["account"].Copy()); System.Data.DataSet dsathlete = new System.Data.DataSet(); dsathlete.Tables.Add(DS.Tables["athlete"].Copy()); dsverein.WriteXml(targetFolder + "\\verein.xml"); dsathlete.WriteXml(targetFolder + "\\athlete.xml"); } Log.insert_entry(0, 0, "Ende Unzipü"); } static void load_data() { Log.insert_entry(0, 0, "Start Data Load"); clsDB db = new clsDB(); string targetFolder = Properties.Settings.Default.TransferPath; db.update_verein(targetFolder); db.update_athlete(targetFolder); Log.insert_entry(0, 0, "Ende Data Load"); db.Import_Statistik(); Log.insert_entry(0, 0, "Statistik nachgeführt"); } } }