Пример #1
0
        public async Task <DataPaging <List <RevokeDebtSearch> > > SearchAsync(
            DateTime?fromDate = null,
            DateTime?toDate   = null,
            int dateType      = 1,
            int groupId       = 0,
            int assigneeId    = 0,
            string status     = null,
            int processStatus = -1,
            string freeText   = null,
            int page          = 1,
            int limit         = 10
            )
        {
            fromDate = fromDate.HasValue ? fromDate.ToStartDateTime() : DateTime.Now.ToStartDateTime();
            toDate   = toDate.HasValue ? toDate.ToEndDateTime() : DateTime.Now.ToEndDateTime();
            var data = await _rpRevoke.SearchAsync(_process.User.Id, fromDate, toDate, dateType, groupId, assigneeId, status, processStatus, freeText, page, limit);

            if (data == null || !data.Any())
            {
                return(DataPaging.Create(null as List <RevokeDebtSearch>, 0));
            }
            var result = DataPaging.Create(data, data[0].TotalRecord);

            return(result);
        }
Пример #2
0
        public async Task <JsonResult> SearchTemps(string freeText, string status, int page = 1, int limit = 20, string fromDate = null, string toDate = null, int loaiNgay = 0, int manhom = 0,

                                                   int mathanhvien = 0)
        {
            page = page <= 0 ? 1 : page;



            DateTime dtFromDate = DateTime.MinValue, dtToDate = DateTime.Now.AddDays(3);

            if (fromDate != "")
            {
                dtFromDate = DateTimeFormat.ConvertddMMyyyyToDateTimeNew(fromDate);
            }
            if (toDate != "")
            {
                dtToDate = DateTimeFormat.ConvertddMMyyyyToDateTimeNew(toDate);
            }

            var profiles = await _rpMCredit.GetTempProfiles(page, limit, freeText, GlobalData.User.IDUser, status, dtFromDate, dtToDate, loaiNgay, manhom, mathanhvien = 0);

            if (profiles == null || !profiles.Any())
            {
                return(ToJsonResponse(true, "", DataPaging.Create(null as List <ProfileSearchSql>, 0)));
            }
            var result = DataPaging.Create(profiles, profiles[0].TotalRecord);

            return(ToJsonResponse(true, "", result));
        }
Пример #3
0
        public DataPaging <ms_company> List(HttpRequestMessage v)
        {
            DataPaging <ms_company> dataPaging = new DataPaging <ms_company>();

            dataPaging.meta = new MetaPaging();
            var p = v.Content.ReadAsStringAsync().Result;
            //var xsss = p.Result[""] ; // exam
            NameValueCollection qscoll = HttpUtility.ParseQueryString(p);
            string search     = "";
            string orderField = "";
            string orderby    = "";
            string page       = "";
            string perpage    = "";
            string startRow   = "";


            search     = qscoll["query[generalSearch]"];
            page       = qscoll["pagination[page]"];
            perpage    = qscoll["pagination[perpage]"];
            orderField = qscoll["sort[field]"];
            orderby    = qscoll["sort[sort]"];

            dataPaging.meta.perpage = Convert.ToInt32(perpage);
            dataPaging.meta.page    = Convert.ToInt32(page);

            startRow = ((dataPaging.meta.page - 1) * dataPaging.meta.perpage).ToString();
            // datatable[query]:
            //pagination[page]:1
            //pagination[pages]:1
            //pagination[perpage]:5
            //pagination[total]:0
            //sort[field]:CompName
            //sort[sort]:asc
            //query:
            List <ms_company> compList = null;

            using (OASEntities _ent = new OASEntities())
            {
                int totalRow = _ent.Database.SqlQuery <int>(@"  select  count(*) totalRow  from ms_company where compName like '%" + search + "%' or compCode like '%" + search + "%' ").Single();

                compList = _ent.ms_company.SqlQuery(@" select top " + perpage + " * from ( Select *,ROW_NUMBER() OVER(ORDER BY " +
                                                    orderField + " " + orderby + ") r from ms_company where compName like '%" + search + "%' or compCode like '%" + search + "%'"
                                                    + " ) company where r > " + startRow + " "
                                                    ).ToList();

                dataPaging.data = compList;

                dataPaging.meta.total = totalRow;

                dataPaging.meta.pages = Decimal.ToInt32(dataPaging.meta.total / dataPaging.meta.perpage);
            }



            return(dataPaging);
        }
