StringBuffer luceneQuery = new StringBuffer("currentState:" + currentState);
//时间
if (StringChecker.checkStringValueExist(beginDate) && StringChecker.checkStringValueExist(endDate)) {
luceneQuery.append(" AND reportTime:[" + LuceneDateFieldFormat.foramtDateToString(beginDate + " 00:00:00") + " TO " + LuceneDateFieldFormat.foramtDateToString(endDate + " 23:59:59") + "]");
} else if (StringChecker.checkStringValueExist(beginDate)) {
luceneQuery.append(" AND reportTime:[" + LuceneDateFieldFormat.foramtDateToString(beginDate + " 00:00:00") + " TO 99991230235959]");
} else if (StringChecker.checkStringValueExist(endDate)) {
luceneQuery.append(" AND reportTime:[20190101000000 TO " + LuceneDateFieldFormat.foramtDateToString(endDate + " 23:59:59") + "]");
}
if(StringChecker.checkStringValueExist(reportDept)){
luceneQuery.append(" AND reportDept:"+reportDept);
}
//关键字,检索正文和标题
if (StringChecker.checkStringValueExist(keyWord) && queryScrope != null && queryScrope.length > 0) {
if (queryScrope.length == 2) {
luceneQuery.append(" AND (title:" + keyWord + " OR " + keyWord + ")");
} else if ("title".equals(queryScrope[0])) {
luceneQuery.append(" AND title:" + keyWord);
} else if ("content".equals(queryScrope[0])) {
luceneQuery.append(" AND " + keyWord);
}
}
sql = luceneQuery;
LuceneAssistant luceneAssistant = null;
LucenePage lucenePage = null;
luceneAssistant = new LuceneAssistant(ConfigInfo.getValue("workpath") + "index/", "content");
luceneAssistant.setSort("reportTime", false);
String[] ids = luceneAssistant.queryByClause(luceneQuery.toString());
lucenePage = new LucenePage(iPage, pageSize, "./infolist.jsp", ids.length);