public ActionResult _AjaxList(GridCommand command, SubPrintOrderSearchModel searchModel) { string replaceFrom = "_AjaxList"; string replaceTo = "List"; this.GetCommand(ref command, searchModel, replaceFrom, replaceTo); SearchStatementModel searchStatementModel = this.PrepareSearchStatement(command, searchModel); var list = GetAjaxPageData<SubPrintOrder>(searchStatementModel, command); var codeDetails = this.genericMgr.FindAllIn<CodeDetail> ("from CodeDetail where Value in(?", list.Data.Select(p => p.ExcelTemplate)); foreach (var data in list.Data) { if (data.UserId != 0) { data.UserCode = this.genericMgr.FindById<User>(data.UserId).Code; } var codeDetail = codeDetails.FirstOrDefault(p => p.Value == data.ExcelTemplate); if (codeDetail != null) { var codeMaster = (com.Sconit.CodeMaster.CodeMaster)Enum.Parse(typeof(com.Sconit.CodeMaster.CodeMaster), codeDetail.Code); data.ExcelTemplateDescription = this.systemMgr.GetCodeDetailDescription(codeMaster, codeDetail.Value); } else { data.ExcelTemplateDescription = data.ExcelTemplate; } } return PartialView(list); }
public ActionResult List(GridCommand command, SubPrintOrderSearchModel 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(); }
private SearchStatementModel PrepareSearchStatement(GridCommand command, SubPrintOrderSearchModel searchModel) { string whereStatement = string.Empty; IList<object> param = new List<object>(); HqlStatementHelper.AddEqStatement("Client", searchModel.Client, "h", ref whereStatement, param); HqlStatementHelper.AddEqStatement("Flow", searchModel.Flow, "h", ref whereStatement, param); HqlStatementHelper.AddEqStatement("Location", searchModel.Location, "h", ref whereStatement, param); HqlStatementHelper.AddEqStatement("Printer", searchModel.Printer, "h", ref whereStatement, param); HqlStatementHelper.AddEqStatement("Region", searchModel.Region, "h", ref whereStatement, param); HqlStatementHelper.AddEqStatement("ExcelTemplate", searchModel.ExcelTemplate, "h", ref whereStatement, param); if (!string.IsNullOrWhiteSpace(searchModel.UserCode)) { int userId = 0; var user = securityMgr.GetUser(searchModel.UserCode); if (user != null) { userId = user.Id; } HqlStatementHelper.AddEqStatement("UserId", userId, "h", ref whereStatement, param); } string sortingStatement = HqlStatementHelper.GetSortingStatement(command.SortDescriptors); if (command.SortDescriptors.Count == 0) { sortingStatement = " order by h.Id desc"; } SearchStatementModel searchStatementModel = new SearchStatementModel(); searchStatementModel.SelectCountStatement = selectCountStatement; searchStatementModel.SelectStatement = selectStatement; searchStatementModel.WhereStatement = whereStatement; searchStatementModel.SortingStatement = sortingStatement; searchStatementModel.Parameters = param.ToArray<object>(); return searchStatementModel; }