コード例 #1
0
        public ActionResult Create(BeerView beer)
        {
            try
            {
                if (beer.Growler && beer.TastingRoom)
                {
                    var result1 = mongoService.AddBeerGrowler(beer);
                    var result2 = mongoService.AddBeerTastingRoom(beer);
                }
                else if (beer.Growler)
                {
                    var result = mongoService.AddBeerGrowler(beer);
                }
                else if (beer.TastingRoom)
                {
                    var result = mongoService.AddBeerTastingRoom(beer);
                }

                Brewery brewery = mongoService.GetBrewery(beer.id);

                return(RedirectToAction("Index", "Brewery"));
            }
            catch
            {
                return(View());
            }
        }
コード例 #2
0
ファイル: BeerController.cs プロジェクト: Pinceris/Brewery
        // GET: Beer
        public async Task <ActionResult> Index()
        {
            List <Beer> beers = await ApiClient.GetAllAsync <Beer>("Beers/");

            List <BeerType> beerTypes = await ApiClient.GetAllAsync <BeerType>("BeerTypes/");

            List <BeerView> finalResult = new List <BeerView>();

            foreach (Beer beer in beers)
            {
                BeerView result = new BeerView();
                foreach (BeerType beerType in beerTypes)
                {
                    if (beer.TypeId == beerType.Id)
                    {
                        result.TypeName = beerType.Name;
                    }
                }
                result.Id         = beer.BeerId;
                result.Title      = beer.Title;
                result.Volume     = beer.Volume;
                result.NonAlcohol = beer.NonAlcohol;
                finalResult.Add(result);
            }

            return(View(finalResult));
        }
コード例 #3
0
ファイル: MongoService.cs プロジェクト: bgibz/WhatsOnTap
        public UpdateResult DeleteBeerTastingRoom(BeerView beer)
        {
            var breweryID  = new ObjectId(beer.id);
            var collection = db.GetCollection <Brewery>("breweries");
            var filter     = Builders <Brewery> .Filter.Eq("_id", breweryID);

            var update = Builders <Brewery> .Update.Pull("growlers", new Beer
            {
                Url   = beer.Url,
                Name  = beer.Name,
                Style = beer.Style,
                Abv   = beer.Abv,
            });

            return(collection.UpdateOne(filter, update));
        }
コード例 #4
0
ファイル: BreweryController.cs プロジェクト: bgibz/WhatsOnTap
        public ActionResult NewBeer(string id, BeerView beer)
        {
            beer.id = id;

            if (beer.Growler)
            {
                var result = mongoService.AddBeerGrowler(beer);
            }
            if (beer.TastingRoom)
            {
                var result = mongoService.AddBeerTastingRoom(beer);
            }

            Brewery brewery = mongoService.GetBrewery(id);

            return(View(brewery));
        }
コード例 #5
0
ファイル: MongoService.cs プロジェクト: bgibz/WhatsOnTap
        public UpdateResult AddBeerTastingRoom(BeerView beer)
        {
            var brewId     = new ObjectId(beer.id);
            var newName    = beer.Name;
            var newStyle   = beer.Style;
            var newAbv     = beer.Abv;
            var collection = db.GetCollection <Brewery>("breweries");
            var filter     = Builders <Brewery> .Filter.Eq("_id", brewId);

            var update = Builders <Brewery> .Update.AddToSet("tasting_room", new Beer
            {
                Url   = "",
                Name  = beer.Name,
                Style = beer.Style,
                Abv   = beer.Abv,
            });

            return(collection.UpdateOne(filter, update));
        }
コード例 #6
0
        public ActionResult Create()
        {
            BeerView viewModel = new BeerView();

            var breweries = mongoService.GetBreweries();

            List <SelectListItem> breweryList = new List <SelectListItem>();

            foreach (Brewery brewery in breweries)
            {
                SelectListItem b = new SelectListItem()
                {
                    Text = brewery.Name, Value = brewery._id.ToString()
                };
                breweryList.Add(b);
            }

            viewModel.breweries = breweryList;

            return(View(viewModel));
        }
コード例 #7
0
ファイル: BeerController.cs プロジェクト: Pinceris/Brewery
        // GET: Beer/Details/5
        public async Task <ActionResult> Details(String id)
        {
            Beer beer = await ApiClient.GetSingleAsync <Beer>("Beers/", id);

            List <BeerType> beerTypes = await ApiClient.GetAllAsync <BeerType>("BeerTypes/");

            BeerView result = new BeerView();

            foreach (BeerType beerType in beerTypes)
            {
                if (beer.TypeId == beerType.Id)
                {
                    result.TypeName = beerType.Name;
                }
            }
            result.Id         = beer.BeerId;
            result.Title      = beer.Title;
            result.Volume     = beer.Volume;
            result.NonAlcohol = beer.NonAlcohol;

            return(View(result));
        }
コード例 #8
0
        // GET: Beer/Delete/5
        public ActionResult Delete(int id)
        {
            BeerView beer = new BeerView();

            return(View());
        }