Пример #4
0
        public async Task <DataPaging <List <EmployeeViewModel> > > SearchsAsync(int role, string freeText, int page = 1, int limit = 10)
        {
            var data = await _rpEmployee.GetsAsync(role, freeText, page, limit, _process.User.OrgId);

            if (data == null || !data.Any())
            {
                return(DataPaging.Create <List <EmployeeViewModel> >(null, 0));
            }
            return(DataPaging.Create <List <EmployeeViewModel> >(data, data[0].TotalRecord));
        }
Пример #5
0
        public async Task <DataPaging <List <CompanyIndexModel> > > SearchsAsync(string freeText, int page, int limit)
        {
            var datas = await _rpCompany.GetsAsync(freeText, page, limit);

            if (datas == null)
            {
                return(DataPaging.Create(datas, 0));
            }
            return(DataPaging.Create(datas, datas.FirstOrDefault().TotalRecord));
        }
Пример #6
0
        public async Task <DataPaging <List <GroupIndexModel> > > SearchAsync(int parentId, int page = 1, int limit = 10)
        {
            var data = await _rpGroup.GetChildGroupByParentIdForPagingAsync(page, limit, parentId, _process.User.Id);

            if (data == null || !data.Any())
            {
                return(DataPaging.Create <List <GroupIndexModel> >(null, 0));
            }
            return(DataPaging.Create <List <GroupIndexModel> >(data, data.FirstOrDefault().TotalRecord));
        }
        private string CreateDescription(int numResults, int numPages, int pageIndex)
        {
            pageIndex = DataPaging.FixPageIndex(numPages, pageIndex);

            return(string.Format(
                       "Total number of results found: {0}, Page {1} of {2}.",
                       numResults,
                       pageIndex + 1,
                       numPages));
        }
Пример #8
0
 private void LoadPagingControl(int Count)
 {
     pagingControl             = Page.LoadControl("~/UserControl/DataPaging.ascx") as DataPaging;
     pagingControl.PageSize    = 5;
     pagingControl.CurrentPage = CurrentPage;
     pagingControl.TotalRecord = Count;
     if (Count != 0)
     {
         pageHolder.Controls.Add(pagingControl);
     }
 }
Пример #9
0
        public async Task <DataPaging <List <CheckDupIndexModel> > > GetsAsync(
            string freeText,
            int page,
            int limit, int userId)
        {
            var datas = await _rpCheckDup.GetsAsync(freeText, page, limit, userId);

            var result = DataPaging.Create(datas, datas.FirstOrDefault() == null ? 0 : datas.FirstOrDefault().TotalRecord);

            return(result);
        }
Пример #10
0
        public async Task <JsonResult> Search(string freeText = null, int provinceId = 0, int courierId = 0, string status = null, int groupId = 0, int page = 1, int limit = 10, string salecode = null)
        {
            //var totalRecord = await _rpCourierProfile.CountHosoCourrier(freeText, courierId, GlobalData.User.IDUser, status, groupId, provinceId, salecode);
            var datas = await _rpCourierProfile.GetHosoCourrier(freeText, courierId, GlobalData.User.IDUser, status, page, limit, groupId, provinceId, salecode);

            var totalRecord = (datas != null && datas.Any()) ? datas[0].TotalRecord : 0;
            //await _rpLog.InsertLog("courier-search", $"freetext:{freeText}, userid:{ GlobalData.User.IDUser}, courierId:{courierId}, status:{status}, salecode: {salecode}");
            var result = DataPaging.Create(datas, totalRecord);

            return(ToJsonResponse(true, null, result));
        }
Пример #11
0
        public async Task <JsonResult> Search(string freeText = null, int page = 1, int limit = 10)
        {
            var bizCompany  = new CompanyRepository();
            var totalRecord = await bizCompany.CountAsync(freeText);

            var datas = await bizCompany.GetsAsync(freeText, page, limit);

            var result = DataPaging.Create(datas, totalRecord);

            return(ToJsonResponse(true, null, result));
        }
