Exemple #1
0
        public TaskPerCampaignViewModel GetPaginatedTaskPerCampaignViewModel(Guid idCampaign, int pageIndex, int pageSize, List <FilterValue> filters, Guid idAccount)
        {
            filters = filters ?? new List <FilterValue>();

            var itemResult = new TaskPerCampaignViewModel();

            filters = AddHiddenFilter("IdCampaign", idCampaign.ToString(), filters, itemResult.FilterName);

            var max = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusImplemented, filters, idAccount);
            var countImplementedTasks    = max;
            var countNotImplementedTasks = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusNotImplemented, filters, idAccount);

            max = (max > countNotImplementedTasks) ? max : countNotImplementedTasks;

            var countPendingTasks = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusPending, filters, idAccount);

            max = (max > countPendingTasks) ? max : countPendingTasks;

            var countStartedTasks = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusStarted, filters, idAccount);

            max = (max > countStartedTasks) ? max : countStartedTasks;

            itemResult.IdCampaign              = idCampaign;
            itemResult.ImplementedTasksList    = GetMyTaskViewItemModel(CTask.StatusImplemented, pageIndex, pageSize, filters, idAccount);
            itemResult.NotImplementedTasksList = GetMyTaskViewItemModel(CTask.StatusNotImplemented, pageIndex, pageSize, filters, idAccount);
            itemResult.PendingTasksList        = GetMyTaskViewItemModel(CTask.StatusPending, pageIndex, pageSize, filters, idAccount);
            itemResult.StartedTasksList        = GetMyTaskViewItemModel(CTask.StatusStarted, pageIndex, pageSize, filters, idAccount);

            itemResult.CountImplementedTasks    = countImplementedTasks;
            itemResult.CountNotImplementedTasks = countNotImplementedTasks;
            itemResult.CountPendingTasks        = countPendingTasks;
            itemResult.CountStartedTasks        = countStartedTasks;

            return(ConfigurePagination(itemResult, pageIndex, pageSize, filters, max));
        }
