[code]
public List pesquisarDT(String data1, String data2, String duracao, String duracao1, String duracao2,
String tipo, String importante,
String ouvida, String procurar, String hora, String hora1, String hora2, String pa){
List resultado = null;
String sql;
sql="select * from ligacoes where (data_lig between ? and ? ) ";
if(!tipo.equals("todas")){
sql+=" and tipo = ? ";
}
if(importante.equals("importante")){
sql+=" and importante = true ";
}
if(ouvida.equals("ouvida")){
sql+=" and ouvida = false ";
}
if (!pa.equals("")){
sql+=" and pa_atendimento = ? ";
}
if(!procurar.equals("")){
sql+=" and (contato like ? or duracao or observacao like ? or telefone like ? or hora like ?) ";
}
if(!hora.equals("")){
sql+=" and (hora between ? and ?)";
}
if(!duracao.equals("")){
sql+="and (duracao between ? and ?)";
}
if(tipo.equals("todas")){
sql+="order by [data_lig] desc, [hora] desc";
}
else {
sql+="order by [data_lig] desc, [hora] desc";
}
try {
Connection con = Conexao.getConexaoODBC();
PreparedStatement pstm = con.prepareStatement(sql);
pstm.setString(1, data1 );
pstm.setString(2, data2 );
if(!tipo.equals("todas")){
pstm.setString(3, tipo );
if (!procurar.equals("")) {
if(!pa.equals("")){
pstm.setString(4, pa);
if (!procurar.equals("")) {
pstm.setString(5, "%" + procurar + "%");
pstm.setString(6, "%" + procurar + "%");
pstm.setString(7, "%" + procurar + "%");
pstm.setString(8, "%" + procurar + "%");
}
if (!hora.equals("")){
pstm.setString(9, "%" + hora1 + "%");
pstm.setString(10, "%" + hora2 + "%");
}
if (!duracao.equals("")){
pstm.setString(11,duracao1);
pstm.setString(12,duracao2);
}
}else{
pstm.setString(4, "%" + procurar + "%");
pstm.setString(5, "%" + procurar + "%");
pstm.setString(6, "%" + procurar + "%");
pstm.setString(7, "%" + procurar + "%");
}
}else{
if(!pa.equals("")){
pstm.setString(4, pa);
}
}
}
if(tipo.equals("todas")){
if(!pa.equals("")){
pstm.setString(3, pa);
if (!procurar.equals("")) {
pstm.setString(4, "%"+procurar+"%");
pstm.setString(5, "%"+procurar+"%");
pstm.setString(6, "%"+procurar+"%");
pstm.setString(7, "%"+procurar+"%");
}
if (!hora.equals("")){
pstm.setString(8, "%"+hora1+"%");
pstm.setString(9, "%"+hora2+"%");
}
if(!duracao.equals("")){
pstm.setString(10,duracao1);
pstm.setString(11,duracao2);
}
}else {
if (!procurar.equals("")){
pstm.setString(3, "%" + procurar + "%");
pstm.setString(4, "%" + procurar + "%");
pstm.setString(5, "%" + procurar + "%");
pstm.setString(6, "%" + procurar + "%");
}
}
}
ResultSet rs = pstm.executeQuery();
if(rs.next()){
resultado = new ArrayList();
do {
PesquisaVO pesquisa = preencherpesquisa(rs);
resultado.add(pesquisa);
} while (rs.next());
}
rs.close();
pstm.close();
con.close();
return resultado;
} catch (Exception ex) {
ex.printStackTrace();
return null;
}
}[/code]
no Servlet esta assim:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
HttpSession session = request.getSession();
Object done = session.getAttribute("logon.isDone");
if(done==null){
response.sendRedirect("login.jsp");
return;
}
Object uservr = session.getAttribute("uservr");
if(done.equals("admin")){
uservr = "true";
}
if(uservr.equals("false")){
response.sendRedirect("index.jsp");
return;
}
String url = null;
String rst = "1";
String data1 = request.getParameter("data1");
String data2 = request.getParameter("data2");
String duracao1 = request.getParameter("duracao1");
String duracao2 = request.getParameter("duracao2");
String tipo = request.getParameter("tipo");
String media = request.getParameter("op1");
String importante = request.getParameter("op2");
String ouvida = request.getParameter("op3");
String procurar = request.getParameter("procurar");
String hora = request.getParameter("hora");
String hora1 = request.getParameter("hora1");
String hora2 = request.getParameter("hora2");
String duracao = request.getParameter("duracao");
String pa = request.getParameter("pa");
if (data1 == null) {
data1 = "";
}
if (data2 == null) {
data2 = "";
}
if (duracao1 == null){
duracao1 = "";
}
if (duracao2 == null){
duracao2 = "";
}
if (tipo == null) {
tipo = "";
}
if (media == null) {
media = "";
}
if (importante == null) {
importante = "";
}
if (ouvida == null) {
ouvida = "";
}
if (procurar == null) {
procurar = "";
}
if (hora == null) {
hora = "";
}
if (hora1 == null){
hora1 = "";
}
if (hora2 == null){
hora2 = "";
}
if (duracao == null){
duracao = "";
}
if (pa.equals("todas")) {
pa = "";
}
if(!media.equals("media")){
PesquisaDAO dao = new PesquisaDAO();
List resultado = dao.pesquisarDT(data1, data2, duracao1, duracao2, duracao, tipo, importante, ouvida,
procurar, hora, hora1, hora2, pa);
if (resultado != null) {
//out.print("carregando");
//String grid = montaGrid(resultado);
//request.setAttribute("resultado", resultado);
session.setAttribute("resultado", resultado);
//request.setAttribute("grid", grid);
url="sites/resultado.jsp";
//url="resultado";
request.setAttribute("url",url);
RequestDispatcher dispacher = request.getRequestDispatcher(
"index.jsp");
dispacher.forward(request, response);
} else {
url="sites/pesquisa.jsp";
request.setAttribute("rst",rst);
request.setAttribute("url",url);
RequestDispatcher dispacher = request.getRequestDispatcher(
"index.jsp?data1="+data1+"&data2="+data2);
dispacher.forward(request, response);
}
}else{
PesquisaDAO dao = new PesquisaDAO();
List resultado = dao.pesquisarDMT(data1, data2, tipo, media,
importante, ouvida, procurar, pa);
if (resultado != null) {
url="sites/resultadomedia.jsp";
request.setAttribute("url",url);
request.setAttribute("resultado", resultado);
RequestDispatcher dispacher = request.getRequestDispatcher(
"index.jsp");
dispacher.forward(request, response);
} else {
url="sites/pesquisa.jsp";
request.setAttribute("rst",rst);
request.setAttribute("url",url);
RequestDispatcher dispacher = request.getRequestDispatcher(
"index.jsp?data1="+data1+"&data2="+data2);
dispacher.forward(request, response);
}
}
}
private String montaGrid(List resultado){
String MTgrid = "";
String cor = "ebebeb";
for (Iterator iter = resultado.iterator(); iter.hasNext(); ) {
PesquisaVO item = (PesquisaVO) iter.next();
MTgrid += "<tr bgcolor='"+ cor +"'>";
MTgrid += "<td align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>" ;
if(item.isImportante()==true){
MTgrid += "<img src='componentes/imagens/28.gif' width='19' height='19' >";
}
MTgrid += "</font></td>";
MTgrid += "<td> <div align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getPa_atendimento() +"</font></div></td>";
MTgrid += "<td > <div align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>";
if (item.getTipo().equals("originada")){
MTgrid += "<img src='componentes/imagens/originada.gif' alt='Ligações originadas ' width='14' height='19'>";
}else if(item.getTipo().equals("recebida")){
MTgrid += "<img src='componentes/imagens/recebida.gif' alt='Ligações recebidas ' width='14' height='19'>";
}else{
MTgrid += "<img src='componentes/imagens/naoatendida.gif' alt='Ligações não atendidas ' width='19' height='19'>";
}
MTgrid += "</font></div></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getData_lig() +" </font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getHora() +" </font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getDuracao() +" </font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getTelefone() +" </font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getContato() +" </font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getObservacao() +" </font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'><a href=\"javascript:popUpWindow('pesquisaid?id="+item.getId() +"', 570, 150, 315, 105)\" " +
"onMouseOut='MM_swapImgRestore()' onMouseOver='MM_swapImage('Image6','','componentes/imagens/ouvirh.gif',1)'><img src='componentes/imagens/ouvir.gif' " +
"alt='Ouvir Gravação' name='Image6' width='59' height='17' border='0'></a></font></td>";
MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'><a href=\"BaixarMp3="+item.getId() +" " +
"onMouseOut='MM_swapImgRestore()' onMouseOver='MM_swapImage('Image6','','/componentes/imagens/baixar2.gif',1)'><img src='componentes/imagens/baixar2.gif' " +
"alt='Fazer Download' name='Image7' width='59' height='17' border='0'></a></font></td>";
MTgrid += "</tr>" ;
if(cor.equals("ebebeb")){
cor = "d6c9d7";
}else{
cor = "ebebeb";
}
}
return MTgrid;
}