Пример #12
0
        public JsonResult loadTableData(string DeviceName)
        {
            try
            {
                /*db.Configuration.ProxyCreationEnabled = false;*/
                int    length         = int.Parse(Request.Query["length"]);
                int    start          = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(int.Parse(Request.Query["start"]) / length))) + 1;
                string searchValue    = Request.Query["search[value]"];
                string sortColumnName = Request.Query["columns[" + Request.Query["order[0][column]"] + "][name]"];
                string sortDirection  = Request.Query["order[0][dir]"];

                /*int length = 10;
                 * int start = 1;
                 * string searchValue = "";
                 * string sortColumnName = "ID";
                 * string sortDirection = "asc";*/
                DataPaging apg = new DataPaging();
                apg.data = new List <DataDevice>();
                start    = (start - 1) * length;
                List <Data> listData = _db.Datas.Where(x => x.DeviceName == DeviceName).ToList <Data>();
                apg.recordsTotal = listData.Count;
                //filter
                if (!string.IsNullOrEmpty(searchValue))
                {
                    listData = listData.Where(x => x.TagName.ToLower().Contains(searchValue.ToLower())).ToList <Data>();
                }


                apg.recordsFiltered = listData.Count;
                //paging
                listData = listData.Skip(start).Take(length).ToList <Data>();

                foreach (var i in listData)
                {
                    DataDevice d = new DataDevice
                    {
                        TagName    = i.TagName,
                        DeviceName = i.DeviceName,
                        Time       = i.Time,
                        Value      = i.Value,
                        Connected  = i.Connected
                    };
                    apg.data.Add(d);
                }

                apg.draw = int.Parse(Request.Query["draw"]);
                return(Json(apg));
                /*return Json(apg, JsonRequestBehavior.AllowGet);*/
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Пример #13
0
        public async Task <DataPaging <List <RevokeDebtSearch> > > SearchAsync(int userId, string freeText, string status, int page, int limit, int groupId = 0, int assigneeId = 0, DateTime?fromDate = null, DateTime?toDate = null, int loaiNgay = 1)
        {
            var data = await _rpRevokeDebt.SearchAsync(userId, freeText, status, page, limit, groupId, assigneeId, fromDate, toDate, loaiNgay);

            if (data == null || !data.Any())
            {
                return(DataPaging.Create(null as List <RevokeDebtSearch>, 0));
            }
            var result = DataPaging.Create(data, data[0].TotalRecord);

            return(result);
        }
Пример #14
0
        public ms_company Get(string id)
        {
            ms_company msCompany = null;
            DataPaging <ms_company> dataPaging = new DataPaging <ms_company>();

            using (OASEntities _ent = new OASEntities())
            {
                msCompany = _ent.ms_company.Find(id);
            }


            return(msCompany);
        }
Пример #15
0
        public async Task <JsonResult> TimHSQL(string fromDate,
                                               string toDate,
                                               string maHS,
                                               string cmnd,
                                               int loaiNgay    = 1,
                                               int maNhom      = 0,
                                               int maThanhVien = 0,
                                               string freetext = null,
                                               string status   = null,
                                               int page        = 1, int limit = 10
                                               )
        {
            List <HoSoQuanLyModel> lstHoso = new List <HoSoQuanLyModel>();
            int totalRecord = 0;

            if (!string.IsNullOrWhiteSpace(freetext) && freetext.Length > 50)
            {
                return(ToJsonResponse(false, "Từ khóa tìm kiếm không được nhiều hơn 50 ký tự"));
            }

            try
            {
                DateTime dtFromDate = DateTime.MinValue, dtToDate = DateTime.MinValue;
                if (fromDate != "")
                {
                    dtFromDate = DateTimeFormat.ConvertddMMyyyyToDateTime(fromDate);
                }
                if (toDate != "")
                {
                    dtToDate = DateTimeFormat.ConvertddMMyyyyToDateTime(toDate);
                }

                string trangthai = string.IsNullOrWhiteSpace(status) ? Helpers.Helpers.GetAllStatusString() : status;
                //trangthai +=
                var isAdmin = await _rpEmployee.CheckIsAdmin(GlobalData.User.IDUser);

                totalRecord = new HoSoBLL().CountHoSoQuanLy(GlobalData.User.IDUser, maNhom, maThanhVien, dtFromDate, dtToDate, maHS, cmnd, trangthai, loaiNgay, freetext);
                lstHoso     = new HoSoBLL().TimHoSoQuanLy(GlobalData.User.IDUser, maNhom, maThanhVien, dtFromDate, dtToDate, maHS, cmnd, trangthai, loaiNgay, freetext, page, limit, isAdmin: isAdmin);
                if (lstHoso == null)
                {
                    lstHoso = new List <HoSoQuanLyModel>();
                }
                var result = DataPaging.Create(lstHoso, totalRecord);
                return(ToJsonResponse(true, null, result));
            }
            catch (BusinessException ex)
            {
                return(ToJsonResponse(false, ex.Message));
            }
        }
