コード例 #1
0
        public ActionResult Index(IndexHomeViewModel viewModel)
        {
            var trips = db.Trips.ToList();

            if (!string.IsNullOrEmpty(viewModel.From))
            {
                trips = trips.Where(u => u.From.ToLower().Equals(viewModel.From.ToLower())).ToList();
            }
            if (!string.IsNullOrEmpty(viewModel.To))
            {
                trips = trips.Where(u => u.To.ToLower().Equals(viewModel.To.ToLower())).ToList();
            }
            if (viewModel.PriceMax > 0 && viewModel.PriceMin < viewModel.PriceMax)
            {
                trips = trips.Where(u => u.Price >= viewModel.PriceMin && u.Price <= viewModel.PriceMax).ToList();
            }
            viewModel = new IndexHomeViewModel();
            var tripsInfo = new List <IndexHomeViewModel.TripInfo>();

            trips.ForEach(t => tripsInfo.Add(new IndexHomeViewModel.TripInfo()
            {
                Trip        = t,
                TicketsLeft = t.Coach.Capacity - t.Tickets.Count
            }));
            viewModel.TripsInfo = tripsInfo;

            return(View(viewModel));
        }
コード例 #2
0
        public async Task <ActionResult> Index()
        {
            var model = new IndexHomeViewModel();

            model.Services  = new List <ServiceShowViewModel>();
            model.LastAutos = new List <IndexHomeLastAutoViewModel>();

            var allServices = await db.Repository <Service>().GetAllAsync();

            foreach (var item in allServices)
            {
                model.Services.Add(new ServiceShowViewModel()
                {
                    Title   = item.Title,
                    Body    = item.Body,
                    Details = new List <string>(item.ServiceDetail.Select(x => x.Name))
                });
            }

            var lastAutos = (await db.Repository <Auto>().GetAllAsync())?.OrderByDescending(x => x.DatePublication)?.Take(6);

            foreach (var item in lastAutos)
            {
                model.LastAutos.Add(new IndexHomeLastAutoViewModel()
                {
                    PathToPhoto      = item.PhotoAutos.FirstOrDefault() == null ? "" : item.PhotoAutos.First().PathToPhoto,
                    Name             = item.Model.Name + " " + item.Type.Name + " " + item.YearOfManufacture,
                    ShortDescription = (item.Description.Split().Take(15).Aggregate("", (a, b) => a + " " + b)) + "...",
                    Id = item.Id
                });
            }


            return(View(model));
        }
コード例 #3
0
        // GET: /Home/
        public ActionResult Index()
        {
            var view = new IndexHomeViewModel();

            view.Posts = Context.Posts.ToList();
            return(View(view));
        }
