public void DoNotSyncMailedOrInvoicedItemsFromMagento() { using (MyDataContext.Default = new MyDataContext(Effort.EntityConnectionFactory.CreateTransient("name=MyDataContext"))) { this.InitializeDatabase(); var magentoSyncer = new MagentoSalesSyncer(); var magentoSale = CreateMagentoSale(); magentoSyncer.SyncToSale(magentoSale); var sale = MyDataContext.Default.Sales.First(); // Items which are shipped shouldn't be synced again var newDateTime = new DateTime(2015, 01, 01, 14, 59, 00); magentoSale.created_at = newDateTime; Mailing.CreateFromUnsentSales(); magentoSyncer.SyncToSale(magentoSale); Assert.AreNotSame(newDateTime, sale.DateOfSale); // Items which are invoiced shouldn't be synced again Invoice.CreateFromUnbilledSales(); magentoSale.created_at = newDateTime; magentoSyncer.SyncToSale(magentoSale); Assert.AreNotSame(newDateTime, sale.DateOfSale); } }
public void DoNotSyncMailedOrInvoicedItemsFromEbay() { using (MyDataContext.Default = new MyDataContext(Effort.EntityConnectionFactory.CreateTransient("name=MyDataContext"))) { this.InitializeDatabase(); TransactionType ebaySale = CreateEbaySale(); var ebaySyncer = new EbaySalesSyncer(); ebaySyncer.SyncToSale(ebaySale); var sale = MyDataContext.Default.Sales.First(); // Items which are shipped shouldn't be synced again sale.DateOfPayment = DateTime.Now; MyDataContext.Default.SaveChanges(); Mailing.CreateFromUnsentSales(); ebaySale.Buyer.BuyerInfo.ShippingAddress.Name = "New Name"; ebaySyncer.SyncToSale(ebaySale); Assert.AreNotSame("New Name", sale.InvoiceName); // Items which are invoiced shouldn't be synced again Invoice.CreateFromUnbilledSales(); ebaySale.Buyer.BuyerInfo.ShippingAddress.Name = "New Name"; ebaySyncer.SyncToSale(ebaySale); Assert.AreNotSame("New Name", sale.InvoiceName); } }
protected void CreateMailingsLink_Click(Object sender, EventArgs e) { try { Mailing.CreateFromUnsentSales(); Invoice.CreateFromUnbilledSales(); } catch (Exception ex) { this.Master.ShowError(ex); } }
public void IncreaseStockWhenSaleIsDeleted() { using (MyDataContext.Default = new MyDataContext(Effort.EntityConnectionFactory.CreateTransient("name=MyDataContext"))) { InitializeDatabase(); var article1 = MyDataContext.Default.Articles.Where(runner => runner.ArticleNumber == "art001").FirstOrDefault(); var article2 = MyDataContext.Default.Articles.Where(runner => runner.ArticleNumber == "art002").FirstOrDefault(); var sale = CreateSale(article1, article2); MyDataContext.Default.Sales.Add(sale); MyDataContext.Default.SaveChanges(); sale = MyDataContext.Default.Sales.FirstOrDefault(); sale.Delete(); Assert.AreEqual(110, article1.AmountOnStock); Assert.AreEqual(105, article2.AmountOnStock); Mailing.CreateFromUnsentSales(); } }
private static Sale CreateTestSale() { MaterialGroup materialGroup = new MaterialGroup(); materialGroup.AdditionalDescriptionEnglish = String.Empty; materialGroup.AdditionalDescriptionGerman = String.Empty; materialGroup.DescriptionEnglish = String.Empty; materialGroup.DescriptionGerman = String.Empty; materialGroup.EbayAuctionHtmlTemplate = String.Empty; materialGroup.IntroductionEnglish = String.Empty; materialGroup.IntroductionGerman = String.Empty; materialGroup.Name = "MaterialGroup"; MyDataContext.Default.MaterialGroups.Add(materialGroup); MyDataContext.Default.SaveChanges(); Supplier supplier = new Supplier(); supplier.EmailAddress = "*****@*****.**"; supplier.Name = "SupplierName"; MyDataContext.Default.Suppliers.Add(supplier); MyDataContext.Default.SaveChanges(); Article article = new Article(); article.ArticleNumber = "123"; article.DescriptionEnglish = "DescriptionEnglish"; article.DescriptionGerman = "DescriptionGerman"; article.MaterialGroup = materialGroup; article.NameEnglish = "NameEnglish"; article.NameGerman = "NameGerman"; article.NameIntern = "NameIntern"; article.PictureName1 = String.Empty; article.PictureName2 = String.Empty; article.PictureName3 = String.Empty; article.SellingPriceGross = 123.45m; article.SellingPriceWholesaleGross = 12.34m; article.Supplier = supplier; article.SupplierArticleNumber = "SupplierArticleNumber"; article.SyncTechnicalInfo = String.Empty; article.Tags = String.Empty; article.EAN = String.Empty; article.EbayArticleNumber = String.Empty; MyDataContext.Default.Articles.Add(article); MyDataContext.Default.SaveChanges(); StockMovement movement = new StockMovement(article); movement.Amount = 10; movement.Reason = "Incoming"; MyDataContext.Default.StockMovements.Add(movement); MyDataContext.Default.SaveChanges(); Sale sale = new Sale(); sale.DateOfPayment = new DateTime(2015, 09, 03); sale.DateOfSale = new DateTime(2015, 09, 03); sale.EbayName = "ebay - komakommander"; sale.SourceId = "123456"; sale.EMailAddress = "*****@*****.**"; sale.InvoiceCity = "InvoiceCity"; sale.InvoiceCountry = "InvoiceCountry"; sale.InvoiceName = "InvoiceName"; sale.InvoicePostcode = "InvoicePostcode"; sale.InvoiceRegion = "InvoiceRegion"; sale.InvoiceStreet1 = "InvoiceStreet1"; sale.InvoiceStreet2 = "InvoiceStreet2"; sale.IsCashSale = false; sale.ManuallyChanged = false; sale.NameOfBuyer = "NameOfBuyer"; sale.Notes = "Notes"; sale.PhoneNumber = "PhoneNumber"; sale.ShippingCity = "ShippingCity"; sale.ShippingCountry = "ShippingCountry"; sale.ShippingName = "ShippingName"; sale.ShippingPostcode = "ShippingPostcode"; sale.ShippingPrice = 123.45m; sale.ShippingRegion = "ShippingRegion"; sale.ShippingStreet1 = "ShippingStreet1"; sale.ShippingStreet2 = "ShippingStreet2"; sale.Source = SaleSources.Ebay; MyDataContext.Default.Sales.Add(sale); SaleItem saleItem = new SaleItem(sale, article, 19.0m); MyDataContext.Default.SaleItems.Add(saleItem); MyDataContext.Default.SaveChanges(); NumberGenerator generator = new NumberGenerator(); generator.CurrentNumber = 1; generator.Name = "Invoices"; generator.StepWidth = 1; MyDataContext.Default.NumberGenerators.Add(generator); MyDataContext.Default.SaveChanges(); Mailing.CreateFromUnsentSales(); sale.Mailing.ShippingMethod = ShippingMethods.DPD; MyDataContext.Default.SaveChanges(); Invoice.CreateFromUnbilledSales(); sale.Invoice.InvoiceNumber = "20175272335"; MyDataContext.Default.SaveChanges(); return(sale); }