示例#1
0
        public async Task <ActionResult> Index()
        {
            var model = new FejlesztesViewModel();

            using (var db = new ApplicationDbContext())
            {
                var userId = HttpContext.User.Identity.GetUserId();

                var orszag = await db.Orszagok
                             .Include("OrszagFejlesztesek.Fejlesztes")
                             .Include("OrszagFejlesztesKeszulesek.Fejlesztes")
                             .SingleOrDefaultAsync(o => o.User.Id == userId);

                var lehetsegesFejlesztesek = db.Fejlesztesek.ToList();

                model.Fejlesztesek = lehetsegesFejlesztesek.Select(f => new FejlesztesFejlesztesListViewModel
                {
                    Id           = f.Id,
                    Name         = f.Name,
                    Ido          = f.Ido,
                    Kifejlesztve = orszag.OrszagFejlesztesek.Any(of => of.Fejlesztes.Id == f.Id),
                    Hatravan     = orszag.OrszagFejlesztesKeszulesek.Where(of => of.Fejlesztes.Id == f.Id).Sum(of => of.Hatravan)
                }).ToList();

                return(View(model));
            }
        }
示例#2
0
        public async Task <ActionResult> Index(FejlesztesViewModel model)
        {
            using (var db = new ApplicationDbContext())
            {
                var userId = HttpContext.User.Identity.GetUserId();

                var orszag = await db.Orszagok
                             .Include("OrszagFejlesztesek.Fejlesztes")
                             .Include("OrszagFejlesztesKeszulesek.Fejlesztes")
                             .SingleOrDefaultAsync(o => o.User.Id == userId);

                var lehetsegesFejlesztesek = db.Fejlesztesek.ToList();

                var jelenlegfejleszt = orszag.OrszagFejlesztesKeszulesek.Count();

                var fejleszt = model.Fejleszt;

                if (jelenlegfejleszt != 0)
                {
                    ModelState.AddModelError("", "Egyszerre csak egy technológia fejleszthető!");
                }

                if (fejleszt == 0)
                {
                    ModelState.AddModelError("", "Nem választottál fejlesztést!");
                }

                if (ModelState.IsValid)
                {
                    orszag.OrszagFejlesztesKeszulesek.Add(new Models.DataAccess.Entities.OrszagFejlesztesKeszul
                    {
                        Orszag     = orszag,
                        Fejlesztes = lehetsegesFejlesztesek.Single(e => e.Id == fejleszt),
                        Hatravan   = lehetsegesFejlesztesek.Single(e => e.Id == fejleszt).Ido
                    });

                    await db.SaveChangesAsync();

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View(model));
                }
            }
        }