EAS的客户端去除默认的组织单元过滤条件或默认查询条件的值
我们再eas客户端开发list界面的时候,有时候需要过滤或修改默认的拼接的组织单位或创建时间等条件,这里我们可以在listUI.java里修改execQuery方法如下来修改参数
protected void execQuery() {
String className = (String)getUIContext().get("UIClassParam");
if(className != null && className.equals("VIEWALL")){
FilterItemCollection filterItemColl = this.mainQuery.getFilter().getFilterItems();
for(int i=0;i<filterItemColl.size();i++){
FilterItemInfo filterItemInfo = filterItemColl.get(i);
if(filterItemInfo.getPropertyName().equals("company.id")){
filterItemInfo.setCompareType(CompareType.ISNOT);
filterItemInfo.setCompareValue(null);
}
}
super.execQuery();
try {
onShow();
} catch (Exception e) {
e.printStackTrace();
}
}else{
super.execQuery();
}
}
上面做法如果造成了公司查询条件失效可以采用如下方法
protected void execQuery() {
String className = (String)getUIContext().get("UIClassParam");
if(className != null && className.equals("VIEWALL")){
// this.mainQuery.getFilter().getFilterItems().removeObject(0);
FilterItemCollection filterItemColl = this.mainQuery.getFilter().getFilterItems();
for(int i=0;i<filterItemColl.size();i++){
FilterItemInfo filterItemInfo = filterItemColl.get(i);
if(filterItemInfo.getPropertyName().equals("company.id")&&
filterItemInfo.getCompareType().equals(CompareType.INCLUDE)){//判断propertyName和比较符为in的则替换值
filterItemInfo.setCompareType(CompareType.ISNOT);
filterItemInfo.setCompareValue(null);
}
}
super.execQuery();
try {
onShow();
} catch (Exception e) {
e.printStackTrace();
}
}else{
super.execQuery();
}
}
如果发现默认的拼接的是cu.id in ("xxxx"),也可以重写 isIgnoreCUFilter ,返回true,忽略组织过滤条件
@Override
protected boolean isIgnoreCUFilter() {
// TODO Auto-generated method stub
return true;
}
linux下的docker操作命令及异常

浙公网安备 33010602011771号