public void BuyFromDistriburor(string name, string description, decimal distributorPrice, double profit, int brandId, int categoryId) { if (String.IsNullOrWhiteSpace(name)) { throw new ArgumentException("Name cannot be null or whitespace!"); } //Profit should be in range 0-500% if (profit < 0 || profit > 5) { throw new ArgumentException("Profit must be higher than zero and lower than 500%!"); } var toy = new Toy { Name = name, Description = description, DestributorPrice = distributorPrice, Price = distributorPrice + distributorPrice * (decimal)profit, Profit = profit, BrandId = brandId, CategoryId = categoryId }; this.data.Toys.Add(toy); data.SaveChanges(); }
public void SellFoodToUser(int foodId, int userId) { if (!this.Exists(foodId)) { throw new ArgumentException("There is no such food with given id in the database!"); } if (!this.userService.Exists(userId)) { throw new ArgumentException("There is no such user with given id in the database!"); } var order = new Order() { PurchaseDate = DateTime.Now, Status = OrderStatus.Done, UserId = userId }; var foodOrder = new FoodOrder() { FoodId = foodId, Order = order }; this.data.Orders.Add(order); this.data.FoodOrders.Add(foodOrder); data.SaveChanges(); }
public static void Main(string[] args) { using (var data = new PetstoreDbContext()) { //var userService = new UserService(data); //var breedService = new BreedService(data); //var categoryService = new CategoryService(data); //var petservice = new PetService(data, breedService, categoryService, userService); //petservice.BuyPet(Gender.Male, DateTime.Now, 0m, null, 1, 1); //petservice.SellPet(1, 1); for (int i = 0; i < 10; i++) { var breed = new Breed() { Name = "Breed " + i }; data.Breeds.Add(breed); } data.SaveChanges(); for (int i = 0; i < 30; i++) { var category = new Category() { Name = "Category " + i, Description = "Some random description" + i, }; data.Categories.Add(category); } data.SaveChanges(); for (int i = 0; i < 102; i++) { var breedId = data.Breeds .OrderBy(c => Guid.NewGuid()) .Select(c => c.Id) .FirstOrDefault(); var categoryId = data.Categories .OrderBy(c => Guid.NewGuid()) .Select(c => c.Id) .FirstOrDefault(); var pet = new Pet() { DateOfBirth = DateTime.UtcNow.AddDays(-60 + i), Price = 50 + i, Gender = i % 2 == 0 ? Gender.Male : Gender.Female, Description = "Some random description" + i, CategoryId = categoryId, BreedId = breedId }; data.Pets.Add(pet); } data.SaveChanges(); } }