public IActionResult Post(IDataTablesRequest request)
        {
            var roles = roleManager.Roles.ToList();
            var vm    = new List <RoleViewModel>();

            //todo: automapper beizzítása
            foreach (var role in roles)
            {
                vm.Add(new RoleViewModel {
                    UrlCode = role.UrlCode, Name = role.Name
                });
            }

            var filteredVm = string.IsNullOrWhiteSpace(request?.Search.Value)
                                     ? vm
                                     : vm.Where(x => x.Name.Contains(request?.Search.Value))
            ;

            var sortColumns = request.Columns
                              .Where(c => c.Sort != null)
                              .OrderBy(c => c.Sort.Order)
                              .ToList();

            //Linq Expression használatával lehetne általánossá tenni
            foreach (var column in sortColumns)
            {
                if (column.Sort.Direction == SortDirection.Ascending)
                {
                    if (column.Field.Equals("Name", StringComparison.OrdinalIgnoreCase))
                    {
                        filteredVm = filteredVm.OrderBy(c => c.Name);
                    }
                    if (column.Field.Equals("UrlCode", StringComparison.OrdinalIgnoreCase))
                    {
                        filteredVm = filteredVm.OrderBy(c => c.UrlCode);
                    }
                }
                else
                {
                    if (column.Field.Equals("Name", StringComparison.OrdinalIgnoreCase))
                    {
                        filteredVm = filteredVm.OrderByDescending(c => c.Name);
                    }
                    if (column.Field.Equals("UrlCode", StringComparison.OrdinalIgnoreCase))
                    {
                        filteredVm = filteredVm.OrderByDescending(c => c.UrlCode);
                    }
                }
            }

            var vmPage = filteredVm.Skip(request.Start)
                         .Take(request.Length)
                         .ToList();

            //Elõkészület a DataTables válaszra
            var response = DataTablesResponse.Create(request, vm.Count, filteredVm.Count(), vmPage);

            return(new DataTablesJsonResult(response));
        }
        // GET api/NewsSearch/GetDataTable
        public async Task <JsonResult <IDataTablesResponse> > GetDataTable(IDataTablesRequest request)
        {
            var data = await GetSearchResults(request.Search.Value, request.Length, request.Start);

            var response = DataTablesResponse.Create(request, data.totalEstimatedMatches, data.totalEstimatedMatches, data.value);

            return(new DataTablesJsonResult(response, Request));
        }
Esempio n. 3
0
        public JsonResult GetAuditLogs(DataTableRequest <AuditLogVM> model)
        {
            var records = _auditLogService.GetAuditLogs();

            DataTablesResponse tableResult = new DataTablesResponse(model.draw, records.Data, records.Data.Count, records.Data.Count);

            return(Json(tableResult, JsonRequestBehavior.AllowGet));
        }
