public void SelectActualPriceList() { var today = DateTime.Today; var expected = new AnalyzePriceList { BeginDate = today }; var list = new List<AnalyzePriceList> { new AnalyzePriceList { BeginDate = today.AddDays(-1) }, expected, new AnalyzePriceList { BeginDate = today.AddDays(1) }, }; Assert.AreSame(expected, AnalyzePriceList.SelectActualPriceList(list)); }
public List<AnalyzePrice> UploadPrices(long priceListId, List<AnalyzePrice> prices) { using (var database = new Core.Entity.SeedsEntities()) { var entity = database.AnalyzePriceList.Single(pl => pl.ID == priceListId); if (!entity.Prices.IsLoaded) { entity.Prices.Load(); } entity.Prices.Clear(); foreach (var price in prices) { entity.Prices.Add(price.ToEntity(database)); } database.SaveChanges(); var priceList = new AnalyzePriceList(database.AnalyzePriceList.Execute(MergeOption.NoTracking).First(pl => pl.ID == priceListId), true); Cache.Instance.PriceLists[priceListId] = priceList; return priceList.Prices.ToList(); } }
public AnalyzePriceList CreatePriceList(AnalyzePriceList priceList) { using (var database = new Core.Entity.SeedsEntities()) { var entity = priceList.ToEntity(database); database.AddToAnalyzePriceList(entity); database.SaveChanges(); var result = new AnalyzePriceList(database.AnalyzePriceList.Execute(MergeOption.NoTracking).Single(pl => pl.ID == entity.ID), true); Cache.Instance.PriceLists[result.ID] = result; return result; } }