夢(mèng)幻之旅

          DEBUG - 天道酬勤

             :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評(píng)論 :: 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:[處理數(shù)字]</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:[處理時(shí)間型]</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 閱讀(289) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 湖南省| 阿坝县| 苏尼特左旗| 汤阴县| 凤台县| 广汉市| 玉龙| 栾川县| 石屏县| 莱芜市| 江城| 老河口市| 延寿县| 东乡| 山阳县| 延津县| 女性| 重庆市| 沙河市| 商南县| 土默特右旗| 合水县| 铁力市| 贵州省| 繁峙县| 潮安县| 龙州县| 万宁市| 惠来县| 会理县| 和政县| 堆龙德庆县| 涞水县| 新宾| 庆城县| 河源市| 新宁县| 滁州市| 石河子市| 腾冲县| 江山市|