Esempio n. 4
0
        public static DataTablesJsonResult CreateResponse(
            this DataTablesRequest request,
            string errorMessage)
        {
            var response = DataTablesResponse.Create(request, errorMessage);

            return(new DataTablesJsonResult(response));
        }
        public virtual JsonResult LoadAlertaNecesidades([ModelBinder(typeof(DataTablesBinder))] IDataTablesRequest requestModel)
        {
            PermisosMostrar();
            var request = requestModel.ConvertToDataTableRequestViewModel();

            //filtro por el centro
            if (HttpContext.Session["Usuario"] != null)
            {
                var UsuarioRolPermisoViewModel = (UsuarioRolPermisoViewModel)HttpContext.Session["Usuario"];
                if (UsuarioRolPermisoViewModel.CentroIdUsuario != null)
                {
                    request.CustomFilters.Add("CentroUsuarioId", HttpContext.Session["CentroIdUsuario"].ToString());
                }
                else
                {
                    request.CustomFilters.Add("CentroUsuarioId", string.Empty);
                }
            }

            var response = _necesidadService.GetNecesidades(request);


            if (!response.IsValid)
            {
                return(null);
            }


            var result = from c in response.NecesidadViewModel
                         select new object[]
            {
                string.Format("<a href=\"/Necesidades/Details/{0}\">{0}</a>", c.NecesidadId.ToString()),
                c.Proyecto,
                c.Cliente,
                c.Tecnologia,
                FormatHelper.Format(c.FechaCreacion, "dd/MM/yyyy"),
                (FormatHelper.Format(c.FechaModificacion, "dd/MM/yyyy") == "01/01/0001") ? "-----------" : FormatHelper.Format(c.FechaModificacion, "dd/MM/yyyy"),
                FormatHelper.Format(c.FechaSolicitud, "dd/MM/yyyy"),
                FormatHelper.Format(c.FechaCompromiso, "dd/MM/yyyy"),
                c.Centro
            };

            var centroUsuarioId = HttpContext.Session["CentroIdUsuario"];

            if ((centroUsuarioId != null) && result.Any())
            {
                var resultTemp = new List <object[]>();
                result.ToList().ForEach(x =>
                {
                    var item = x.ToList();
                    resultTemp.Add(item.ToArray());
                });
                result = resultTemp;
            }
            var jsonResponse = new DataTablesResponse(requestModel.Draw, result, response.TotalElementos, response.TotalElementos);

            return(Json(jsonResponse, JsonRequestBehavior.AllowGet));
        }
        private DataTablesResponse GetDataTablesResponseAsync(IDataTablesRequest request)
        {
            try
            {
                var viewModelList = new List <ProductViewModel>()
                {
                    new ProductViewModel {
                        Id = 1, Name = "A"
                    },
                    new ProductViewModel {
                        Id = 2, Name = "B"
                    },
                    new ProductViewModel {
                        Id = 3, Name = "C"
                    }
                };

                // Global filtering.
                // Filter is being manually applied due to in-memmory (IEnumerable) data.
                // If you want something rather easier, check IEnumerableExtensions Sample.

                int dataCount         = viewModelList.Count();
                int filteredDataCount = 0;
                IEnumerable <ProductViewModel> dataPage;
                if (viewModelList.Count() > 0 && request != null)
                {
                    var filteredData = viewModelList;

                    dataCount = filteredData.Count();

                    // Paging filtered data.
                    // Paging is rather manual due to in-memmory (IEnumerable) data.
                    dataPage = filteredData.Skip(request.Start).Take(request.Length);

                    filteredDataCount = filteredData.Count();
                }
                else
                {
                    var filteredData = viewModelList;

                    dataCount = filteredData.Count();

                    dataPage = filteredData;

                    filteredDataCount = filteredData.Count();
                }

                // Response creation. To create your response you need to reference your request, to avoid
                // request/response tampering and to ensure response will be correctly created.
                var response = DataTablesResponse.Create(request, dataCount, filteredDataCount, dataPage);

                return(response);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 7
0
        public ActionResult PageData(IDataTablesRequest request)
        {
            // Nothing important here. Just creates some mock data.
            var data = Models.Funder_Org.GetData();

            var db         = new CodeFirst.CodeFirst();
            var FunderType = db.Funder_Type.ToList();
            var Project    = db.Projects.ToList();
            var newData    = (from d in data
                              join p in Project on d.ProjectID equals p.ProjectID
                              into projects
                              from mP in projects.DefaultIfEmpty()
                              join f in FunderType on d.TypeID equals f.TypeID
                              select new
            {
                FunderOrgID = d.FunderOrgID,
                OrgName = d.OrgName,
                ContactNumber = d.ContactNumber,
                EmailAddress = d.EmailAddress,
                Bank = d.Bank,
                AccountNumber = d.AccountNumber,
                BranchCode = d.BranchCode,
                StreetAddress = d.StreetAddress,
                City = d.City,
                AreaCode = d.AreaCode,
                Thanked = d.Thanked,
                ProjectName = mP != null ? mP.ProjectName : "Not linked to Project",
                TypeName = f.Name,
            }).ToList();

            var filteredData = newData.Where(_item =>
                                             _item.FunderOrgID.ToString().Contains(request.Search.Value) ||
                                             (_item.OrgName != null ? _item.OrgName.ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.ContactNumber != null ? _item.ContactNumber.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.EmailAddress != null ? _item.EmailAddress.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.Bank != null ? _item.Bank.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.AccountNumber != null ? _item.AccountNumber.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.BranchCode != null ? _item.BranchCode.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.StreetAddress != null ? _item.StreetAddress.ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.City != null ? _item.City.ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             (_item.AreaCode != null ? _item.AreaCode.ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             _item.Thanked.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             (_item.ProjectName != null ? _item.ProjectName.ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             _item.TypeName.ToUpper().Contains(request.Search.Value.ToUpper())
                                             );

            // Paging filtered data.
            // Paging is rather manual due to in-memmory (IEnumerable) data.
            var dataPage = filteredData.Skip(request.Start).Take(request.Length);

            // Response creation. To create your response you need to reference your request, to avoid
            // request/response tampering and to ensure response will be correctly created.
            var response = DataTablesResponse.Create(request, data.Count(), filteredData.Count(), dataPage);

            // Easier way is to return a new 'DataTablesJsonResult', which will automatically convert your
            // response to a json-compatible content, so DataTables can read it when received.
            return(new DataTablesJsonResult(response, JsonRequestBehavior.AllowGet));
        }
Esempio n. 8
0
        public JsonResult GetPersonalList()
        {
            var filteredData   = _PersonalService.GetPersonals();
            var gridPageRecord = filteredData.Data.Skip(0).Take(50).ToList();

            DataTablesResponse tableResult = new DataTablesResponse(1, gridPageRecord, filteredData.Data.Count, filteredData.Data.Count);

            return(Json(tableResult, JsonRequestBehavior.AllowGet));
        }
Esempio n. 9
0
        public async Task <JsonResult> GetSequenceHistoryData(Guid telemetryKey, string sequenceId, IDataTablesRequest request)
        {
            IEnumerable <Tuple <string, bool> > sorts = request.Columns.Where(x => x.Sort != null).OrderBy(x =>
                                                                                                           x.Sort.Order).Select(x => new Tuple <string, bool>(x.Name, x.Sort.Direction == SortDirection.Descending));
            UsageDataTableResult result = await this.Work.GetSequenceHistory(telemetryKey, sequenceId, request.Search.Value).ConfigureAwait(false);

            DataTablesResponse response = DataTablesResponse.Create(request, result.TotalCount, result.FilteredCount, result.UsageData);

            return(new DataTablesJsonResult(response, JsonRequestBehavior.AllowGet));
        }
Esempio n. 10
0
        public static DataTablesJsonResult CreateResponse(
            this DataTablesRequest request,
            int totalRecords,
            int totalRecordsFiltered,
            object data)
        {
            var response = DataTablesResponse.Create(request, totalRecords, totalRecordsFiltered, data);

            return(new DataTablesJsonResult(response));
        }
Esempio n. 11
0
        public async Task <IActionResult> Get([FromForm] IDataTablesRequest request)
        {
            var dataPage = _context.Employees
//                .Where(e => e.Age < 30) // ==> In case you need to do a custom query
//                .AsEnumerable() // ==> **Important**
                           .Compute(request, out var filteredDataCount);
            var response = DataTablesResponse.Create(request, dataPage.Count(), filteredDataCount, dataPage);

            return(await Task.FromResult(new DataTablesJsonResult(response, true)));
        }
        public async Task <IActionResult> CarDatatableSearchRequest(IDataTablesRequest request)
        {
            var searchQuery = request?.GetSearchInformation <CarDatatable, Car>();

            QueryResult <CarDatatableViewModel> output = await _mediator.Send(new GenericQueryWithProjectCommand <Car, CarDatatableViewModel>(searchQuery));

            var response = DataTablesResponse.Create(request, output.TotalItems, output.TotalItems, output.Results);

            return(new DataTablesJsonResult(response, true));
        }
        //[HttpGet("BookFinder/PageData")]
        public IActionResult PageData(IDataTablesRequest request)
        {
            var pageSize   = request.Length;
            var pageNumber = request.Start / request.Length + 1;
            var keyword    = request.Search.Value;
            var dataPage   = Paging(pageSize, pageNumber, keyword).Result;
            var response   = DataTablesResponse.Create(request, dataPage.length, dataPage.filterLength, dataPage.data);

            return(new DataTablesJsonResult(response, true));
        }
        //Search BOOK
        public IActionResult FindBook(IDataTablesRequest request, string title, string author, string publisher, long isbn)
        {
            var pageSize   = request.Length;
            var pageNumber = request.Start / request.Length + 1;
            var keyword    = request.Search.Value;
            var dataPage   = PagingBook(title, author, publisher, isbn, pageSize, pageNumber, keyword).Result;
            var response   = DataTablesResponse.Create(request, dataPage.length, dataPage.filterLength, dataPage.data);

            return(new DataTablesJsonResult(response, true));
        }
Esempio n. 15
0
        public JsonResult StatisticsAjax(IDataTablesRequest request, int battleID)
        {
            var data = battleRepository.GetParticipantsForBattle(battleID);

            var dataCount = data.Count();

            if (string.IsNullOrWhiteSpace(request.Search.Value) == false)
            {
                var query = request.Search.Value.Trim().ToLower();
                data = data.Where(p => p.Name.ToLower().Contains(query));
            }

            var dataFilteredCount = data.Count();

            if (request.Columns.Get("name").Sort != null)
            {
                data = data.OrderBy(p => p.Name, request.Columns.Get("name").Sort);
            }
            else if (request.Columns.Get("side").Sort != null)
            {
                data = data.OrderBy(p => p.IsAttacker, request.Columns.Get("side").Sort);
            }
            else if (request.Columns.Get("dmg").Sort != null)
            {
                data = data.OrderBy(p => p.Damage, request.Columns.Get("dmg").Sort);
            }
            else
            {
                data = data.OrderByDescending(p => p.ID);
            }

            data = data.Skip(request.Start).Take(request.Length);

            var war            = warRepository.GetWarAssociatedWithBattle(battleID);
            var attackerImgUrl = Images.GetCountryFlag(war.AttackerCountryID).Path;
            var defenderImgUrl = Images.GetCountryFlag(war.DefenderCountryID).Path;

            var dataPage = data.Select(p => new
            {
                id         = p.ID,
                name       = p.Name,
                sideImgUrl = p.IsAttacker ? attackerImgUrl : defenderImgUrl,
                damage     = p.Damage,
                imgUrl     = p.ImgUrl
            }).ToList();


            // Response creation. To create your response you need to reference your request, to avoid
            // request/response tampering and to ensure response will be correctly created.
            var response = DataTablesResponse.Create(request, dataCount, dataFilteredCount, dataPage);

            // Easier way is to return a new 'DataTablesJsonResult', which will automatically convert your
            // response to a json-compatible content, so DataTables can read it when received.
            return(new DataTablesJsonResult(response, JsonRequestBehavior.DenyGet));
        }
Esempio n. 16
0
        public ActionResult PageData(IDataTablesRequest request)
        {
            // Nothing important here. Just creates some mock data.
            var data = Models.EFTR.GetData();

            var db        = new CodeFirst.CodeFirst();
            var Users     = db.Users.ToList();
            var Project   = db.Projects.ToList();
            var Suppliers = db.Suppliers.ToList();
            var newData   = (from d in data
                             join e in Users on d.UserID equals e.UserID
                             join a in Project on d.ProjectID equals a.ProjectID
                             join s in Suppliers on d.SupplierID equals s.SupplierID
                             select new
            {
                RequisitionID = d.RequisitionID,
                ApprovalCEO = d.ApprovedCEO,
                ApprovalPM = d.ApprovedProjectManger,
                ReceiptFile = d.ReceiptFile,
                Date = d.Date.ToString("dd/MM/yyyy"),
                TotalAmount = d.TotalAmount,
                SupplierName = s.Name,
                ProjectName = a.ProjectName,
                UserInitials = e.Initials,
                UserLastName = e.LastName
            }).ToList();

            // Global filtering.
            // Filter is being manually applied due to in-memmory (IEnumerable) data.
            // If you want something rather easier, check IEnumerableExtensions Sample.
            var filteredData = newData.Where(_item =>
                                             _item.RequisitionID.ToString().Contains(request.Search.Value) ||
                                             _item.ApprovalPM.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.ApprovalCEO.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.Date.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.TotalAmount.ToString().ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.SupplierName.ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.ProjectName.ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             (_item.UserInitials != null ? _item.UserInitials.ToUpper().Contains(request.Search.Value.ToUpper()) : false) ||
                                             _item.UserLastName.ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.TotalAmount.ToString().Contains(request.Search.Value)
                                             );

            // Paging filtered data.
            // Paging is rather manual due to in-memmory (IEnumerable) data.
            var dataPage = filteredData.Skip(request.Start).Take(request.Length);

            // Response creation. To create your response you need to reference your request, to avoid
            // request/response tampering and to ensure response will be correctly created.
            var response = DataTablesResponse.Create(request, data.Count(), filteredData.Count(), dataPage);

            // Easier way is to return a new 'DataTablesJsonResult', which will automatically convert your
            // response to a json-compatible content, so DataTables can read it when received.
            return(new DataTablesJsonResult(response, JsonRequestBehavior.AllowGet));
        }
        public virtual JsonResult LoadEmpleadosFenix([ModelBinder(typeof(DataTablesBinder))] IDataTablesRequest requestModel)
        {
            SetVisibilidadPorPermisos();

            var request = requestModel.ConvertToDataTableRequestViewModel();

            int centroId = 0;

            if (HttpContext.Session["Usuario"] != null)
            {
                var UsuarioRolPermisoViewModel = (UsuarioRolPermisoViewModel)HttpContext.Session["Usuario"];
                centroId = UsuarioRolPermisoViewModel.CentroIdUsuario.Value;
            }

            var response = _EmpleadoFenixService.GetEmpleadosFenix(request, centroId);
            var filtroEmpleadosFenixModel = MappertoFiltroEmpleadosFenix(request.CustomFilters);

            _sesionPersonasLibres.Add("filtro_PersonaLibre", filtroEmpleadosFenixModel);
            _sesionPersonasLibres.Add("pagina_actual", request.PageNumber);

            if (!response.IsValid)
            {
                return(null);
            }

            var result = from c in response.EmpleadoFenixRowViewModelList
                         select new object[]
            {
                c.NroEmpleado,
                c.Nombre,
                c.Apellidos,
                c.Categoria,
                c.Linea,
                c.Celda,
                this.RenderRazorViewToString("Table/actionColumnEmpleadosFenix", c)
            };

            var centroUsuarioId = HttpContext.Session["CentroIdUsuario"];

            if ((centroUsuarioId != null) && result.Any())
            {
                var resultTemp = new List <object[]>();
                result.ToList().ForEach(x =>
                {
                    var item = x.ToList();
                    resultTemp.Add(item.ToArray());
                });
                result = resultTemp;
            }

            var jsonResponse = new DataTablesResponse(requestModel.Draw, result, response.TotalElementos, response.TotalElementos);

            return(Json(jsonResponse, JsonRequestBehavior.AllowGet));
        }
Esempio n. 18
0
        public JsonResult GetAttributeList(DataTableRequest <AttributeFilter> model)
        {
            int page        = model.start;
            int rowsPerPage = model.length;

            ServiceResultModel <List <AttributeVM> > serviceResult = _attributeService.GetAllAttributeList(model.FilterRequest);
            var gridRecords = serviceResult.Data.Skip(page).Take(rowsPerPage).ToList();
            DataTablesResponse tableResult = new DataTablesResponse(model.draw, gridRecords, serviceResult.Data.Count, serviceResult.Data.Count);

            return(Json(tableResult, JsonRequestBehavior.AllowGet));
        }
Esempio n. 19
0
        public DataTablesJsonResult GetListClassesByGradeId(IDataTablesRequest request, int gradeId)
        {
            var dataPage = new List <Classes>();
            //phan trang tai dong request.Start va lay so luong tai request.Length
            var total = _context.Classes.Count();

            dataPage = _context.Classes.Where(x => x.GradesId == gradeId).ToList();
            var response = DataTablesResponse.Create(request, total, total, dataPage);

            return(new DataTablesJsonResult(response, true));
        }
        public static DataTablesResponse ApplyTo <TItem>(this IDataTablesRequest request, IQueryable <TItem> query)
        {
            var searched = ApplySearch(request, query);

            var filtered = ApplyFilters(request, searched);

            var sorted = ApplySort(request, filtered);

            var limited = sorted.Skip(request.Start).Take(request.Length);

            return(DataTablesResponse.Create(request, query.Count(), ApplySearch(request, query).Count(), limited.ToList()));
        }
        public IActionResult PageData(int status, IDataTablesRequest request)
        {
            var pageSize     = request.Length;
            var pageNumber   = request.Start / request.Length + 1;
            var keyword      = "val" + request.Search.Value;
            var data         = Search(keyword, status).Result;
            var filteredData = data;
            var dataPage     = Paging(pageSize, pageNumber, keyword, status).Result;
            var response     = DataTablesResponse.Create(request, data.Count(), filteredData.Count(), dataPage);

            return(new DataTablesJsonResult(response, true));
        }
 public IActionResult GetDataTableAjax(IDataTablesRequest request)
 {
     try
     {
         DataTablesResponse response = GetDataTablesResponseAsync(request);
         return(new DataTablesJsonResult(response, true));
     }
     catch (Exception)
     {
         return(null);
     }
 }
Esempio n. 23
0
        public async Task <IActionResult> CarDatatableSearchRequest(IDataTablesRequest request)
        {
            var searchQuery = request?.GetSearchInformation <CarDatatable, Car, ITransactionSpecification <Car> >();

            searchQuery.IsolationLevel = System.Transactions.IsolationLevel.ReadUncommitted;

            QueryResult <CarDatatableViewModel> output = await _mediator.Send(new GenericQueryWithProjectCommand <Car, CarDatatableViewModel>(searchQuery, true));

            var response = DataTablesResponse.Create(request, output.TotalItems, output.TotalItems, output.Results);

            return(new DataTablesJsonResult(response, true));
        }
Esempio n. 24
0
        public ActionResult CompanyListAjax(IDataTablesRequest request)
        {
            var companies = companyService.GetAll();

            var res = request.ApplyToQuery(companies);

            var model = mapper.Map <IEnumerable <CompanyListDatatableViewModel> >(res.QueryFiltered);

            var response = DataTablesResponse.Create(request, res.TotalRecords, res.TotalRecordsFiltered, model);

            return(new DataTablesJsonResult(response, JsonRequestBehavior.AllowGet));
        }
Esempio n. 25
0
        public IActionResult GetDataTables(IDataTablesRequest request)
        {
            var data = _context.Produtos.AsQueryable();

            IQueryable <Produto> dataFiltered = string.IsNullOrWhiteSpace(request.Search.Value) ? data : data.Where(x => x.NCM.Contains(request.Search.Value) || x.Nome.Contains(request.Search.Value));

            var dataPage = dataFiltered.Skip(request.Start).Take(request.Length).ToList();

            var response = DataTablesResponse.Create(request, data.Count(), dataFiltered.Count(), dataPage);

            return(new DataTablesJsonResult(response, true));
        }
Esempio n. 26
0
        public ActionResult PageData(IDataTablesRequest request)
        {
            // Nothing important here. Just creates some mock data.
            var data = Models.Vehicle.GetData();

            var db           = new CodeFirst.CodeFirst();
            var vehicleTypes = db.Vehicle_Type.ToList();
            var newData      = (from ta in data
                                join ti in vehicleTypes on ta.TypeID equals ti.TypeID
                                select new
            {
                VehicleID = ta.VehicleID,
                Brand = ta.Brand,
                Model = ta.Model,
                NumberPlate = ta.NumberPlate,
                DateofPurchase = ta.DateOfPurchase.Value.ToString("dd-MM-yyyy"),
                DateofLastRepair = ta.DateofLastRepair.Value.ToString("dd-MM-yyyy"),
                DateofLicencePurchase = ta.DateofLicencePurchase.Value.ToString("dd-MM-yyyy"),
                LicenseExpireDate = ta.LicenseExpireDate.Value.ToString("dd-MM-yyyy"),
                ServiceIntervalInMonths = ta.ServiceIntervalInMonths,
                ServiceIntervalInKMs = ta.ServiceIntervalInKMs,
                TypeName = ti.Name
            }).ToList();

            // Global filtering.
            // Filter is being manually applied due to in-memmory (IEnumerable) data.
            // If you want something rather easier, check IEnumerableExtensions Sample.
            var filteredData = newData.Where(_item =>
                                             _item.VehicleID.ToString().Contains(request.Search.Value) ||
                                             _item.Brand.ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.Model.ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             _item.NumberPlate.ToUpper().Contains(request.Search.Value.ToUpper()) ||
                                             (_item.DateofPurchase != null ? _item.DateofPurchase.ToString().Contains(request.Search.Value) : false) ||
                                             (_item.DateofLastRepair != null ? _item.DateofLastRepair.ToString().Contains(request.Search.Value) : false) ||
                                             (_item.DateofLicencePurchase != null ? _item.DateofLicencePurchase.ToString().Contains(request.Search.Value) : false) ||
                                             (_item.LicenseExpireDate != null ? _item.LicenseExpireDate.ToString().Contains(request.Search.Value) : false) ||
                                             _item.ServiceIntervalInMonths.ToString().Contains(request.Search.Value) ||
                                             _item.ServiceIntervalInKMs.ToString().Contains(request.Search.Value) ||
                                             _item.TypeName.ToUpper().Contains(request.Search.Value.ToUpper())
                                             );

            // Paging filtered data.
            // Paging is rather manual due to in-memmory (IEnumerable) data.
            var dataPage = filteredData.Skip(request.Start).Take(request.Length);

            // Response creation. To create your response you need to reference your request, to avoid
            // request/response tampering and to ensure response will be correctly created.
            var response = DataTablesResponse.Create(request, data.Count(), filteredData.Count(), dataPage);

            // Easier way is to return a new 'DataTablesJsonResult', which will automatically convert your
            // response to a json-compatible content, so DataTables can read it when received.
            return(new DataTablesJsonResult(response, JsonRequestBehavior.AllowGet));
        }
Esempio n. 27
0
        // *** END CUSTOMER CONTACTS ***

        public ActionResult GetCustomerCarriers(IDataTablesRequest request, int customerId)
        {
            _dbContext.Configuration.LazyLoadingEnabled   = false;
            _dbContext.Configuration.ProxyCreationEnabled = false;
            var data         = _dbContext.View_Carrier.Where(t => t.CustomerID == customerId).OrderBy(t => t.CarrierID);
            var filteredData = data.Where(_item => _item.CarrierName.Contains(request.Search.Value));
            var orderColums  = request.Columns.Where(x => x.Sort != null);
            var dataPage     = data.OrderBy(orderColums).Skip(request.Start).Take(request.Length);
            var response     = DataTablesResponse.Create(request, data.Count(), filteredData.Count(), dataPage);

            return(new DataTablesJsonResult(response, JsonRequestBehavior.AllowGet));
        }
Esempio n. 28
0
        /// <summary>
        /// HotelList Action Grid Fill Method
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public JsonResult GetHotelList(DataTableRequest <HotelFilter> model)
        {
            var page        = model.start;
            var rowsPerPage = model.length;

            var filteredData   = _hotelService.GetAllHotels(model.FilterRequest);
            var gridPageRecord = filteredData.Data.Skip(page).Take(rowsPerPage).ToList();

            DataTablesResponse tableResult = new DataTablesResponse(model.draw, gridPageRecord, filteredData.Data.Count, filteredData.Data.Count);

            return(Json(tableResult, JsonRequestBehavior.AllowGet));
        }
Esempio n. 29
0
        public JsonResult GetStokDefinitionList(DataTableRequest <STKFilter> model)
        {
            var page        = model.start;
            var rowsPerPage = model.length;

            var filteredData   = _StokEkstre.GetAllStokDefinition(model.FilterRequest);
            var gridPageRecord = filteredData.Data.Skip(page).Take(rowsPerPage).ToList();

            DataTablesResponse tableResult = new DataTablesResponse(model.draw, gridPageRecord, filteredData.Data.Count, filteredData.Data.Count);

            return(Json(tableResult, JsonRequestBehavior.AllowGet));
        }
Esempio n. 30
0
        public virtual JsonResult LoadDesgloseCategoria([ModelBinder(typeof(DataTablesBinder))] IDataTablesRequest requestModel)
        {
            var request = requestModel.ConvertToDataTableRequestViewModel();

            var listaCategorias = GeneraListaCategoria();

            if (HttpContext.Session["CentroIdUsuario"] != null)
            {
                var centroUsuario = HttpContext.Session["CentroIdUsuario"].ToString();
                if (!string.IsNullOrEmpty(centroUsuario))
                {
                    request.CustomFilters.Add("CentroIdUsuario", centroUsuario);
                }
            }

            var response = _funnelProcesosService.GetDatosDesgloseCategoria(request, listaCategorias);

            if (!response.IsValid)
            {
                return(null);
            }

            var result = from c in response.ListaDesgloseCategoria
                         select new object[]
            {
                c.NombreCategoria.Length <= 11 ? c.NombreCategoria : string.Format("<span title=\"{0}\">{1}</span>", c.NombreCategoria.ToString(), c.NombreCategoria.Substring(0, 11) + "..."),
                string.Format("<a>{0}</a>", c.DatosFiltradoCV.TotalCreados),
                string.Format("<a>{0}</a>", c.DatosFiltradoCV.NumeroPendienteFiltrados),
                string.Format("<a>{0}</a>", c.DatosFiltradoCV.NumeroSupera),
                string.Format("<a>{0}</a>", c.DatosFiltradoCV.NumeroDescartados),
                string.Format("<a>{0}</a>", c.DatosFiltradoCV.NumeroRenuncias),
                string.Format("<a>{0}</a>", c.DatosFiltradoCV.NumeroStandBy),
                string.Format("<a>{0}</a>", c.DatosEntrevistas.NumeroPendientesCitacion),
                string.Format("<a>{0}</a>", c.DatosEntrevistas.NumeroFeedback),
                string.Format("<a>{0}</a>", c.DatosEntrevistas.NumeroSupera),
                string.Format("<a>{0}</a>", c.DatosEntrevistas.NumeroDescartados),
                string.Format("<a>{0}</a>", c.DatosEntrevistas.NumeroRenuncias),
                string.Format("<a>{0}</a>", c.DatosEntrevistas.NumeroStandBy),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroPendientesCitacion),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroFeedback),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroAceptadas),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroRechazadas),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroDescartadas),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroRenuncias),
                string.Format("<a>{0}</a>", c.DatosCartaOferta.NumeroStandBy),
                this.RenderRazorViewToString("Table/dataCategoria", c)
            };

            var jsonResponse = new DataTablesResponse(requestModel.Draw, result, response.TotalElementos, response.TotalElementos);

            return(Json(jsonResponse, JsonRequestBehavior.AllowGet));
        }