public JsonResult Search(SearchServiceViewModel options) { try { var query = _context.Service.Where(x => x.StatusId != ServiceStatus.Deleted.Id); if (!string.IsNullOrEmpty(options.word)) { var word = options.word.ToStandardPersian(); query = query.Where(x => x.Sku.Contains(word)); } var count = query.Count(); var data = query.OrderByDescending(x => x.Id) .Skip(options.page * options.count) .Take(options.count) .Select(x => new ResponseSearchServiceViewModel() { id = x.Id, order = x.Order, title = x.Sku, statusId = x.StatusId, statusTitle = x.Status.PersianTitle }).ToList(); return(SuccessSearch(data, options.page + 1, options.count, count)); } catch (Exception ex) { return(ServerError(ex)); } }
public IHttpActionResult SearchService(SearchServiceViewModel serviceModel) { bool success = false; var messsage = ""; List <SearchServiceModel> model = new List <SearchServiceModel>(); try { if (!ModelState.IsValid) { var errors = ModelState.Where(x => x.Value.Errors.Count > 0).Select(x => new { x.Value.Errors }).FirstOrDefault(); var er = errors.Errors[0].ErrorMessage; return(Ok(new { Success = false, Message = er, RUrl = "errorpage" })); } else { var query = context.Services.Where(x => x.ServiceName.ToLower().Contains(serviceModel.ServiceName.ToLower()) && x.ParentID != null && x.IsActive == true && x.IsDelete == false); model = query.Select(x => new SearchServiceModel { ServiceId = x.ID, ServiceName = x.ServiceName }).ToList(); if (model.Count > 0) { success = true; messsage = "Get List"; } else { success = false; messsage = "No record found!"; } } } catch (Exception ex) { messsage = ex.Message; } return(Ok(new { Success = success, Message = messsage, Result = model })); }