package com.vci.server.query.util;
|
|
import java.text.DateFormat;
|
import java.text.SimpleDateFormat;
|
import java.util.ArrayList;
|
import java.util.LinkedHashSet;
|
import java.util.List;
|
import java.util.Set;
|
|
import com.vci.server.base.utility.OmdHelper;
|
import com.vci.server.cache.OMCacheProvider;
|
|
/**
|
* 服务端的查询工具类
|
* 修改链接类型查询的缓慢的问题时修改,不确定Tool是否被客户端引用,因此单独实现所需的方法
|
* @author weidy
|
*
|
*/
|
public class ServerTool {
|
|
public static final DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
|
|
/**
|
* 视图cols
|
* viewName.col as col2
|
* @param ltName
|
* @return
|
*/
|
public static List<String> getViewColsWithAlias(String[] btNames, String viewName) {
|
List<String> cols = new ArrayList<String>();
|
String[] sysAbItems = OmdHelper.getBTSysANames();
|
for(String sysAbItem : sysAbItems){
|
cols.add(viewName + "." + sysAbItem + " AS " + sysAbItem + "2");
|
}
|
Set<String> userAttrNameSet = getUserAttrNameSet(btNames);
|
for(String userAttrName : userAttrNameSet){
|
cols.add(viewName + "." + userAttrName + " AS " + userAttrName + "2");
|
}
|
return cols;
|
}
|
|
|
/**
|
* 获取业务类型属性总集合
|
* @param btNames
|
* @return
|
*/
|
private static Set<String> getUserAttrNameSet(String[] btNames){
|
Set<String> set = new LinkedHashSet<String>();
|
try{
|
for(String btName : btNames){
|
//String[] abNames = ServerServiceProvider.getOMDService().getBTMService().getBtmApNameArray(btName);
|
String[] abNames = OMCacheProvider.getBizType(btName).apNameArray;
|
for(String abName : abNames){
|
set.add(abName);
|
}
|
}
|
} catch (Throwable e) {
|
e.printStackTrace();
|
}
|
return set;
|
}
|
}
|