Aipoの各ポートレットで絞込みを行う

y-ozaki 270views 更新:2014年5月29日

各ポートレットでは部署やカテゴリーで絞込みを行って表示することが出来ます。

カテゴリーや部署を選択するとcurrent_filterMapのcategoryまたはpostに選択したものがセットされます。

その後各ポートレットのSelectDataクラスのbuildSelectQueryForFilter内でcurrent_filterMapに値がセットされていたら、

必要なExpressionを作成して、 query.andQualifierを行います。

掲示板で部署を選択した場合は以下のように絞込みを行っています。

if (current_filterMap.containsKey("post")) {
    

      List<String> postIds = current_filterMap.get("post");
   HashSet<Integer> userIds = new HashSet<Integer>();
        for (String post : postIds) {
          List<Integer> userId = ALEipUtils.getUserIds(post);
          userIds.addAll(userId);
        }
        if (userIds.isEmpty()) {
          userIds.add(-1);
        }
        Expression exp =
          ExpressionFactory.inExp(EipTMsgboardTopic.OWNER_ID_PROPERTY, userIds);
        query.andQualifier(exp);

 

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません