int intStartParam = intStart.intValue();
int intEndParam = intEnd.intValue();
int beginIndex = Math.max(intStartParam - 100, 1);
int endindex = intEndParam + 100;
FAQList faqList = new FAQList();
faqList.setSortMember(strSortMem);
CVDal cvdl = new CVDal(dataSource);
Collection colList = null;
if (strSearch != null && strSearch.startsWith("ADVANCE:"))
{
strSearch = strSearch.substring(8);
String str = "create TEMPORARY TABLE faqlistSearch " + strSearch;
cvdl.setSqlQueryToNull();
cvdl.setSqlQuery(str);
cvdl.executeUpdate();
cvdl.clearParameters();
String strQuery = "";
String sortType = "ASC";
if (charSort == 'A')
{
sortType = "ASC";
} else {
sortType = "DESC";
}
strQuery = "Select fq.faqid as faqid,fq.title as title ,fq.created as created ,fq.updated as updated from faq fq,faqlistSearch fsearch where fsearch.faqid=fq.faqid order by '" + strSortMem + "' " + sortType;
cvdl.setSqlQueryToNull();
cvdl.setSqlQuery(strQuery);
colList = cvdl.executeQuery();
cvdl.clearParameters();
cvdl.setSqlQueryToNull();
cvdl.setSqlQuery("DROP TABLE faqlistSearch");
cvdl.executeUpdate();
faqList.setTotalNoOfRecords(colList.size());
} else {
String sortType = "ASC";
if (charSort == 'A')
sortType = "ASC";
else
sortType = "DESC";
cvdl.setDynamicQuery("faq.allfaq", sortType, strSortMem, beginIndex, endindex);
cvdl.setInt(1, userID);
cvdl.setInt(2, userID);
colList = cvdl.executeQuery();
cvdl.clearParameters();
cvdl.setSql("support.faq.allfaqcount");
Collection count = cvdl.executeQuery();
Iterator itCount = count.iterator();
HashMap hmx = (HashMap)itCount.next();
Integer endCount = (Integer)hmx.get("allcountfaq");
cvdl.clearParameters();
int totalCount = endCount.intValue();
faqList.setTotalNoOfRecords(totalCount);
}
if (colList != null)
{
Iterator it = colList.iterator();
int i = 0;
while (it.hasNext())
{
i++;
HashMap hm = (HashMap)it.next();
int faqID = ((Long)hm.get("faqid")).intValue();
try
{
IntMember intFaqID = new IntMember("FaqID", faqID, 10, "", 'T', false, 10);
StringMember strTitle = null;
if ((hm.get("title") != null))
strTitle = new StringMember("Title", (String)hm.get("title"), 10, "/centraview/ViewNoteHandler.do?typeOfContact=entity&rowId=1", 'T', true);
else
strTitle = new StringMember("Title", null, 10, "/centraview/ViewNoteHandler.do?typeOfContact=entity&rowId=1", 'T', true);
Timestamp dtCreated = null;
DateMember dmCreated = null;
String timezoneid = "EST";
if ((hm.get("created") != null))
{
dtCreated = (Timestamp)hm.get("created");
dmCreated = new DateMember("Created", dtCreated, 10, "", 'T', false, 1, timezoneid);
} else {
dmCreated = new DateMember("Created", null, 10, "", 'T', false, 1, timezoneid);
}
Timestamp dtUpdated = null;
DateMember dmUpdated = null;
if ((hm.get("updated") != null))
{
dtUpdated = (Timestamp)hm.get("updated");
dmUpdated = new DateMember("Updated", dtUpdated, 10, "", 'T', false, 1, timezoneid);
} else {
dmUpdated = new DateMember("Updated", null, 10, "", 'T', false, 1, timezoneid);
}
FAQListElement faqlistelement = new FAQListElement(faqID);
faqlistelement.put("FaqID", intFaqID);
faqlistelement.put("Title", strTitle);
faqlistelement.put("Created", dmCreated);
faqlistelement.put("Updated", dmUpdated);
StringBuffer stringbuffer = new StringBuffer("00000000000");
stringbuffer.setLength(11);
String s3 = (new Integer(i)).toString();
stringbuffer.replace(stringbuffer.length() - s3.length(), stringbuffer.length(), s3);
String s4 = stringbuffer.toString();
faqList.put(s4, faqlistelement);
} catch (Exception e) {
logger.debug(" [Exception] SupportListEJB.getFAQList " + e);
}
}
}
faqList.setListType("FAQ");
faqList.setBeginIndex(beginIndex);
faqList.setEndIndex(faqList.size());
return faqList;
}