梦幻之旅

DEBUG - 天道酬勤

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  671 随笔 :: 6 文章 :: 256 评论 :: 0 Trackbacks

 

/**
     * <ul>
     * <li>Description:[处理文本]</li>
     * <li>Created by [Huyvanpull] [2011-1-9]</li>
     * <li>Midified by [modifier] [modified time]</li>
     * </ul>
     * 
     * 
@param fieldName
     * 
@param params
     * 
@return
     
*/

    
private static String opTxt(String fieldName, String params)
    
{
        StringBuffer conditionName 
= new StringBuffer();
        
if (ValidatorUtil.hasVal(params))
        
{
            String[] paramArr 
= params.split("[,]");
            
for (String param : paramArr)
            
{
                param 
= param.trim();
                
                
// 第一种情况处理NULL值
                if ("null".equalsIgnoreCase(param))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
" is null ");
                }

                
// 第二种情况正常情况
                else
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
" like '%");
                    conditionName.append(param.trim());
                    conditionName.append(
"%'");
                }

            }

            conditionName.replace(
04" and (");
            conditionName.append(
")");
        }

        
return conditionName.toString();
    }

    
    
/**
     * <ul>
     * <li>Description:[处理数字]</li>
     * <li>Created by [Huyvanpull] [2011-1-9]</li>
     * <li>Midified by [modifier] [modified time]</li>
     * </ul>
     * 
     * 
@param fieldName
     * 
@param params
     * 
@return
     
*/

    
private static String opNum(String fieldName, String params)
    
{
        StringBuffer conditionName 
= new StringBuffer();
        
if (ValidatorUtil.hasVal(params))
        
{
            String[] paramArr 
= params.split("[,]");
            
for (String param : paramArr)
            
{
                param 
= param.trim();
                
                
// 第一种情况处理NULL值
                if ("null".equalsIgnoreCase(param))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
" is null ");
                }

                
                
// 第二种情况, 等于
                else if (param.matches("^\\d+$"))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
"=");
                    conditionName.append(param);
                }

                
                
// 第三种情况, 大于
                else if (param.matches("^>\\d+$"))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName.substring(
1));
                    conditionName.append(
">");
                    conditionName.append(param);
                }

                
                
// 第四种情况, 小于
                else if (param.matches("^<\\d+$"))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName.substring(
1));
                    conditionName.append(
"<");
                    conditionName.append(param);
                }

                
                
// 第五种情况, 大于小于的情况
                else if (param.matches("^\\d+\\-\\d+$"))
                
{
                    conditionName.append(
" or (");
                    conditionName.append(fieldName);
                    conditionName.append(
">");
                    conditionName.append(param.split(
"[-]")[0]);
                    conditionName.append(
" and ");
                    conditionName.append(fieldName);
                    conditionName.append(
"<");
                    conditionName.append(param.split(
"[-]")[1]);
                    conditionName.append(
")");
                }

            }

            
            
// 是否有值
            if (conditionName.length() > 4)
            
{
                conditionName.replace(
04" and (");
                conditionName.append(
")");
            }

        }

        
return conditionName.toString();
    }

    
    
/**
     * <ul>
     * <li>Description:[处理时间型]</li>
     * <li>Created by [Huyvanpull] [2011-1-9]</li>
     * <li>Midified by [modifier] [modified time]</li>
     * </ul>
     * 
@param fieldName
     * 
@param params
     * 
@return
     
*/

    
private String opDate(String fieldName, String params)
    
{
        StringBuffer conditionName 
= new StringBuffer();
        
if (ValidatorUtil.hasVal(params))
        
{
            String[] paramArr 
= params.split("[,]");
            
for (String param : paramArr)
            
{
                param 
= param.trim();
                
//^\\d{4}/\\d{2}/\\d{2}\\-\\d{4}/\\d{2}/\\d{2}$
                
// 第一种情况处理NULL值
                if ("null".equalsIgnoreCase(param))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
" is null ");
                }

                
                
// 第二种情况, 等于
                else if (param.matches("^\\d{4}/\\d{2}/\\d{2}$"))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
"=");
                    conditionName.append(
"to_date('");
                    conditionName.append(param);
                    conditionName.append(
"','yyyy/mm/dd')");
                }

                
                
// 第三种情况, 大于
                else if (param.matches("^>\\d+$"))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
">");
                    conditionName.append(
"to_date('");
                    conditionName.append(param.substring(
1));
                    conditionName.append(
"','yyyy/mm/dd')");
                }

                
                
// 第四种情况, 小于
                else if (param.matches("^<\\d+$"))
                
{
                    conditionName.append(
" or ");
                    conditionName.append(fieldName);
                    conditionName.append(
"<");
                    conditionName.append(
"to_date('");
                    conditionName.append(param.substring(
1));
                    conditionName.append(
"','yyyy/mm/dd')");
                }

                
                
// 第五种情况, 大于小于的情况
                else if (param.matches("^\\d+\\-\\d+$"))
                
{
                    conditionName.append(
" or (");
                    conditionName.append(fieldName);
                    conditionName.append(
">");
                    conditionName.append(
"to_date('");
                    conditionName.append(param.substring(
1));
                    conditionName.append(
"','yyyy/mm/dd') and ");
                    conditionName.append(fieldName);
                    conditionName.append(
"<");
                    conditionName.append(
"to_date('");
                    conditionName.append(param.substring(
1));
                    conditionName.append(
"','yyyy/mm/dd'))");
                }

            }

            
            
// 是否有值
            if (conditionName.length() > 4)
            
{
                conditionName.replace(
04" and (");
                conditionName.append(
")");
            }

        }

        
return conditionName.toString();
    }
posted on 2011-01-09 21:39 HUIKK 阅读(174) 评论(0)  编辑  收藏 所属分类: Java

只有注册用户登录后才能发表评论。


网站导航: