public IActionResult SearchMembershipPrivileges([FromQuery] MembershipPrivilegesSearchModel searchModel)
 {
     try
     {
         var result = _membershipPrivilegeService.SearchMembershipPrivileges(searchModel);
         return(Ok(result));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.StackTrace.ToString()));
     }
 }
 public IPagedList <MembershipPrivilegesViewModel> SearchMembershipPrivileges(MembershipPrivilegesSearchModel searchModel)
 {
     try
     {
         //var sortString = !string.IsNullOrEmpty(searchModel.SortString) ? model.SortString : "CreatedDate DESC";
         var query = _dbConfigContext.AqmembershipDiscountPrivileges.Where(x =>
                                                                           !x.Deleted &&
                                                                           (string.IsNullOrEmpty(searchModel.Name) || x.Name.ToLower().Contains(searchModel.Name.ToLower())) &&
                                                                           (searchModel.EffectiveDate == null || (x.EffectiveDate >= searchModel.EffectiveDate && (x.EffectiveEndDate <= searchModel.EffectiveDate || x.EffectiveEndDate == null))) &&
                                                                           (searchModel.Role == null || x.RoleFid == searchModel.Role)).OrderByDescending(a => a.EffectiveDate)
                     .Select(c => new MembershipPrivilegesViewModel
         {
             ID               = c.Id,
             Name             = c.Name,
             EffectiveDate    = c.EffectiveDate,
             EffectiveEndDate = c.EffectiveEndDate
         });
         return(new PagedList <MembershipPrivilegesViewModel>(query, searchModel.PageIndex, searchModel.PageSize));
     }
     catch
     {
         throw;
     }
 }