public void AddMessages() { var count = _messenger.GetMessageCount(); if (count != 0) { return; } var index = 0; while (index++ < 50) { var message = new InvoiceMessage { Id = Guid.NewGuid().ToString(), EventDate = GetDate(), TenantCode = "MaritzCX", ApplicationSource = "Pledge", Content = $"Invoice {index}", RecordsProcessed = GetCount(), Country = GetCountry(index), Dealer = GetDealer(index) }; _messenger.AddMessage(message); } }
public void InvoiceMessage(InvoiceMessage invoiceMessage, Vendor administrativeVendor, List <OrderLine> orderLines) { StringBuilder requestString = new StringBuilder(); XmlWriterSettings settings = new XmlWriterSettings(); settings.Encoding = Encoding.UTF8; using (XmlWriter xw = XmlWriter.Create(requestString, settings)) { xw.WriteProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""); XmlSerializer serializer = new XmlSerializer(typeof(InvoiceMessage)); XmlSerializerNamespaces nm = new XmlSerializerNamespaces(); nm.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance"); serializer.Serialize(xw, invoiceMessage, nm); XmlDocument document = new XmlDocument(); document.LoadXml(requestString.ToString()); HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(administrativeVendor.VendorSettings.GetValueByKey("EDIUrl", string.Empty)); request.Method = "POST"; HttpPurchasePostState state = new HttpPurchasePostState(orderLines, administrativeVendor, request, "Invoice"); byte[] byteData = UTF8Encoding.UTF8.GetBytes(document.OuterXml); using (Stream s = request.GetRequestStream()) { s.Write(byteData, 0, byteData.Length); } IAsyncResult result = request.BeginGetResponse(HttpCallBack, state); result.AsyncWaitHandle.WaitOne(); } }
public static void Build() { var trace = new TraceMessage { Id = Guid.NewGuid().ToString(), EventDate = DateTime.UtcNow, TenantCode = "MaritzCX", ApplicationSource = "Pledge", Content = "Trace", TotalFail = 3, TotalPass = 3, FileName = "Trace file.txt", JobId = Guid.NewGuid().ToString() }; var incidence = new IncidenceMessage { Id = Guid.NewGuid().ToString(), EventDate = DateTime.Now, TenantCode = "MaritzCX", ApplicationSource = "Pledge", Content = $"Incidence", StartDate = DateTime.UtcNow, EndDate = DateTime.UtcNow, MachineName = "incidence Machine" }; var invoice = new InvoiceMessage { Id = Guid.NewGuid().ToString(), EventDate = DateTime.UtcNow, TenantCode = "MaritzCX", ApplicationSource = "Pledge", Content = $"Invoice", RecordsProcessed = 343, Country = "Japan", Dealer = "Nissan" }; var traceContent = Build(trace, "cx_trace", "trace"); var incidenceContent = Build(incidence, "cx_incidence", "incidence"); var invoiceContent = Build(invoice, "cx_invoice", "invoice"); System.Console.WriteLine("Trace JSON"); System.Console.WriteLine(traceContent); System.Console.WriteLine(); System.Console.WriteLine("Incidence JSON"); System.Console.WriteLine(incidenceContent); System.Console.WriteLine(); System.Console.WriteLine("Invoice JSON"); System.Console.WriteLine(invoiceContent); }
public Response SendInvoice(InvoiceMessage message) { string url = baseUrl + "sendInvoice"; string content = Utils.Serialize(message); HttpResponseMessage response = client.PostAsync(url, new StringContent(content, Encoding.UTF8, "application/json")).Result; //if (response.StatusCode == HttpStatusCode.OK) //{ string result = response.Content.ReadAsStringAsync().Result; Response res = Utils.Deserialize <Response>(result); return(res); // } // return null; }