Page 常用的方法 基礎的查詢

public Page getOrganizationUsers(Organization org,String code, String name, String status,String loginName, int pageNo,
            int pageSize) {
        StringBuilder hql = new StringBuilder("from User u where 1=1 ");
        if(org!=null) {
            hql.append(" and Organization =:org");
        }
        if(!StringUtil.isNullOrSpace(code)) {
            hql.append(" and u.code =:code");
        }
        if(!StringUtil.isNullOrSpace(name)) {
            hql.append(" and u.name =:name");
        }
        if(!StringUtil.isNullOrSpace(status)) {
            hql.append(" and u.disabled =:status");
        }
        if(!StringUtil.isNullOrSpace(loginName)) {
            hql.append(" and u.loginName =:loginName");

        }

        hql.append(" order by u.order,u.id");
        Query query = HibernateUtil.createQuery(hql.toString());

        Page<User> page = new Page<User>(query,pageNo,pageSize);


        if(org!=null) {
            page.getQuery().setEntity("org", org);
            page.getSizeQuery().setEntity("org", org);
        }
        if(!StringUtil.isNullOrSpace(code)) {
            page.getQuery().setString("code", code);
            page.getSizeQuery().setString("code", code);
        }
        if(!StringUtil.isNullOrSpace(name)) {
            page.getQuery().setString("name", name);
            page.getSizeQuery().setString("name", name);
        }
        if(!StringUtil.isNullOrSpace(status)) {
            page.getQuery().setBoolean("status", "T".equals(status));
            page.getSizeQuery().setBoolean("status", "T".equals(status));
        }
        if(!StringUtil.isNullOrSpace(loginName)) {
            page.getQuery().setString("loginName", loginName);
            page.getSizeQuery().setString("loginName", loginName);
        }
        return page;
    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章