Пример #16
0
        public async Task <DataPaging <List <ProductIndexModel> > > GetsAsync(
            int page        = 1
            , int limit     = 10
            , int partnerId = 0
            )
        {
            var response = await _rpProduct.GetsAync(_process.User.Id, page, limit, partnerId);

            if (response == null || !response.Any())
            {
                return(DataPaging.Create(response, 0));
            }
            return(DataPaging.Create(response, response.FirstOrDefault().TotalRecord));
        }
Пример #17
0
        //parameter - в данном случае тег
        public ActionResult Tag(string parameter, int page)
        {
            DataPaging dataPaging = new DataPaging()
            {
                controller = "Posts",
                action     = "Tag",
                parameter  = parameter,
                page       = page,
                maxPage    = ContentRepository.getCountPageByTag(parameter)
            };

            ViewBag.dataPaging = dataPaging;

            return(View(ContentRepository.getPostsByTag(parameter, page)));
        }
Пример #18
0
        public ActionResult Index(int page = 1)
        {
            DataPaging dataPaging = new DataPaging()
            {
                controller = "Home",
                action     = "Index",
                parameter  = "",
                page       = page,
                maxPage    = ContentRepository.getCountPage()
            };

            ViewBag.dataPaging = dataPaging;

            return(View(ContentRepository.getPosts(page)));
        }
Пример #19
0
        public async Task <DataPaging <List <CheckDupIndexModel> > > GetsAsync(
            string freeText,
            int page,
            int limit)
        {
            var datas = await _rpCheckDup.GetsAsync(freeText, page, limit, _process.User.Id);

            if (datas == null || !datas.Any())
            {
                return(DataPaging.Create <List <CheckDupIndexModel> >(datas, 0));
            }
            var result = DataPaging.Create(datas, datas.FirstOrDefault().TotalRecord);

            return(result);
        }
Пример #20
0
    void Start()
    {
        Instance      = this;
        NewpagingData = new List <Personnel>();

        //personnels = CommunicationObject.Instance.GetPersonnels();

        // StartPerSearchUI();
        AddPageBut.onClick.AddListener(AddPersonnelPage);
        MinusPageBut.onClick.AddListener(MinusPersonnelPage);
        pegeNumText.onEndEdit.AddListener(InputPersonnelPage);
        selectedBut.onClick.AddListener(SetPerFindData_Click);
        CloseBut.onClick.AddListener(ClosepersonnelSearchWindow);
        CreatBut.onClick.AddListener(OPenAddPersonnelUI);
        PerSelected.onEndEdit.AddListener(InputPerFindData);
        ToggleAuthoritySet();
    }
Пример #21
0
        private async Task <DataPaging <List <CourierExportModel> > > SearchByModel(CourierSearchRequestModel request)
        {
            var datas = await _rpCourierProfile.GetHosoCourrier(request.freeText, request.courierId, GlobalData.User.IDUser, request.status, request.PageNumber, request.limit, request.groupId, request.provinceId, request.salecode);

            var totalRecord = (datas != null && datas.Any()) ? datas[0].TotalRecord : 0;

            try
            {
                var profiles = _mapper.Map <List <CourierExportModel> >(datas);
                var result   = DataPaging.Create(profiles, totalRecord);
                return(result);
            }
            catch (Exception e)
            {
                return(null);
            }
        }
Пример #22
0
        public async Task <IActionResult> TimHS(
            string fromDate,
            string toDate,
            string maHS,
            string cmnd,
            int loaiNgay,
            int maNhom      = 0,
            string freetext = null,
            int page        = 1, int limit = 10,
            int maThanhVien = 0)
        {
            var data = await _bizHoso.GetHosoDuyet(fromDate, toDate, maHS,
                                                   cmnd, loaiNgay, maNhom, freetext, page, limit, maThanhVien);

            var result = DataPaging.Create(data.datas, data.TotalRecord);

            return(ToResponse(result));
        }
