Esempio n. 1
0
        public async Task <IActionResult> WorkOrderHistory(DataSourceRequest command,
                                                           WOHistoryListModel model)
        {
            var(woHistoryListModel, totalCount) = await _workorderService.PrepareWOHistoryListModel(model, command.Page, command.PageSize);

            var gridModel = new DataSourceResult
            {
                Data  = woHistoryListModel,
                Total = totalCount
            };

            return(Json(gridModel));
        }
Esempio n. 2
0
        public async Task <(IEnumerable <WOHistoryModel> WOHistoryList, int totalCount)> PrepareWOHistoryListModel(WOHistoryListModel model, int pageIndex, int pageSize)
        {
            try
            {
                var query = _soRepository.Table.Where(s => s.SoclientId == (int)_workContext.CurrentCustomer.ClientId);

                if (model.Status != "All")
                {
                    query = query.Where(s => s.Sostatus.ToLower().Contains(model.Status.ToLower()));
                }

                if (!string.IsNullOrWhiteSpace(model.SearchByOrder))
                {
                    query = query.Where(s => s.Sonumber.ToLower().Contains(model.SearchByOrder.ToLower()));
                }

                if (!string.IsNullOrWhiteSpace(model.SearchByVendor))
                {
                    query = query.Where(s => s.Scvendor.ToLower().Contains(model.SearchByVendor.ToLower()));
                }

                if (!string.IsNullOrWhiteSpace(model.SearchByDept))
                {
                    query = query.Where(s => s.SoshipName.ToLower().Contains(model.SearchByDept.ToLower()));
                }

                var result = query.OrderBy(s => s.SohistoryId);

                var woHistoryListModel = _mapper.Map <List <WOHistoryModel> >(result);
                int totalCount         = woHistoryListModel.Count;

                int pageOffSet = (Convert.ToInt32(pageIndex) - 1) * 10;
                woHistoryListModel = woHistoryListModel.Skip(pageOffSet).Take(Convert.ToInt32(pageSize)).ToList();

                return(woHistoryListModel, totalCount);
            }
            catch (Exception ex)
            {
            }

            return(null, 0);
        }