private InvoiceInfo MapInvoiceToInvoiceInfo(Invoice invoice) { var invoiceforreturn = new InvoiceInfo(); invoiceforreturn.Id = invoice.Id; invoiceforreturn.StoreName = invoice.Store.Name; invoiceforreturn.NetPrice = invoice.NetPrice; invoiceforreturn.TotalPrice = invoice.TotalPrice; invoiceforreturn.Code = invoice.Code; invoiceforreturn.CreatedBy = invoice.CreatedBy.UserName; invoiceforreturn.CreatedById = invoice.CreatedBy.Id; invoiceforreturn.CreationDate = invoice.CreationDate; for (var i = 0; i < invoice.InvoiceLines.Count; i++) { var temp = invoice.InvoiceLines.ToList()[i]; var invoiceInfoLineTemp = new InvoiceInfoLine(); invoiceInfoLineTemp.Id = temp.Id; invoiceInfoLineTemp.ItemCode = temp.Item.Code; invoiceInfoLineTemp.ItemName = temp.Item.Name; invoiceInfoLineTemp.ItemId = temp.Item.Id; invoiceInfoLineTemp.NetPrice = temp.NetPrice; invoiceInfoLineTemp.UnitPrice = temp.UnitPrice; invoiceInfoLineTemp.Quantity = temp.Quantity; invoiceInfoLineTemp.TotalPrice = temp.TotalPrice; invoiceforreturn.InvoiceInfoLines.Add(invoiceInfoLineTemp); } return(invoiceforreturn); }
public static Guid?CreateInvoice(InvoiceViewModel invoiceViewModel) { if (invoiceViewModel != null) { return(null); } var invoiceItems = invoiceViewModel.InvoiceItems; var invoice = new InvoiceInfo(); invoice.Id = Guid.NewGuid(); invoice.CreatedBy = "09123794709"; for (int i = 0; i < invoiceItems.Count; i++) { var temp = new InvoiceInfoLine(); temp.Id = Guid.NewGuid(); temp.ItemCode = invoiceItems[i].ItemNumber; temp.ItemName = invoiceItems[i].ItemName; temp.ItemId = invoiceItems[i].ItemId; temp.NetPrice = invoiceItems[i].NetPrice; temp.Quantity = invoiceItems[i].Quantity; temp.TotalPrice = invoiceItems[i].TotalPrice; temp.UnitPrice = invoiceItems[i].UnitPrice; invoice.InvoiceInfoLines.Add(temp); } invoice.Code = "75"; invoice.CreationDate = DateTime.UtcNow; invoice.NetPrice = invoiceItems.Sum(s => s.DecPrice); invoice.TotalPrice = invoiceItems.Sum(d => d.TotalPrice); using (HttpClient client = new HttpClient()) { try { var url = ApiConfiguration.PostInvoiceUrl; var json = JsonConvert.SerializeObject(invoice); var stringContent = new StringContent(json, UnicodeEncoding.UTF8, "application/json"); var response = client.PostAsync(url, stringContent).Result; } catch (Exception e) { } } return(invoice.Id); }