public List<Guid> SaveToLocal(ReceiptExportDocument document) { var savedIds = new List<Guid>(); var result = 0; //using (var db = new AlidiLocalImportDatabaseContext()) //{ // //Find if the ExternalRef is present in local db so that we can mark it as exported in hq, // //So that it is never exported again // if (db.Re.Any(p => p.r == document.ExternalRef)) // { // var confirmListBypass = new List<Guid>(); // confirmListBypass.Add(Guid.NewGuid()); // return confirmListBypass; // } // var orderImport = new OrderImportLocal(); // orderImport.OrderExternalRef = document.ExternalRef; // orderImport.OrderRef = document.OrderRef; // orderImport.OrderType = (int)orderType; // orderImport.OutletCode = document.OutletCode; // orderImport.OutletName = document.OutletName; // orderImport.OrderDate = document.OrderDate; // orderImport.OrderDueDate = document.OrderDueDate; // orderImport.RouteName = document.RouteName; // orderImport.TotalDiscount = document.TotalDiscount; // orderImport.TotalGross = document.TotalGross; // orderImport.TotalNet = document.TotalNet; // orderImport.TotalVat = document.TotalVat; // orderImport.ShipToAddress = document.ShipToAddress; // orderImport.DateOfImport = DateTime.Now; // orderImport.ExportStatus = (int)ExportStatus.New; // db.OrderImportLocal.Add(orderImport); // db.SaveChanges(); // foreach (var item in document.LineItems) // { // var id = Guid.NewGuid(); // var orderItem = new OrderLineItemLocal(); // orderItem.LineItemId = id; // orderItem.OrderExternalRef = document.ExternalRef; // orderItem.LineItemTotalGross = item.LineItemTotalGross; // orderItem.LineItemTotalNet = item.LineItemTotalNet; // orderItem.LineItemTotalVat = item.LineItemTotalVat; // orderItem.Price = item.Price; // orderItem.ProductCode = item.ProductCode; // orderItem.VatClass = item.VatClass; // orderItem.VatPerUnit = item.VatPerUnit; // orderItem.DateOfImport = DateTime.Now; // orderItem.ExportStatus = (int)ExportStatus.New; // db.OrderLineItemLocal.Add(orderItem); // savedIds.Add(id); // } // result = db.SaveChanges(); //} if (result > 0) { return savedIds; } return null; }
public void SaveToQuickBooks(ReceiptExportDocument orderExportDocument) { throw new NotImplementedException(); }
public ReceiptExportDocument Map(Receipt receipt) { var mapto = new ReceiptExportDocument(); var order = _mainOrderRepository.GetById(receipt.DocumentParentId); string orderExternalRef = ""; string outletCode = ""; string salesmanCode = ""; string shipToAddress = ""; Guid orderId; if (order != null) { orderExternalRef = order.ExternalDocumentReference; mapto.OrderTotalGross = order.TotalGross; mapto.OrderNetGross = order.TotalNet; } if (order != null && order.DocumentIssuerCostCentre is DistributorSalesman) { salesmanCode = order.DocumentIssuerCostCentre.CostCentreCode; } else if(order != null && order.DocumentRecipientCostCentre is DistributorSalesman) { salesmanCode = order.DocumentRecipientCostCentre.CostCentreCode; } if (order != null && order.IssuedOnBehalfOf!=null) { outletCode = order.IssuedOnBehalfOf.CostCentreCode; } if (order != null) { shipToAddress = order.ShipToAddress; } mapto.Id = receipt.Id; mapto.InvoiceRef = receipt.InvoiceId.ToString(); mapto.OrderExternalRef = orderExternalRef; mapto.OutletCode = outletCode; mapto.ReceiptRef = receipt.DocumentReference; mapto.SalesmanCode = salesmanCode; mapto.PaymentDate = receipt.DocumentDateIssued; mapto.ShipToAddress = shipToAddress; mapto.RouteName = GetOnBehalfOfCCRouteName(order.Id); mapto.LineItems = receipt.LineItems.Select(s => MapItem(s)).ToList(); return mapto; }