コード例 #4
0
ファイル: HomeController.cs プロジェクト: fmtIVU/PLC_GenCo
        public ActionResult New(IndexHomeViewModel viewModel)
        {
            var userName = User.Identity.GetUserName();

            System.IO.Directory.CreateDirectory(@"C:\Users\Ivan\Desktop\OP generator PLC koda\Profiles\" + userName + @"\" + viewModel.ProjectName);
            System.IO.Directory.CreateDirectory(@"C:\Users\Ivan\Desktop\OP generator PLC koda\Profiles\" + userName + @"\" + viewModel.ProjectName + @"\Standards");

            var XMLProject = new XElement("Project",
                                          new XAttribute("Name", viewModel.ProjectName),
                                          new XAttribute("ComponentId", "1"),
                                          new XAttribute("StandardId", "1"),
                                          new XAttribute("ModuleId", "1"),
                                          new XAttribute("LocationId", "1"),
                                          new XAttribute("IOId", "1"),


                                          new XElement("PLC"),
                                          new XElement("Components"),
                                          new XElement("Locations"),
                                          new XElement("IOs"),
                                          new XElement("Modules"),
                                          new XElement("Standards")
                                          );

            XMLProject.Save(@"C:\Users\Ivan\Desktop\OP generator PLC koda\Profiles\" + userName + @"\" + viewModel.ProjectName + @"\" + viewModel.ProjectName + @".xml");

            return(RedirectToAction("Index", "Home"));
        }
コード例 #5
0
ファイル: HomeController.cs プロジェクト: fmtIVU/PLC_GenCo
        //====================================================================================================================
        //MAIN PAGE
        public ActionResult Index()
        {
            List <String> projects;
            var           userName = User.Identity.GetUserName();
            String        pageName;

            if (String.IsNullOrEmpty(userName))
            {
                projects = new List <String>();
                pageName = "";
            }
            else
            {
                projects = System.IO.Directory.GetDirectories(@"C:\Users\Ivan\Desktop\OP generator PLC koda\Profiles\" + userName).ToList();
                pageName = _context.Users.First(c => c.Name == userName).ActProject;
            }

            for (int i = 0; i < projects.Count(); i++)
            {
                projects[i] = projects[i].Split('\\').Last();
            }

            var viewModel = new IndexHomeViewModel
            {
                Projects = projects,
                UserName = userName,
                PageName = pageName,
            };


            return(View(viewModel));
        }
コード例 #6
0
        public ActionResult Index()
        {
            var vm = new IndexHomeViewModel
            {
                Books       = _db.Books.Include(b => b.Authors),
                SliderItems = _db.SliderItems
            };

            return(View(vm));
        }
コード例 #7
0
        public async Task <IActionResult> Index(string message)
        {
            var viewModel = new IndexHomeViewModel();

            viewModel.QuizList = await _quizService.GetAllQuizesAsync();

            viewModel.TeamList = await _userService.GetAllTeamsAsync();

            ViewData["Message"] = message == null ? null : message;
            return(View(viewModel));
        }
コード例 #8
0
        public ActionResult Index()
        {
            var viewModel = new IndexHomeViewModel()
            {
                NumberUser          = UserManager.Users.Count(),
                NumberRole          = RoleManager.Roles.Count(),
                NumberCategory      = _categoryService.GetAllCategories().Count(),
                InstanceDbContextId = _unitOfWork.InstanceId()
            };

            return(View(viewModel));
        }
コード例 #9
0
        //Index view with filters
        public IActionResult Index(long?stage, string nameOfWord, SortIndexHome sortOrder = SortIndexHome.WordInEnglishAsc)
        {
            //Get data from database
            IQueryable <StageOfMethod> stagesOfMethod = StageOfMethodContext.GetAllIQueryableWithInclude();
            IQueryable <WordInEnglish> wordsInEnglish = WordsInEnglishContext.GetAllIQueryableWithInclude(w => w.StageOfMethod, w => w.TranslationOfWords);

            //Filer by StageOfMethod
            if (stage != null && stage != 0)
            {
                wordsInEnglish = wordsInEnglish.Where(w => w.StageOfMethodId == stage);
            }
            //Search word by eglish word or by his translations
            if (!String.IsNullOrEmpty(nameOfWord))
            {
                if (!Regex.IsMatch(nameOfWord, @"\P{IsCyrillic}"))
                {
                    wordsInEnglish = wordsInEnglish.Where(w => w.Name.Contains(nameOfWord));
                }
                else
                {
                    wordsInEnglish = wordsInEnglish.Where(w => w.Name.Contains(nameOfWord));
                }
            }
            //Sorting by Name of word in english and by name of stage
            //TODO add to html this possibility
            switch (sortOrder)
            {
            case SortIndexHome.WordInEnglishAsc:
                wordsInEnglish = wordsInEnglish.OrderBy(w => w.Name);
                break;

            case SortIndexHome.WordInEnglishDesc:
                wordsInEnglish = wordsInEnglish.OrderByDescending(w => w.Name);
                break;

            case SortIndexHome.StageOfMethodAsc:
                wordsInEnglish = wordsInEnglish.OrderBy(w => w.StageOfMethod.Name);
                break;

            case SortIndexHome.StageOfMethodDesc:
                wordsInEnglish = wordsInEnglish.OrderByDescending(w => w.StageOfMethod.Name);
                break;
            }
            //Add sotr add filter with data from database to view model
            IndexHomeViewModel model = new IndexHomeViewModel
            {
                Sorting        = new SortIndexHomeViewModel(sortOrder),
                Filters        = new FilterIndexHomeViewModel(stagesOfMethod.ToList(), stage, nameOfWord),
                WordsInEnglish = wordsInEnglish
            };

            return(View(model));
        }
コード例 #10
0
ファイル: HomeController.cs プロジェクト: svfits/ADV.Orders
        public async Task <IActionResult> Index()
        {
            var orders = await _servicesHome.GetOrdersAsync();

            var indexView = new IndexHomeViewModel()
            {
                ProductsViewModel     = await _servicesHome.GetProductsAsync(orders.FirstOrDefault().Id),
                OrdersViewModel       = orders,
                DatailsOrderViewModel = await _servicesHome.GetDatailsOrderAsync(orders.FirstOrDefault().Id)
            };

            return(View(indexView));
        }
コード例 #11
0
        public async Task <IActionResult> Index()
        {
            var model = new IndexHomeViewModel()
            {
                EntityTypes = (await _entityStore.GetEntityTypes())
                              .Select(c => new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem {
                    Text = c.Name, Value = c.Id.ToString()
                }),
                Columns = Enumerable.Empty <EntityTypeColumn>()
            };

            return(View(model));
        }
コード例 #12
0
        public void Index_Home_Validate_Model()
        {
            Mock <ISongRepository> mock = new Mock <ISongRepository>();

            mock.Setup(x => x.Songs).Returns(new Song[] { new Song()
                                                          {
                                                              SongId     = 0, CategoryId = 1, NameSong = "Moja PiosenkaNr7",
                                                              Bestseller = true, DateAdded = DateTime.Parse("02/11/2017 18:44:01")
                                                          },
                                                          new Song()
                                                          {
                                                              SongId    = 1, CategoryId = 1, NameSong = "Moja PiosenkaNr1", Bestseller = true,
                                                              DateAdded = DateTime.Parse("02/11/2017 18:44:02")
                                                          },
                                                          new Song()
                                                          {
                                                              SongId    = 2, CategoryId = 1, NameSong = "Moja PiosenkaNr2", Bestseller = false,
                                                              DateAdded = DateTime.Parse("02/11/2017 18:44:03")
                                                          },
                                                          new Song()
                                                          {
                                                              SongId    = 3, CategoryId = 1, NameSong = "Moja PiosenkaNr3", Bestseller = true,
                                                              DateAdded = DateTime.Parse("02/11/2017 18:44:06")
                                                          },
                                                          new Song()
                                                          {
                                                              SongId    = 4, CategoryId = 1, NameSong = "Moja PiosenkaNr4", Bestseller = true,
                                                              DateAdded = DateTime.Parse("03/11/2017 18:44:07")
                                                          },
                                                          new Song()
                                                          {
                                                              SongId    = 5, CategoryId = 1, NameSong = "Moja PiosenkaNr5", Bestseller = true,
                                                              DateAdded = DateTime.Parse("07/11/2017 18:44:02")
                                                          },
                                                          new Song()
                                                          {
                                                              SongId    = 6, CategoryId = 1, NameSong = "Moja PiosenkaNr6", Bestseller = true,
                                                              DateAdded = DateTime.Parse("02/11/2017 18:43:02")
                                                          } });

            HomeController target = new HomeController(mock.Object);

            IndexHomeViewModel result = target.Index().Model as IndexHomeViewModel;

            Assert.AreEqual(result.Bestsellers.Count, 5);
            Assert.AreEqual(result.Bestsellers[0].SongId, 0);
            Assert.AreEqual(result.Newest.Count, 5);
        }
コード例 #13
0
        public async Task <IActionResult> Index(IndexHomeViewModel model)
        {
            model.EntityTypes = (await _entityStore.GetEntityTypes()).Select(c => new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem {
                Text = c.Name, Value = c.Id.ToString()
            });

            if (model.EntityTypeId > 0)
            {
                model.EntityTypes.Where(c => c.Value == model.EntityTypeId.ToString()).Single().Selected = true;
                model.Columns = await _entityStore.GetEntityTypeColumns(model.EntityTypeId);
            }
            else
            {
                model.Columns = Enumerable.Empty <EntityTypeColumn>();
            }
            return(View(model));
        }
コード例 #14
0
        // GET: Home
        public ActionResult Index()
        {
            var tripsInfo = new List <IndexHomeViewModel.TripInfo>();

            db.Trips.ForEach(t => tripsInfo.Add(new IndexHomeViewModel.TripInfo()
            {
                Trip        = t,
                TicketsLeft = t.Coach.Capacity - t.Tickets.Count
            }));

            IndexHomeViewModel viewModel = new IndexHomeViewModel()
            {
                TripsInfo = tripsInfo
            };

            return(View(viewModel));
        }
コード例 #15
0
        public ActionResult Index(IndexHomeViewModel model)
        {
            if (!ModelState.IsValid)
            {
                ModelState.AddModelError(nameof(IndexHomeViewModel.Query),
                                         "Please enter a search query");
                return(RedirectToAction(nameof(HomeController.Index)));
            }

            List <CreateHomeViewModel> query;

            if (User.IsInRole("Admin"))
            {
                query = (from post in DbContext.BlogPosts
                         where post.Title.ToLower().Contains(model.Query.ToLower()) || post.Body.ToLower().Contains(model.Query.ToLower()) || post.Slug.ToLower().Contains(model.Query.ToLower())
                         select new CreateHomeViewModel
                {
                    Id = post.Id,
                    Title = post.Title,
                    Body = post.Body,
                    Published = post.Published,
                    ImageUrl = post.Image,
                    Slug = post.Slug,
                    DateCreated = post.DateCreated,
                    DateUpdated = post.DateUpdated
                }).ToList();
            }
            else
            {
                query = (from post in DbContext.BlogPosts
                         where post.Title.ToLower().Contains(model.Query.ToLower()) || post.Body.ToLower().Contains(model.Query.ToLower()) || post.Slug.ToLower().Contains(model.Query.ToLower()) && post.Published == true
                         select new CreateHomeViewModel
                {
                    Id = post.Id,
                    Title = post.Title,
                    Body = post.Body,
                    Published = post.Published,
                    ImageUrl = post.Image,
                    Slug = post.Slug,
                    DateCreated = post.DateCreated,
                    DateUpdated = post.DateUpdated
                }).ToList();
            }

            return(View("SearchResults", query));
        }
コード例 #16
0
        public async Task <ActionResult> Index()
        {
            var currentUser = await this.userManager.GetUserAsync(this.User);

            var viewModel = new IndexHomeViewModel();

            var treatmentsCount  = this.treatmentService.GetAllUserTreatmentsForLastYearCount(currentUser.Id);
            var inspectionsCount = this.inspectionService.GetAllUserInspectionsForLastYearCount(currentUser.Id);
            var harvestsCount    = this.harvestService.GetAllUserHarvestsForLastYearCount(currentUser.Id);

            viewModel.TreatmentsCount  = treatmentsCount;
            viewModel.InspectionsCount = inspectionsCount;
            viewModel.HarvestsCount    = harvestsCount;

            // TODO: Make services

            // apiaries chart
            var apiaries = this.apiaryService.GetAllUserApiaries <ApiaryDataModel>(currentUser.Id);

            viewModel.ApiariesCount = apiaries.Count();

            var apiariesCountByType = apiaries.GroupBy(a => a.ApiaryType).ToDictionary(k => k.Key, v => v.Count());

            viewModel.ApiariesCountByType = apiariesCountByType;

            var apiariesCountChartUrl = this.quickChartService.ImageUrl(
                "pie",
                apiariesCountByType.Values.ToList(),
                GlobalConstants.ApiaryTypeChartColors.Take(apiariesCountByType.Values.Count).ToArray());

            viewModel.ApiariesCountChartUrl = apiariesCountChartUrl;

            // beehives chart
            var beehives = this.beehiveService.GetAllUserBeehives <BeehiveDataModel>(currentUser.Id);

            viewModel.BeehivesCount = beehives.Count();

            var beehivesCountByPower = new Dictionary <BeehivePower, int>();

            beehivesCountByPower.Add(BeehivePower.Strong, beehives.Where(b => b.BeehivePower == BeehivePower.Strong).Count());
            beehivesCountByPower.Add(BeehivePower.Medium, beehives.Where(b => b.BeehivePower == BeehivePower.Medium).Count());
            beehivesCountByPower.Add(BeehivePower.Weak, beehives.Where(b => b.BeehivePower == BeehivePower.Weak).Count());
            viewModel.BeehivesCountByPower = beehivesCountByPower;

            var beehivesCountChartUrl = this.quickChartService.ImageUrl(
                "pie",
                beehivesCountByPower.Values.ToList(),
                GlobalConstants.BeehivePowerChartColors);

            viewModel.BeehivesCountChartUrl = beehivesCountChartUrl;

            // queens chart
            var queens = this.queenService.GetAllUserQueens <QueenViewModel>(currentUser.Id);

            viewModel.QueensCount = queens.Count();

            var queensCountByGivingDate = queens.ToList().OrderBy(q => q.GivingDate).GroupBy(q => q.GivingDate.Year).ToDictionary(k => k.Key, v => v.Count());

            var queenColors = new List <string>();

            foreach (var year in queensCountByGivingDate.Keys.OrderBy(k => k))
            {
                switch (year % 10)
                {
                case 0:
                case 5: queenColors.Add("'#689dd6'"); break;

                case 1:
                case 6: queenColors.Add("'#FFFFFF'"); break;

                case 2:
                case 7: queenColors.Add("'#f2c72b'"); break;

                case 3:
                case 8: queenColors.Add("'#E15759'"); break;

                case 4:
                case 9: queenColors.Add("'#59A14F'"); break;
                }
            }

            if (beehives.Count() - queens.Count() > 0)
            {
                queensCountByGivingDate.Add(0, beehives.Count() - queens.Count());
                queenColors.Add("'#d3d3d3'");
            }

            var queensCountByGivingDateChart = this.quickChartService.ImageUrl(
                "pie",
                queensCountByGivingDate.Values.ToList(),
                queenColors.ToArray(),
                "'#7B7B7B'");

            viewModel.QueenChartColors                = queenColors;
            viewModel.QueensCountByGivingDate         = queensCountByGivingDate;
            viewModel.QueensCountByGivingDateChartUrl = queensCountByGivingDateChart;

            return(this.View(viewModel));
        }
コード例 #17
0
ファイル: HomeController.cs プロジェクト: jzca/BugTracker
        public ActionResult Index()
        {
            if (!User.Identity.IsAuthenticated)
            {
                return RedirectToAction(nameof(AccountController.Login), "Account");
            }

            bool isAdmin = IsAdmin();
            bool isProjm = IsProjectManager();
            bool isSubmitter = IsSubmitter();
            bool isDeveloper = IsDeveloper();

            var appUserId = User.Identity.GetUserId();

            int ownedProjects = 0;
            int ownedTickets = 0;

            if (!isAdmin && !isProjm)
            {
                ownedProjects = DbContext.Projects
                        .Where(p => p.Archived == false && p.Users.Any(b => b.Id == appUserId))
                        .Count();

                if (isDeveloper)
                {
                    ownedTickets = DbContext.Tickets
                           .Where(p => p.Project.Archived == false && p.AssigneeId == appUserId)
                           .Count();
                }
                else if (isSubmitter)
                {
                    ownedTickets = DbContext.Tickets
                            .Where(p => p.Project.Archived == false && p.CreatorId == appUserId)
                            .Count();
                }


            }

            IndexHomeViewModel model;
            model = new IndexHomeViewModel();


            if (isAdmin || isProjm)
            {
                var numProjects = DbContext.Projects.Where(p => p.Archived == false).Count();
                var tickets = DbContext.Tickets.Where(p => p.Project.Archived == false).ToList();
                var numTickets = tickets.Count();

                var openTks = tickets
                    .Where(p =>
                   p.TicketStatus.Name == TicketEnum.Status.Open.ToString())
                    .Count();

                var rejectedTks = tickets
                    .Where(p =>
                   p.TicketStatus.Name == TicketEnum.Status.Rejected.ToString())
                    .Count();

                var resolvedTks = tickets
                    .Where(p =>
                   p.TicketStatus.Name == TicketEnum.Status.Resolved.ToString())
                    .Count();



                model = new IndexHomeViewModel()
                {
                    YesAdmin = isAdmin,
                    YesDev = isDeveloper,
                    YesPm = isProjm,
                    YesSub = isSubmitter,
                    NumOwnedProjects = numProjects,
                    NumOwnedTickets = numTickets,
                    NumOpenTk = openTks,
                    NumRejectedTk = rejectedTks,
                    NumResolvedTk = resolvedTks,

                };
            }
            else if (isDeveloper)
            {

                model = new IndexHomeViewModel()
                {
                    YesAdmin = isAdmin,
                    YesDev = isDeveloper,
                    YesPm = isProjm,
                    YesSub = isSubmitter,
                    NumOwnedProjects = ownedProjects,
                    NumOwnedTickets = ownedTickets,
                    NumRejectedTk = 0,
                    NumOpenTk = 0,
                    NumResolvedTk = 0,
                };
            }
            else if (isSubmitter)
            {

                model = new IndexHomeViewModel()
                {
                    YesAdmin = isAdmin,
                    YesDev = isDeveloper,
                    YesPm = isProjm,
                    YesSub = isSubmitter,
                    NumOwnedProjects = ownedProjects,
                    NumOwnedTickets = ownedTickets,
                    NumRejectedTk = 0,
                    NumOpenTk = 0,
                    NumResolvedTk = 0,
                };
            }


            return View(model);
        }