代码实现listUI界面增加新条件过滤

来源:互联网 发布:淘宝卖家怎么提升等级 编辑:程序博客网 时间:2024/06/04 21:24

有两种方式,实现是只能显示当前组织下的数据

1.在getQueryExecutor方法中增加 如下:

    protected IQueryExecutor getQueryExecutor(IMetaDataPK queryPK, EntityViewInfo viewInfo) {
     CompanyOrgUnitInfo companyInfo=getCurCompanyOrg();
     EntityViewInfo evi=viewInfo;
     SorterItemCollection sc = new SorterItemCollection();
     SorterItemInfo sorterItem01 = new SorterItemInfo("customer.number");
     sorterItem01.setSortType(SortType.ASCEND);
     sc.add(sorterItem01);

     SorterItemInfo sorterItem02 = new SorterItemInfo("bizDate");
     sorterItem02.setSortType(SortType.ASCEND);
     sc.add(sorterItem02);
     viewInfo.setSorter(sc);

     mainQuery.setSorter(sc);
     
     FilterInfo oldfilter=evi.getFilter();
  FilterInfo newfilter = new FilterInfo();
  newfilter.getFilterItems().add(new FilterItemInfo("FICompany.id",companyInfo.getId(), CompareType.EQUALS));
  try {
   newfilter.mergeFilter(oldfilter,"AND");
  } catch (BOSException e1) {
   e1.printStackTrace();
  }
  viewInfo.setFilter(newfilter);
     IQueryExecutor exec = super.getQueryExecutor(queryPK, viewInfo);
     try {
      //super.getQueryExecutor(queryPK, viewInfo).getSQL();
      System.out.println(exec.getSQL());
     } catch (BOSException e) {
      e.printStackTrace();
     }
     return exec;
    }

2 .在getInitDefaultSolution 方法中 直接增加过滤条件,如下:

 protected EntityViewInfo getInitDefaultSolution() {
  CompanyOrgUnitInfo companyInfo=getCurCompanyOrg();
  EntityViewInfo ev =new EntityViewInfo();
  FilterInfo filter = new FilterInfo();
  filter.getFilterItems().add(new FilterItemInfo("FICompany.id",companyInfo.getId(), CompareType.EQUALS));
  ev.setFilter(filter);
  return ev;
 }

 

 

 

 

0 0