夢(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 閱讀(295) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 宁蒗| 广安市| 化德县| 抚远县| 怀远县| 司法| 万全县| 华亭县| 岢岚县| 上虞市| 加查县| 渭源县| 名山县| 乐陵市| 台前县| 株洲县| 湖口县| 同江市| 康乐县| 长沙市| 泗水县| 屯留县| 蓬安县| 白山市| 大新县| 兰溪市| 崇礼县| 榕江县| 景德镇市| 奇台县| 新乡市| 定结县| 固安县| 普陀区| 会泽县| 南和县| 嵊泗县| 阿荣旗| 青冈县| 吉林市| 乡宁县|