Пример #23
0
        public DataPaging <MS_Company> List(SearchCompDataPaging search)
        {
            List <MS_Company>       compList   = null;
            DataPaging <MS_Company> dataPaging = new DataPaging <MS_Company>();

            if (search != null)
            {
                using (OASEntities _ent = new OASEntities())
                {
                    compList                = _ent.MS_Company.Where(x => x.CompName.Contains(search.compName)).OrderBy(x => x.CompName).ToList();
                    dataPaging.data         = compList;
                    dataPaging.meta         = new MetaPaging();
                    dataPaging.meta.total   = compList.Count;
                    dataPaging.meta.perpage = 10;
                    dataPaging.meta.page    = 1;
                }
            }

            return(dataPaging);
        }
Пример #24
0
        public ActionResult HouseList(long cityId, int pageIndex)
        {
            HouseListModel model  = new HouseListModel();
            var            houses = houseService.GetAll(cityId);

            foreach (var house in houses)
            {
                CreateStaticPage(house.Id);
            }
            model.Houses         = houses;
            model.Cities         = cityService.GetAll();
            model.SelectedCityId = cityId;
            DataPaging pager = new DataPaging();

            pager.PageIndex  = pageIndex;
            pager.TotalCount = houseService.GetAll(cityId).Count();
            pager.UrlPattern = "/House/HouseList?cityId=" + cityId + "&pageIndex={pn}";
            ViewBag.pager    = pager.GetPager();
            return(View(model));
        }
Пример #25
0
        public async Task <JsonResult> Search(string workFromDate, string workToDate,
                                              string freetext = "",
                                              int roleId      = 0,
                                              int page        = 1, int limit = 10)
        {
            var fromDate = string.IsNullOrWhiteSpace(workFromDate) ? DateTime.Now.AddDays(-7) : DateTimeFormat.ConvertddMMyyyyToDateTime(workFromDate);
            var toDate   = string.IsNullOrWhiteSpace(workToDate) ? DateTime.Now : DateTimeFormat.ConvertddMMyyyyToDateTime(workToDate);

            BusinessExtension.ProcessPaging(ref page, ref limit);
            freetext = string.IsNullOrWhiteSpace(freetext) ? string.Empty : freetext.Trim();
            var datas = await _rpEmployee.Gets(fromDate, toDate, roleId, freetext, page, limit, GlobalData.User.OrgId, GlobalData.User.IDUser);

            if (datas == null || !datas.Any())
            {
                return(ToJsonResponse(true, null, DataPaging.Create(null as List <EmployeeViewModel>, 0)));
            }
            var result = DataPaging.Create(datas, datas[0].TotalRecord);

            return(ToJsonResponse(true, null, result));
        }
Пример #26
0
        public async Task <DataPaging <List <TempProfileIndexModel> > > SearchsTemsAsync(
            DateTime?fromDate
            , DateTime?toDate
            , int dateType  = 1
            , int groupId   = 0
            , int memberId  = 0,
            string freeText = null,
            string status   = null,
            int page        = 1,
            int limit       = 20)
        {
            page     = page <= 0 ? 1 : page;
            fromDate = fromDate.HasValue ? fromDate.Value.ToStartDateTime() : DateTime.Now.ToStartDateTime();
            toDate   = toDate.HasValue ? toDate.Value.ToEndDateTime() : DateTime.Now.ToEndDateTime();
            var profiles = await _rpMCredit.GetTempProfilesAsync(_process.User.Id, fromDate, toDate, dateType, groupId, memberId, page, limit, freeText, status);

            if (profiles == null || !profiles.Any())
            {
                return(DataPaging.Create(null as List <TempProfileIndexModel>, 0));
            }
            return(DataPaging.Create(profiles, profiles[0].TotalRecord));
        }
Пример #27
0
        public async Task <DataPaging <List <CourierIndexModel> > > GetsAsync(string freeText,
                                                                              DateTime?fromDate
                                                                              , DateTime?toDate
                                                                              , int dateType    = 2
                                                                              , string status   = null
                                                                              , int page        = 1
                                                                              , int limit       = 10
                                                                              , int assigneeId  = 0
                                                                              , int groupId     = 0
                                                                              , int provinceId  = 0
                                                                              , string saleCode = null)
        {
            fromDate = fromDate.HasValue ? fromDate.Value.ToStartDateTime() : DateTime.Now.ToStartDateTime();
            toDate   = toDate.HasValue ? toDate.Value.ToEndDateTime() : DateTime.Now.ToEndDateTime();
            var response = await _rpCourier.GetsAsync(freeText, fromDate.Value, toDate.Value, dateType, status, page, limit, assigneeId, groupId, provinceId, saleCode, _process.User.Id);

            if (response == null || !response.Any())
            {
                return(DataPaging.Create(response, 0));
            }
            return(DataPaging.Create(response, response.FirstOrDefault().TotalRecord));
        }
