//public CustomerService(DbContext1 context) : base(context)
        //{

        //}
        public async Task <IPagedList <Common.Models.Employee> > GetAll(GlobalParamFilter filters)
        {
            var query = await _context.GetData <MISA.Common.Models.Employee>();

            if (filters.WorkState != 0)
            {
                query = query.Where(c => c.WorkState == filters.WorkState);
            }
            if (filters.Gender != -1)
            {
                query = query.Where(c => c.Gender == filters.Gender);
            }

            query = this.SortData(query.AsQueryable(), filters.SortBy, filters.OrderBy);

            var results = query.AsQueryable();

            // Return to list with paging
            return(new PagedList <Common.Models.Employee>(results, filters.PageIndex, filters.PageSize));
        }
Пример #2
0
        public async Task <IActionResult> Get(int pageIndex = 1, int pageSize = 100, int id = 0, int workState = 0, int gender = -1)
        {
            GlobalParamFilter filters = new GlobalParamFilter
            {
                Status    = Constants.Status.Active,
                PageIndex = pageIndex,
                PageSize  = pageSize > 0 ? pageSize : int.MaxValue,
                WorkState = workState,
                Gender    = gender
            };
            var response = new PagedResponse <MISA.Common.Models.Employee> {
                Success = true
            };

            try
            {
                if (id != 0)
                {
                    var data = await _employeeService.GetById(id);

                    response.Data = data;
                }
                else
                {
                    var entities = await _employeeService.GetAll(filters);

                    response.Data       = entities.ToList();
                    response.PageIndex  = pageIndex;
                    response.PageSize   = pageSize;
                    response.TotalPages = entities.TotalPages;
                    response.TotalCount = entities.TotalCount;
                }
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Message = ex.Message;
            }

            return(response.ToHttpResponse());
        }