public ActionResult List() { var campaigns = campaignService.FindAll(); var campaignListViewModel = new CampaignListViewModel(); campaignListViewModel.Campaigns = campaigns; return(View(campaignListViewModel)); }
public ActionResult ShakingLottery_End() { CampaignListViewModel model = new CampaignListViewModel(); model.CampaignCount = _campaignManager.GetCampaignCount( DomainContext.Domain.Id, DomainContext.AppId, EnumCampaignType.ShakingLottery); return(View(model)); }
public ActionResult ClearFilters(CampaignListViewModel model) { // Usunięcie filtrów z sesji if (Session != null) { Session.Remove(FilterSettingsKey.CampaignControllerFilterList.ToString()); PageSettings.RemoveFromSession(PageSettingsKey.CampaignPageSettings); } return(RedirectToAction("Index")); }
/// <summary> /// Przywrócenie informacji o słownikach potrzebnych do zbudowania modelu /// </summary> /// <param name="model">Obiekt modelu</param> private void RestoreDictionariesState(CampaignListViewModel model) { if (model.Filters == null) { return; } if (model.Filters.Priorities == null) { var selectedId = model.Filters.FilterPriorityId; model.Filters.Priorities = new SelectList(_priorityRepository.Priorities, "Id", "Name"); model.Filters.FilterPriorityId = selectedId; } if (model.Filters.YesNo == null) { var active = model.Filters.FilterActive; model.Filters.YesNo = new SelectList(YesNoDictionary.GetList(), "Value", "Key"); model.Filters.FilterActive = active; } }
public CampaignListViewModel GetPaginatedCampaigns(List <FilterValue> filterValues, int pageSize, int pageNumber, Guid idAccount, IDataProtector protector, Guid userid, Guid _typeuser) { #if DEBUG var myWatch = new Stopwatch(); myWatch.Start(); #endif var itemResult = new CampaignListViewModel(); var campaigns = _campaignDao.GetPaginatedCampaignList(filterValues, pageSize, pageNumber, idAccount); var countCampaigns = _campaignDao.GetPaginatedCampaignCount(filterValues, pageSize, pageNumber, idAccount); foreach (var campaign in campaigns) { var ts = campaign.EndDate - DateTime.Now; int numberNotImplementedTasks; int numberStartedTasks; int numberPendingTasks; int numberImplementedTasks; var totalTasks = GetCampaignStatistics(idAccount, campaign, out numberNotImplementedTasks, out numberStartedTasks, out numberPendingTasks, out numberImplementedTasks); var usercampaign = _userCanpaignDao.GetCampaignById(campaign.Id, userid); if (_typeuser.Equals(new Guid("30DB815C-8B82-47EE-9279-B28922BEB616"))) { if (usercampaign.Count > 0) { var cvm = new CampaignItemViewModel { EndDate = campaign.EndDate, Id = protector.Protect(campaign.Id.ToString()), Name = campaign.Name, StartDate = campaign.StartDate, RemainingDays = ts.Days, ImplementedTaskPercent = (totalTasks > 0) ? ((numberImplementedTasks * 100) / totalTasks) + "%" : "0%", NotImplementedTaskPercent = (totalTasks > 0) ? ((numberNotImplementedTasks * 100) / totalTasks) + "%" : "0%", StartedTaskPercent = (totalTasks > 0) ? ((numberStartedTasks * 100) / totalTasks) + "%" : "0%", PendingTaskPercent = (totalTasks > 0) ? ((numberPendingTasks * 100) / totalTasks) + "%" : "0%", CountImplementedTasks = numberImplementedTasks, CountNotImplementedTasks = numberNotImplementedTasks, CountPendingTasks = numberPendingTasks, CountStartedTasks = numberStartedTasks, TotalTasks = totalTasks }; itemResult.CampaignList.Add(cvm); } } else { var cvm = new CampaignItemViewModel { EndDate = campaign.EndDate, Id = protector.Protect(campaign.Id.ToString()), Name = campaign.Name, StartDate = campaign.StartDate, RemainingDays = ts.Days, ImplementedTaskPercent = (totalTasks > 0) ? ((numberImplementedTasks * 100) / totalTasks) + "%" : "0%", NotImplementedTaskPercent = (totalTasks > 0) ? ((numberNotImplementedTasks * 100) / totalTasks) + "%" : "0%", StartedTaskPercent = (totalTasks > 0) ? ((numberStartedTasks * 100) / totalTasks) + "%" : "0%", PendingTaskPercent = (totalTasks > 0) ? ((numberPendingTasks * 100) / totalTasks) + "%" : "0%", CountImplementedTasks = numberImplementedTasks, CountNotImplementedTasks = numberNotImplementedTasks, CountPendingTasks = numberPendingTasks, CountStartedTasks = numberStartedTasks, TotalTasks = totalTasks }; itemResult.CampaignList.Add(cvm); } } #if DEBUG myWatch.Stop(); Debugger.Log(0, "Campañas", $"ms: {myWatch.ElapsedMilliseconds}"); #endif return(ConfigurePagination(itemResult, pageNumber, pageSize, filterValues, countCampaigns)); }
public void CampaignsControllerTestMethod() { /// mock dla priorytetów Mock <IPriorityRepository> priorityMock = new Mock <IPriorityRepository>(); // priorityMock.Setup(m => m.Priorities).Returns((MockData.Priorities).AsQueryable()); /// mock dla kampanii Mock <ICampaignRepository> campaignMock = new Mock <ICampaignRepository>(); // campaignMock.Setup(m => m.Campaigns).Returns((MockData.Campaigns).AsQueryable()); /// mock dla użytkowników Mock <IUsersRepository> usersMock = new Mock <IUsersRepository>(); //usersMock.Setup(m => m.Users).Returns((MockData.Users).AsQueryable()); /// Utworzenie kontrolera kampanii CampaignController campaignController = new CampaignController(campaignMock.Object, priorityMock.Object, usersMock.Object); campaignController.ItemsPerPage = 6; /// Wywołanie akcji Index ViewResult view = (ViewResult)campaignController.Index(2, null, null); /// Weryfikacja wyników widoku /// Model nie może być null Assert.AreNotEqual(null, view.Model); CampaignListViewModel model = (CampaignListViewModel)view.Model; ///Lista kampani nie może być null Assert.AreNotEqual(null, model.Campaigns); ///Model musi być typu CampaignListViewModel Assert.IsInstanceOfType(model, typeof(CampaignListViewModel)); ///Widok musi mieć nazwę Index Assert.IsTrue(view.ViewName == "Index"); ///Bieżąca strona musi mieć numer 2 Assert.AreEqual(2, model.CurrentPage); ///Liczba elementów na stronie musi być 6 Assert.AreEqual(6, model.ItemsPerPage); ///Liczba wszystkich znalezionych kampanii musi być równa liczbie obiektów z mock-a Assert.AreEqual(campaignMock.Object.Campaigns.Count(), model.NumberOfResults); ///Liczba zwróconych użytkownikowi kampanii na bieżącej stronie musi być 6 //Assert.AreEqual(6, model.Campaigns.Count); /// Wywołanie akcji listy kampanii //RedirectToRouteResult redirection = (RedirectToRouteResult)campaignController.List(new CampaignListViewModel // { // //Filters = new CampaignListViewModelFilter // //{ // // FilterActive = false // //} // }); /// Weryfikacja wyników /// Przekierowanie nie może być null-em //Assert.IsNotNull(redirection); /////RouteValues nie mogą być null-em //Assert.IsNotNull(redirection.RouteValues); //Assert.IsTrue(redirection.RouteValues.Count > 0); /////RouteValues muszą zawierać akcję o nazwie Index //Assert.IsTrue(redirection.RouteValues["action"].ToString() == "Index"); ///Wywołanie metody GET do pobierania listy kampanii view = (ViewResult)campaignController.Index(null, null, null); model = (CampaignListViewModel)view.Model; ///Lista kampanii musi wynosić 4 (na stronie) // Assert.AreEqual(4, model.Campaigns.Count); ///Wywołanie akcji z filtrowaniem //redirection = (RedirectToRouteResult)campaignController.List(new CampaignListViewModel //{ // //Filters = new CampaignListViewModelFilter // //{ // // FilterActive = true, // // FilterPriorityId = 1, // // FilterStartDateFrom = DateTime.Now.AddDays(-8).Date, // // FilterStartDateTo = DateTime.Now.AddDays(-4).Date // //} //}); //Assert.IsNotNull(redirection); //Assert.IsNotNull(redirection.RouteValues); //Assert.IsTrue(redirection.RouteValues.Count > 0); //Assert.IsTrue(redirection.RouteValues["action"].ToString() == "Index"); ///Sprawdzenie wyników view = (ViewResult)campaignController.Index(null, null, null); model = (CampaignListViewModel)view.Model; // Assert.AreEqual(2, model.Campaigns.Count); //Sprawdzenie czy zwróciono spodziewane obiekty kampanii //Assert.IsTrue(model.Campaigns[0].Name == "Kampania 1"); //Assert.IsTrue(model.Campaigns[1].Name == "Kampania 2"); }
public CampaignListViewModel GetPaginatedCampaignsDinamic(List <FilterValue> filterValues, int pageSize, int pageNumber, Guid idAccount, IDataProtector protector, Guid userid, Guid _typeuser) { #if DEBUG var myWatch = new Stopwatch(); myWatch.Start(); #endif var itemResult = new CampaignListViewModel(); var campaigns = _campaignDao.GetPaginatedCampaignListbyUser(filterValues, pageSize, pageNumber, idAccount, userid, _typeuser); var countCampaigns = _campaignDao.GetPaginatedCampaignCount(filterValues, pageSize, pageNumber, idAccount, _typeuser, userid); var _data = _taskCampaignDao.statusAllow(idAccount, pageNumber, pageSize); foreach (var campaign in campaigns) { var ts = campaign.EndDate - DateTime.Now; int numberNotImplementedTasks; int numberStartedTasks; int numberPendingTasks; int numberImplementedTasks; //var totalTasks = GetCampaignStatistics(idAccount, campaign, out numberNotImplementedTasks, out numberStartedTasks, out numberPendingTasks, out numberImplementedTasks); var totalTasks = _campaignDao.NumbertaskbyCampaign(campaign.Id); var usercampaign = _userCanpaignDao.GetCampaignById(campaign.Id, userid); if (_typeuser.Equals(new Guid("30DB815C-8B82-47EE-9279-B28922BEB616"))) { if (usercampaign.Count > 0) { var cvm = new CampaignItemViewModel { EndDate = campaign.EndDate, Id = protector.Protect(campaign.Id.ToString()), Name = campaign.Name, StartDate = campaign.StartDate, RemainingDays = ts.Days, //ImplementedTaskPercent = (totalTasks > 0) ? ((numberImplementedTasks * 100) / totalTasks) + "%" : "0%", //NotImplementedTaskPercent = (totalTasks > 0) ? ((numberNotImplementedTasks * 100) / totalTasks) + "%" : "0%", //StartedTaskPercent = (totalTasks > 0) ? ((numberStartedTasks * 100) / totalTasks) + "%" : "0%", //PendingTaskPercent = (totalTasks > 0) ? ((numberPendingTasks * 100) / totalTasks) + "%" : "0%", //CountImplementedTasks = numberImplementedTasks, //CountNotImplementedTasks = numberNotImplementedTasks, //CountPendingTasks = numberPendingTasks, //CountStartedTasks = numberStartedTasks, TotalTasks = totalTasks }; int aux = 0; int max = 0; foreach (var allow in _data) { aux = _taskCampaignDao.GetTaskCountByCampaignAndStatusStadi(allow.Name, campaign.Id, idAccount); max = (aux > max) ? aux : max; cvm.sectionCampaign.Add(new SectionCampaignDinamicViewModels { name = allow.Name, total = aux, percent = (totalTasks > 0) ? ((aux * 100) / totalTasks) + "%" : "0%", color = allow .color }); } itemResult.CampaignList.Add(cvm); } } else { var cvm = new CampaignItemViewModel { EndDate = campaign.EndDate, Id = protector.Protect(campaign.Id.ToString()), Name = campaign.Name, StartDate = campaign.StartDate, RemainingDays = ts.Days, //ImplementedTaskPercent = (totalTasks > 0) ? ((numberImplementedTasks * 100) / totalTasks) + "%" : "0%", //NotImplementedTaskPercent = (totalTasks > 0) ? ((numberNotImplementedTasks * 100) / totalTasks) + "%" : "0%", //StartedTaskPercent = (totalTasks > 0) ? ((numberStartedTasks * 100) / totalTasks) + "%" : "0%", //PendingTaskPercent = (totalTasks > 0) ? ((numberPendingTasks * 100) / totalTasks) + "%" : "0%", //CountImplementedTasks = numberImplementedTasks, //CountNotImplementedTasks = numberNotImplementedTasks, //CountPendingTasks = numberPendingTasks, //CountStartedTasks = numberStartedTasks, TotalTasks = totalTasks }; int aux = 0; int max = 0; foreach (var allow in _data) { aux = _taskCampaignDao.GetTaskCountByCampaignAndStatusStadi(allow.Name, campaign.Id, idAccount); max = (aux > max) ? aux : max; cvm.sectionCampaign.Add(new SectionCampaignDinamicViewModels { name = allow.Name, total = aux, percent = (totalTasks > 0) ? ((aux * 100) / totalTasks) + "%" : "0%", color = allow .color }); } itemResult.CampaignList.Add(cvm); } } #if DEBUG myWatch.Stop(); Debugger.Log(0, "Campañas", $"ms: {myWatch.ElapsedMilliseconds}"); #endif return(ConfigurePagination(itemResult, pageNumber, pageSize, filterValues, countCampaigns)); }
public ActionResult CampaignList() { CampaignListViewModel model = new CampaignListViewModel(); return(View(model)); }
protected async override void OnAppearing() { var listViewModel = new CampaignListViewModel(); listView.ItemsSource = await listViewModel.GetCampaignList(); }