private SearchStatementModel PrepareSearchStatement(GridCommand command, FacilityMasterSearchModel searchModel)
        {
            string whereStatement = string.Empty;

            IList<object> param = new List<object>();

            HqlStatementHelper.AddLikeStatement("FCID", searchModel.FCID, HqlStatementHelper.LikeMatchMode.Start, "f", ref whereStatement, param);
            HqlStatementHelper.AddLikeStatement("Name", searchModel.Name, HqlStatementHelper.LikeMatchMode.Anywhere, "f", ref whereStatement, param);
            HqlStatementHelper.AddEqStatement("Status", searchModel.Status, "f", ref whereStatement, param);
            HqlStatementHelper.AddEqStatement("ChargePerson", searchModel.ChargePerson, "f", ref whereStatement, param);
            HqlStatementHelper.AddEqStatement("ChargeSite", searchModel.ChargeSite, "f", ref whereStatement, param);
            HqlStatementHelper.AddEqStatement("ChargeOrganization", searchModel.ChargeOrganization, "f", ref whereStatement, param);
            HqlStatementHelper.AddLikeStatement("RefenceCode", searchModel.RefenceCode, HqlStatementHelper.LikeMatchMode.Anywhere, "f", ref whereStatement, param);
            HqlStatementHelper.AddEqStatement("MaintainGroup", searchModel.MaintainGroup, "f", ref whereStatement, param);
            HqlStatementHelper.AddLikeStatement("OwnerDescription", searchModel.OwnerDescription, HqlStatementHelper.LikeMatchMode.Anywhere, "f", ref whereStatement, param);


            string sortingStatement = HqlStatementHelper.GetSortingStatement(command.SortDescriptors);

            SearchStatementModel searchStatementModel = new SearchStatementModel();
            searchStatementModel.SelectCountStatement = selectCountStatement;
            searchStatementModel.SelectStatement = selectStatement;
            searchStatementModel.WhereStatement = whereStatement;
            searchStatementModel.SortingStatement = sortingStatement;
            searchStatementModel.Parameters = param.ToArray<object>();

            return searchStatementModel;
        }
 public ActionResult List(GridCommand command, FacilityMasterSearchModel searchModel)
 {
     SearchCacheModel searchCacheModel = this.ProcessSearchModel(command, searchModel);
     if (searchCacheModel.isBack == true)
     {
         ViewBag.Page = searchCacheModel.Command.Page == 0 ? 1 : searchCacheModel.Command.Page;
     }
     ViewBag.PageSize = base.ProcessPageSize(command.PageSize);
     return View();
 }
 public ActionResult _AjaxList(GridCommand command, FacilityMasterSearchModel searchModel)
 {
     this.GetCommand(ref command, searchModel);
     SearchStatementModel searchStatementModel = this.PrepareSearchStatement(command, searchModel);
     return PartialView(GetAjaxPageData<FacilityMaster>(searchStatementModel, command));
 }