You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
3.9 KiB
111 lines
3.9 KiB
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");
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|