package com.hbbh.adapter.utils; import com.rtdb.model.SearchCondition; import com.rtdb.model.SearchConditionTotal; /** * 复合查询条件设置 */ public class SearchConditionUtil { private static String wildcard = "*"; private static String questionMark = "?"; private static String _null = null; /** * 复合查询 */ public static SearchCondition getSearchCondition() { SearchCondition searchCondition = new SearchCondition(); //标签点描述的子集 | searchCondition.setDesc(_null); // 描述中包含该参数的标签点均满足条件,空字符串表示不用描述作搜索条件,缺省设置为空,长度不得超过 RTDB_SOURCE_SIZE //标签点工程单位的子集 | searchCondition.setUnit(_null); // 工程单位中包含该参数的标签点均满足条件,空字符串表示不用工程单位作搜索条件,缺省设置为空,长度不得超过 RTDB_UNIT_SIZE //数据源集合 | searchCondition.setSource(_null); // 字符串中的每个字符均表示一个数据源,空字符串表示不用数据源作搜索条件,缺省设置为空,长度不得超过 RTDB_DESC_SIZE //标签点名称掩码 | searchCondition.setTagmask(wildcard); // 支持"*"和"?"通配符,缺省设置为"*",长度不得超过 RTDB_TAG_SIZE //标签点表名称掩码 | searchCondition.setTablemask(wildcard); //支持"*"和"?"通配符,缺省设置为"*",长度不得超过 RTDB_TAG_SIZ //标签点设备名称 | searchCondition.setInstrument(_null); //缺省设置为空 return searchCondition; } private static String _append=".*"; /** * 高级 复合查询 * * @return */ public static SearchConditionTotal getSearchConditionTotal() { SearchConditionTotal searchConditionTotal = new SearchConditionTotal(); //TODO: //时间精度 0表示秒;1表示毫秒 //searchConditionTotal.set_TimeAccuracy(0); //设置测点类型 //searchConditionTotal.set_PointType(null); //设置测点的值类型 searchConditionTotal.set_ValueTypeString(null); //设置搜索参数 //searchConditionTotal.set_SearchCondition(null); //搜索参数对应的值 (只有设定了搜索参数 SearchCondition,该参数填入的值才会生效) //searchConditionTotal.setSearchMaskValue(null); insertS(searchConditionTotal); return searchConditionTotal; } private static void insertS(SearchConditionTotal searchConditionTotal) { SearchCondition searchCondition = getSearchCondition(); if (searchCondition != null) { searchConditionTotal.setDesc(searchCondition.getDesc()); searchConditionTotal.setInstrument(searchCondition.getInstrument()); searchConditionTotal.setSource(searchCondition.getSource()); searchConditionTotal.setTablemask(searchCondition.getTablemask()); searchConditionTotal.setUnit(searchCondition.getUnit()); searchConditionTotal.setTagmask(searchCondition.getTagmask()); } } }