/// <summary> /// Возвращает следующий апгрейд для склада или возвращает null, если уровень апгерйда максимален /// </summary> /// <returns></returns> public WarehouseType GetNextWarehouseUpgrade(Warehouse warehouse) { if (warehouse.WarehouseType.Level == 12) { return null; } return DataContext.WarehouseTypes.FirstOrDefault(ht => ht.Level == warehouse.WarehouseType.Level + 1); }
private void detach_Warehouses(Warehouse entity) { this.SendPropertyChanging(); entity.WarehouseType = null; }
private void attach_Warehouses(Warehouse entity) { this.SendPropertyChanging(); entity.WarehouseType = this; }
public ActionResult BuyWarehouse() { // Проверяем что пользователь авторизован if (!IsAuthentificated) { return RedirectToAction("Register"); } // Проверяем что на счету пользователя есть указанная сумма if (CurrentUser.GetGoldCoins() < 500) { return View("NotEnoughMoney"); } // Выполняем списание и добавляем новый склад CurrentUser.ChargeGoldCoins(500, "Покупка нового склада"); // Доабвляем пользователю новый склад var newWarehouse = new Warehouse() { Status = 1, CurrentHoney = 0, DateCreated = DateTime.Now, User = CurrentUser, WarehouseTypeId = 1, Notes = "Склад" }; CurrentUser.Warehouses.Add(newWarehouse); UsersManager.SubmitChanges(); // перенаправляем на список ульев return RedirectToAction("Warehouses", "Apiary"); }