/** * 查询所有的用户 * * @param page * @param pfList 查询条件 * @return */ public Page<UserInfo> findAllUsers(Page<UserInfo> page, List<PropertyFilter> pfList) { // 初始化hql StringBuffer hql = new StringBuffer("from UserInfo"); // 设置查询条件 String condition = QueryUtil.toSqlString(pfList, true); hql.append(condition); // 查找所有用户的总条数 int totalCount = this.userDAO.findCountBySql(hql.toString()); page.setTotalCount(totalCount); // 是否存在排序 if (page.isOrderBySetted()) { hql.append(page.getOrder()); } List<UserInfo> list = this.userDAO.findList(hql.toString(), page.getPageNo(), page.getPageSize()); // 查出结果集 page.setResult(list); return page; }
/** * 新闻列表 * * @author wei.luo * @createTime 2012-4-29 * @param request * @param response * @param model * @param queryDTO * @return */ @RequestMapping(value = "/list") public String list( HttpServletRequest request, HttpServletResponse response, Model model, QueryDTO queryDTO) { String name = queryDTO.getKey(); int pageNo = queryDTO.getPageNo(); String order = queryDTO.getOrder(); String startDate = queryDTO.getStartDate(); String endDate = queryDTO.getEndDate(); int pageSize = queryDTO.getPageSize(); if (pageSize == 0) { pageSize = 10; } // 查询条件 List<PropertyFilter> pfList = new ArrayList<PropertyFilter>(); pfList.add(new PropertyFilter("title:LIKE_S", name)); pfList.add(new PropertyFilter("createtime:GT_D", startDate)); pfList.add(new PropertyFilter("createtime:LT_D", endDate)); // 获取分页跳转页面 List<Condition> fragmentList = new ArrayList<Condition>(); fragmentList.add(new Condition("key", EncodeUtil.urlEncode(name), "匹配'" + name + "'")); fragmentList.add(new Condition("order", order, "排序", false)); fragmentList.add(new Condition("startDate", startDate, "大于" + startDate)); fragmentList.add(new Condition("endDate", endDate, "小于" + endDate)); // 设置跳转页面 StringBuffer forwordName = new StringBuffer(this.getRoot(request) + "/manage/news/list.do"); String forwarCondition = PageUtil.getForwardCondition(fragmentList); forwordName.append(forwarCondition); // 获取排序跳转页面 String orderCondition = PageUtil.getOrderCondition(fragmentList); model.addAttribute("order", orderCondition); // 获取过滤查询集合 List<Condition> filterList = PageUtil.getFilterConditions(fragmentList); model.addAttribute("filterList", filterList); // 初始化page属性值--默认id排序 Page<News> page = new Page<News>(pageSize); if (null == order) { page.setOrder("id:asc"); } else { page.setOrder(order); } page.setPageNo(pageNo); String hql = "from News"; page = this.findAll(newsService, page, pfList, hql); model.addAttribute("newsList", page.getResult()); // 生成分页标签 page.setForwordName(forwordName.toString()); String tag = PageUtil.getTag(page); model.addAttribute("tag", tag); // 索引号 model.addAttribute("index", page.getFirst()); // 设置页面搜索初始值 model.addAttribute("key", name); model.addAttribute("startDate", startDate); model.addAttribute("endDate", endDate); String currentPage = request.getRequestURI().toString() + forwarCondition + page.getPageNo(); request.getSession().setAttribute("currentPage", currentPage); return "manage/news/list"; }