Exemple #2
0
        public TaskPerCampaignViewModel GetTaskPerCampaignViewModel(Guid idCampaign, Guid idAccount, List <FilterValue> filters)
        {
            filters = filters ?? new List <FilterValue>();

            var itemResult = new TaskPerCampaignViewModel();

            filters = AddHiddenFilter("IdCampaign", idCampaign.ToString(), filters, itemResult.FilterName);

            itemResult = new TaskPerCampaignViewModel
            {
                IdCampaign           = idCampaign,
                ImplementedTasksList =
                    ConvertTask.ConvertTaskToMyTaskViewItemModel(_taskCampaignDao.GetPaginatedTasksByCampaignAndStatus(
                                                                     CTask.StatusImplemented, 1, int.MaxValue, filters, idAccount)),
                NotImplementedTasksList =
                    ConvertTask.ConvertTaskToMyTaskViewItemModel(_taskCampaignDao.GetPaginatedTasksByCampaignAndStatus(
                                                                     CTask.StatusNotImplemented, 1, int.MaxValue, filters, idAccount)),
                PendingTasksList =
                    ConvertTask.ConvertTaskToMyTaskViewItemModel(_taskCampaignDao.GetPaginatedTasksByCampaignAndStatus(
                                                                     CTask.StatusPending, 1, int.MaxValue, filters, idAccount)),
                StartedTasksList =
                    ConvertTask.ConvertTaskToMyTaskViewItemModel(_taskCampaignDao.GetPaginatedTasksByCampaignAndStatus(
                                                                     CTask.StatusStarted, 1, int.MaxValue, filters, idAccount))
            };
            return(ConfigurePagination(itemResult, 1, int.MaxValue, filters, int.MaxValue));
        }
        public static List <GeoPositionViewModel> ConvertTaskPerCampaignViewModelToGeoPositionViewModelList(
            TaskPerCampaignViewModel taskList)
        {
            var resultList = new List <GeoPositionViewModel>();

            resultList.AddRange(taskList.PendingTasksList.Select(t =>
                                                                 new GeoPositionViewModel()
            {
                IconUrl   = CImages.RedMarker,
                Latitude  = t.Latitude.Replace(",", "."),
                Longitude = t.Longitude.Replace(",", "."),
                Title     = t.BranchName,
                IdTask    = t.Id.ToString()
            }));

            resultList.AddRange(taskList.StartedTasksList.Select(t =>
                                                                 new GeoPositionViewModel()
            {
                IconUrl   = CImages.OrangeMarker,
                Latitude  = t.Latitude.Replace(",", "."),
                Longitude = t.Longitude.Replace(",", "."),
                Title     = t.BranchName,
                IdTask    = t.Id.ToString()
            }));

            resultList.AddRange(taskList.ImplementedTasksList.Select(t =>
                                                                     new GeoPositionViewModel()
            {
                IconUrl   = CImages.GreenMarker,
                Latitude  = t.Latitude.Replace(",", "."),
                Longitude = t.Longitude.Replace(",", "."),
                Title     = t.BranchName,
                IdTask    = t.Id.ToString()
            }));

            resultList.AddRange(taskList.NotImplementedTasksList.Select(t =>
                                                                        new GeoPositionViewModel()
            {
                IconUrl   = CImages.BlueMarker,
                Latitude  = t.Latitude.Replace(",", "."),
                Longitude = t.Longitude.Replace(",", "."),
                Title     = t.BranchName,
                IdTask    = t.Id.ToString()
            }));

            return(resultList);
        }
        public TaskPerCampaignViewModel GetTasksPerCampaign(Guid userId, int pageIndex, int pageSize, List <FilterValue> filters, Guid idAccount)
        {
            filters = filters ?? new List <FilterValue>();

            var itemResult = new TaskPerCampaignViewModel("MyTasks", "Task");
            var user       = _userDao.GetUserById(userId);

            if (user.Profile.TypeUser.Name == CTypePerson.PersonMerchant)
            {
                filters = AddHiddenFilter("IdMerchant", userId.ToString(), filters, itemResult.FilterName);
            }

            int max;

            itemResult = GetTasksProperties(pageIndex, pageSize, filters, idAccount, itemResult, out max);

            return(ConfigurePagination(itemResult, pageIndex, pageSize, filters, max));
        }
        private TaskPerCampaignViewModel GetTasksProperties(int pageIndex, int pageSize, List <FilterValue> filters, Guid idAccount,
                                                            TaskPerCampaignViewModel itemResult, out int max)
        {
            max = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusImplemented, filters, idAccount);

            var countImplementedTasks    = max;
            var countNotImplementedTasks = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusNotImplemented, filters,
                                                                                            idAccount);

            max = (max > countNotImplementedTasks) ? max : countNotImplementedTasks;

            var countPendingTasks = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusPending, filters, idAccount);

            max = (max > countPendingTasks) ? max : countPendingTasks;

            var countStartedTasks = _taskCampaignDao.GetTaskCountByCampaignAndStatus(CTask.StatusStarted, filters, idAccount);

            max = (max > countStartedTasks) ? max : countStartedTasks;

            itemResult.ImplementedTasksList = GetTaskList(pageIndex, pageSize, filters, idAccount,
                                                          CTask.StatusImplemented);

            itemResult.NotImplementedTasksList = GetTaskList(pageIndex, pageSize, filters, idAccount,
                                                             CTask.StatusNotImplemented);

            itemResult.PendingTasksList = GetTaskList(pageIndex, pageSize, filters, idAccount,
                                                      CTask.StatusPending);

            itemResult.StartedTasksList = GetTaskList(pageIndex, pageSize, filters, idAccount,
                                                      CTask.StatusStarted);

            itemResult.CountImplementedTasks    = countImplementedTasks;
            itemResult.CountNotImplementedTasks = countNotImplementedTasks;
            itemResult.CountPendingTasks        = countPendingTasks;
            itemResult.CountStartedTasks        = countStartedTasks;

            return(itemResult);
        }
        public TaskPerCampaignViewModel GetPaginatedTaskPerCampaignViewModelDinamic(Guid idCampaign, int pageIndex, int pageSize, List <FilterValue> filters, Guid idAccount)
        {
            filters = filters ?? new List <FilterValue>();

            var itemResult = new TaskPerCampaignViewModel();

            filters          = AddHiddenFilter("IdCampaign", idCampaign.ToString(), filters, itemResult.FilterName);
            itemResult.tasks = new List <MyStatusTaskViewModel>();
            var data = _taskCampaignDao.statusAllow(idAccount, pageIndex, pageSize);
            int aux  = 0;
            int max  = 0;

            foreach (var allow in data)
            {
                aux = _taskCampaignDao.GetTaskCountByCampaignAndStatus(allow.Name, filters, idAccount);
                var taskslist = GetMyTaskViewItemModel(allow.Name, pageIndex, pageSize, filters, idAccount);
                max = (aux > max) ? aux : max;
                itemResult.tasks.Add(new MyStatusTaskViewModel {
                    TasksList = taskslist, CountTasks = aux, type = allow.Name, color = allow.color
                });
            }
            itemResult.IdCampaign = idCampaign;
            return(ConfigurePagination(itemResult, pageIndex, pageSize, filters, max));
        }