This repository has been archived on 2025-05-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
cardmarketbot/ConsoleApp3/Program.cs
2023-07-25 09:24:18 +02:00

99 lines
3.4 KiB
C#

using ConsoleApp3.DataContracts;
using ConsoleApp3;
using ConsoleApp3.Contracts;
using System.Text.RegularExpressions;
using System.Diagnostics;
using System.Net;
using System.Net.Sockets;
using System.Text;
namespace CardmarketBot
{
internal class Programm
{
static void Main(string[] args)
{
CheckVerkauf("120202");
//IUsedRepository usedRepository = new UsedRepository();
// Kunden aus Cardmarket erstellen
List<Kunde> kunden = new List<Kunde>();
CardMarketParser cardMarketParser = new CardMarketParser("More-Tcg", "Magnatpower310!!");
kunden = cardMarketParser.ParseCardMarket();
// Rechnungen generieren
List<ModelRechnung> rechnungen = new List<ModelRechnung>();
InvoiceParser invoiceParser = new InvoiceParser(kunden);
rechnungen = invoiceParser.GetInvoices();
foreach (ModelRechnung item in rechnungen)
{
var str_header = item.Invoice.Header;
if (str_header != null)
{
Regex regex = new Regex("[0-9]*$");
Match matched = regex.Match(str_header);
string verkaufnummer = str_header.Substring(matched.Index);
if(!CheckVerkauf(verkaufnummer))
{
Debugger.Break();
SevdeskService sevdeskService = new SevdeskService("7251554968610b78ca865b2b774b4134");
sevdeskService.Create(item);
}
}
}
// Post CSV Erstellen
DeutschePost deutschePost = new DeutschePost(kunden);
deutschePost.GenerateCSV();
Console.WriteLine("Fertig");
Console.ReadLine();
}
private static bool CheckVerkauf(string verkaufnummer)
{
byte[] bytes = new byte[1024];
IPHostEntry host = Dns.GetHostEntry("server");
IPAddress iPAddress = host.AddressList[0];
IPEndPoint remoteEP = new IPEndPoint(iPAddress, 4000);
Socket sender = new Socket(iPAddress.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
try
{
sender.Connect(remoteEP);
Console.WriteLine("Socket connected to {0}", sender.RemoteEndPoint.ToString());
byte[] msg = Encoding.ASCII.GetBytes(string.Format("TEST #{0}<EOF>", verkaufnummer));
int bytesSent = sender.Send(msg);
int bytesRec = sender.Receive(bytes);
Console.WriteLine("Replying = {0}", Encoding.ASCII.GetString(bytes, 0, bytesRec));
sender.Shutdown(SocketShutdown.Both);
sender.Close();
}
catch (ArgumentNullException ane)
{
Console.WriteLine("ArgumentNullException : {0}", ane.ToString());
}
catch (SocketException se)
{
Console.WriteLine("SocketException : {0}", se.ToString());
}
catch (Exception e)
{
Console.WriteLine("Unexpected exception : {0}", e.ToString());
}
return true;
}
}
}