Пример #28
0
        public async Task <DataPaging <List <ProfileIndexModel> > > GetsAsync(DateTime?fromDate
                                                                              , DateTime?toDate
                                                                              , int dateType     = 1
                                                                              , int groupId      = 0
                                                                              , int memberId     = 0
                                                                              , string status    = null
                                                                              , string freeText  = null
                                                                              , string sort      = "desc"
                                                                              , string sortField = "updatedtime"
                                                                              , int page         = 1
                                                                              , int limit        = 20)
        {
            fromDate = fromDate.HasValue ? fromDate.Value.ToStartDateTime() : DateTime.Now.ToStartDateTime();
            toDate   = toDate.HasValue ? toDate.Value.ToEndDateTime() : DateTime.Now.ToEndDateTime();
            var result = await _rpProfile.GetsAsync(_process.User.Id, fromDate.Value, toDate.Value, dateType, groupId, memberId, status, freeText, sort, sortField, page, limit);

            if (result == null || !result.Any())
            {
                return(DataPaging.Create((List <ProfileIndexModel>)null, 0));
            }

            return(DataPaging.Create(result, result[0].TotalRecord));
        }
        private async Task <ProteinSearchViewModel> Search(ProteinSearchQuery psq, int pageIndex)
        {
            var model = await CreateModel(psq, pageIndex);

            var query = FaToolDbEntities
                        .GetProteinSearchValues(psq.SearchOption, psq.SourceOrganismID)
                        .Where(pv => pv.Value.Contains(psq.SearchValue));

            int numResults = await query.CountAsync();

            if (numResults == 0)
            {
                model.StatusDescription = "Query does not return any results.";
            }
            else
            {
                int numPages = DataPaging.CalculatePageCount(numResults);
                pageIndex = DataPaging.FixPageIndex(numPages, pageIndex);
                int skip = DataPaging.CalculateSkipCount(numResults, pageIndex);

                var proteinValues = await query
                                    .OrderBy(x => x.Value)
                                    .ThenBy(x => x.TermName)
                                    .ThenBy(x => x.ProteinName)
                                    .Skip(skip)
                                    .Take(DataPaging.PageSize)
                                    .ToArrayAsync();

                model.Results = proteinValues
                                .Select(CreateItem)
                                .ToArray();

                model.StatusDescription = CreateDescription(numResults, numPages, pageIndex);
            }

            return(model);
        }
Пример #30
0
        /// <summary>
        /// 输出Json字符串
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        private string ResponseJsonBySQL()
        {
            //if (string.IsNullOrEmpty(sql)) return null;


            List <ICriterion> exps = new List <ICriterion>();

            //查询数据时
            if (!string.IsNullOrEmpty(GridPagingStruct.search))
            {
                var     jarr    = (JArray)JsonConvert.DeserializeObject(GridPagingStruct.search);
                dynamic jsonObj = Razor.DynamicJson.DynamicJsonConvert.Parse(GridPagingStruct.search);

                string Name  = jsonObj[0].Name;
                string Age   = jsonObj[1].Age;
                string Email = jsonObj[2].Email;

                if (!string.IsNullOrEmpty(Name))
                {
                    exps.Add((ICriterion)Expression.Like("Name", Name));
                }
                if (!string.IsNullOrEmpty(Age))
                {
                    exps.Add((ICriterion)Expression.Eq("Age", int.Parse(Age)));
                }
                if (!string.IsNullOrEmpty(Email))
                {
                    exps.Add((ICriterion)Expression.Like("Email", Email));
                }
            }

            var list = DataPaging.FindAll <Employee>(GridPagingStruct.Page, GridPagingStruct.PageSize,
                                                     new Order[] { new Order("CreateTime", false) }, exps.ToArray());
            GridJsonStruct gjs = new GridJsonStruct(list, DataPaging.GetCount <Employee>());

            return(Razor.DynamicJson.DynamicJsonConvert.SerializeObject(gjs));
        }