示例#1
0
        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));
            }
        }
示例#2
0
        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
            }));
        }