Exemple #1
0
        public async Task <IActionResult> RenderTransActivityBarChart(TransActivitySearchModel searchModel, string period)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageReports))
            {
                return(AccessDeniedView());
            }

            var model = await _reportModelFactory.PrepareListTransActivity(searchModel);

            var stacked = new List <TransActivityStackedBarModel>();

            var trans = model
                        .GroupBy(x => x.Category)
                        .Select(x => x.First());

            foreach (var tran in trans.ToList())
            {
                stacked.Add(new TransActivityStackedBarModel
                {
                    stacked  = tran.Category,
                    datasets = GetTransActivityDataSet(period, tran.Category, model)
                });
            }

            return(Json(stacked));
        }
        public async Task <TransActivitySearchModel> PrepareTransActivitySearchModel(TransActivitySearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //prepare selectlist
            await _baseModelFactory.PrepareStores(searchModel.Branches);

            searchModel.SetGridPageSize();

            return(await Task.FromResult(searchModel));
        }
Exemple #3
0
        public async Task <IActionResult> RenderTransActivityPieChart(TransActivitySearchModel searchModel)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageReports))
            {
                return(AccessDeniedView());
            }

            var model = await _reportModelFactory.PrepareListTransActivity(searchModel);

            var trans = model
                        .GroupBy(x => x.Category).Select(x => new
            {
                entity = x.Key,
                value  = ((float)x.Count() / model.Count() * 100).ToString("F")
            });

            return(Json(trans));
        }
        public async Task <IEnumerable <TransActivityModel> > PrepareListTransActivity(TransActivitySearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            var query = _transRepository.Table;

            if (searchModel.CreatedOnFrom.HasValue)
            {
                query = query.Where(item => searchModel.CreatedOnFrom.Value <= item.CreatedOnUtc);
            }
            if (searchModel.CreatedOnTo.HasValue)
            {
                query = query.Where(item => searchModel.CreatedOnTo.Value >= item.CreatedOnUtc);
            }
            if (searchModel.BranchId.HasValue && searchModel.BranchId.Value > 0)
            {
                query = query.Where(item => searchModel.BranchId.Value == item.P_BranchNo);
            }

            var model = (await query.ToListAsync()).Select(q =>
            {
                var m       = q.ToModel <TransActivityModel>();
                m.Branch    = q.Store.P_Name;
                m.CreatedOn = q.CreatedOnUtc;

                return(m);
            });

            return(model);
        }