package com.vci.common.qt.object; import com.vci.common.qt.interfaces.IParserFactory; //import com.vci.server.base.objectQuery.Parser; //import com.vci.server.base.objectQuery.ParserForOneLevel; /** * 叶子节点中查询条件的条件值 * @author Administrator * */ public class LeafValue { private String ordinaryValue; private QueryTemplate queryTemplate; //private IParserFactory _parser; public String getOrdinaryValue() { return ordinaryValue; } public void setOrdinaryValue(String ordinaryValue) { this.ordinaryValue = ordinaryValue; } public QueryTemplate getQueryTemplate() { return queryTemplate; } public void setQueryTemplate(QueryTemplate queryTemplate) { this.queryTemplate = queryTemplate; } // public void setParserFactory(IParserFactory parser) { // _parser = parser; // } /** * 条件值sql * @return */ public String getSql(boolean addGrandRightFlag){ StringBuilder strb = new StringBuilder(""); strb.append(ordinaryValue == null ? "" : ordinaryValue); if(queryTemplate != null){ strb.append(Symbol.SPACE); strb.append(Symbol.LEFT_PAREN); IParserFactory parser = ParserHelper.getParserFactory(); if (parser != null) strb.append(parser.parseToSubSql(queryTemplate, addGrandRightFlag)); strb.append(Symbol.RIGHT_PAREN); // if(queryTemplate.getLevel() == 1){ // ParserForOneLevel parserForOneLevel = new ParserForOneLevel(queryTemplate); // parserForOneLevel.setAddGrandRightFlag(addGrandRightFlag); // if(queryTemplate.isQueryISLeaf()){ // strb.append(parserForOneLevel.parseToSqlForLinkStartWith()); // }else{ // strb.append(parserForOneLevel.parseToSql()); // } // }else{ // Parser parser = new Parser(queryTemplate); // parser.setAddGrandRightFlag(addGrandRightFlag); // strb.append(parser.parseToSql()); // } } return strb.toString(); } }