| 
					
				 | 
			
			
				@ -0,0 +1,317 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				package com.yihu.ehr.framework.util.sql; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.fasterxml.jackson.databind.JsonNode; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.fasterxml.jackson.databind.node.JsonNodeType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.ehr.framework.constrant.Constants; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.ehr.framework.util.operator.CollectionUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.ehr.framework.util.operator.StringUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.ArrayList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.HashMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.Map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 * Created by lingfeng on 2015/6/23. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				public class SqlCreator { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String tableName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private List<String> itemList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private List<String> itemValueList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private List<String> conditionList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private List<String> orderList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private Map<String, Object> keyValueMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private BeanTransformer transformer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public SqlCreator(Class tClass) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        itemList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        itemValueList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        orderList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        transformer = new BeanTransformer(tClass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String insertData() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        StringBuilder sqlBuffer = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.INSERT_INTO + tableName + Constants.LEFT_BRACKET); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (String item : itemList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append(item + Constants.COMMA); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.RIGHT_BRACKET + Constants.VALUES + Constants.LEFT_BRACKET); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (String item : itemValueList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append(item + Constants.COMMA); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.RIGHT_BRACKET + Constants.SEMICOLON); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return sqlBuffer.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String insertData(String tabelName, JsonNode jsonNode) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        setTableName(tabelName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (Object key : transformer.columnToProperty.keySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String property = StringUtil.toString(transformer.columnToProperty.get(key)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JsonNode propertyJsonNode = jsonNode.get(property); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (propertyJsonNode != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                itemList.add(StringUtil.toString(key)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                itemValueList.add(Constants.COLON + property); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                setKeyValueMapByType(property, propertyJsonNode, keyValueMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return insertData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setKeyValueMapByType(String property, JsonNode propertyJsonNode, Map<String, Object> keyValueMap) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JsonNodeType jsonNodeType = propertyJsonNode.getNodeType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (jsonNodeType.equals(JsonNodeType.STRING)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            keyValueMap.put(property, propertyJsonNode.asText()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else if (jsonNodeType.equals(JsonNodeType.NUMBER)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            keyValueMap.put(property, propertyJsonNode.asInt()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            keyValueMap.put(property, null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String countData(String tabelName) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        StringBuilder sqlBuffer = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        setTableName(tabelName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.SELECT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.COUNT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.FROM + tableName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (!CollectionUtil.isEmpty(conditionList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append(Constants.WHERE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append("1=1" + Constants.AND); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (String condition : conditionList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlBuffer.append(condition + Constants.AND); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.delete(sqlBuffer.length() - 4, sqlBuffer.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return sqlBuffer.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String selectData(String tabelName) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        setTableName(tabelName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for(Object key : transformer.columnToProperty.keySet()){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            itemList.add(StringUtil.toString(key)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return selectData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String selectData() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        StringBuilder sqlBuffer = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.SELECT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (String item : itemList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append(item + Constants.COMMA); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.FROM + tableName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (!CollectionUtil.isEmpty(conditionList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append(Constants.WHERE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.append("1=1" + Constants.AND); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (String condition : conditionList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlBuffer.append(condition + Constants.AND); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.delete(sqlBuffer.length() - 4, sqlBuffer.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (!CollectionUtil.isEmpty(orderList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (String order : orderList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlBuffer.append(order); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sqlBuffer.delete(sqlBuffer.length() - 1, sqlBuffer.length()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return sqlBuffer.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String updateDataByTableKey(String tabelName, JsonNode jsonNode) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        setTableName(tabelName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        StringBuilder sqlBuffer = new StringBuilder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.UPDATE + tableName + Constants.SET); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map columnToProperty = transformer.columnToProperty; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (Object key : columnToProperty.keySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String property = StringUtil.toString(columnToProperty.get(key)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (!property.equals(Constants.TABLE_KEY)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sqlBuffer.append(key + Constants.EQUAL_MARK + Constants.COLON + property + Constants.COMMA); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                setKeyValueMapByType(property, jsonNode.get(property), keyValueMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.deleteCharAt(sqlBuffer.length() - 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Object tableKey = columnToProperty.get(Constants.TABLE_KEY.toUpperCase()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sqlBuffer.append(Constants.WHERE + Constants.TABLE_KEY + Constants.EQUAL_MARK + Constants.COLON + tableKey); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String property = StringUtil.toString(tableKey); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        setKeyValueMapByType(property, jsonNode.get(property), keyValueMap); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return sqlBuffer.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String betweenCondition(String item, Object value1, Object value2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = item + Constants.BETWEEN + Constants.BEGIN + item + Constants.AND + Constants.END + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(Constants.BEGIN + item, value1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(Constants.END + item, value2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String greaterAndEqualCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = item + Constants.GREATER_EQUAL_MARK + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String greaterCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = item + Constants.GREATER_MARK + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String lessAndEqualCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = item + Constants.LESS_EQUAL_MARK + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String lessCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = item + Constants.LESS_MARK + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String equalCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String column = StringUtil.toString(transformer.propertyToColumn.get(item)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = column + Constants.EQUAL_MARK + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String inCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String column = StringUtil.toString(transformer.propertyToColumn.get(item)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = column + Constants.IN + Constants.LEFT_BRACKET + Constants.COLON + item + Constants.RIGHT_BRACKET; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String equalConditionQue(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String column = StringUtil.toString(transformer.propertyToColumn.get(item)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = column + Constants.EQUAL_MARK + Constants.QUESTION_MARK; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String likeOrCondition(String item1, String item2, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (!StringUtil.isEmpty(value)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String column1 = StringUtil.toString(transformer.propertyToColumn.get(item1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String column2 = StringUtil.toString(transformer.propertyToColumn.get(item2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String condition = Constants.LEFT_BRACKET + column1 + Constants.LIKE + Constants.COLON + item1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    + Constants.OR + column2 + Constants.LIKE + Constants.COLON + item2 + Constants.RIGHT_BRACKET; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            value = Constants.PERCENT + value + Constants.PERCENT; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            keyValueMap.put(item1, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            keyValueMap.put(item2, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return Constants.EMPTY; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String likeCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String column = StringUtil.toString(transformer.propertyToColumn.get(item)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = column + Constants.LIKE + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        value = Constants.PERCENT + value + Constants.PERCENT; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String neCondition(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String column = StringUtil.toString(transformer.propertyToColumn.get(item)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String condition = column + Constants.NE_MARK + Constants.COLON + item; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        keyValueMap.put(item, value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        conditionList.add(condition); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return condition; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String order(String item, Object value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String column = StringUtil.toString(transformer.propertyToColumn.get(item)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String order; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (CollectionUtil.isEmpty(orderList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            order = Constants.ORDER_BY + column + Constants.BLANK + value + Constants.COMMA; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            order = column + Constants.BLANK + value + Constants.COMMA; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        orderList.add(order); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return order; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getTableName() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return tableName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setTableName(String tableName) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.tableName = tableName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<String> getItemList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return itemList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setItemList(List<String> itemList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.itemList = itemList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<String> getItemValueList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return itemValueList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setItemValueList(List<String> itemValueList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.itemValueList = itemValueList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<String> getConditionList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return conditionList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setConditionList(List<String> conditionList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.conditionList = conditionList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public Map<String, Object> getKeyValueMap() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return keyValueMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setKeyValueMap(Map<String, Object> keyValueMap) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.keyValueMap = keyValueMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<String> getOrderList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return orderList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setOrderList(List<String> orderList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.orderList = orderList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public BeanTransformer getTransformer() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return transformer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void setTransformer(BeanTransformer transformer) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        this.transformer = transformer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |