Package cl.loso.melon.server.servlet

Source Code of cl.loso.melon.server.servlet.HomeServlet

package cl.loso.melon.server.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.ListIterator;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.google.appengine.api.datastore.Entity;
import com.google.appengine.api.datastore.Text;

import cl.loso.melon.server.model.NegocioLN;
import cl.loso.melon.server.negocio.NegocioLNBO;
import cl.loso.melon.server.util.Util;

public class HomeServlet extends HttpServlet {
  /**
   *
   */
  private static final long serialVersionUID = 1L;

  private static Log logger = LogFactory.getLog(HomeServlet.class);
 
  public void doGet(HttpServletRequest req, HttpServletResponse res)
      throws ServletException, IOException {
   
    res.setContentType("text/html");
    PrintWriter writer = res.getWriter();
      HttpSession session = req.getSession(true);
    SimpleDateFormat sdf=new SimpleDateFormat("dd/MM/yyyy");
    SimpleDateFormat sdfdiv=new SimpleDateFormat("dd_MM_yyyy");
    Long elNegocio=(Long)session.getAttribute("IdNegocio");

    //logger.info("elNegocio : " + elNegocio);   
    try {
      String txtNegocio=((NegocioLN)NegocioLNBO.editarNegocioLN(String.valueOf(elNegocio.longValue() ) ) ).getNombre();
      StringBuilder div = new StringBuilder("");   
     
      Date fechaIni=Util.hacetreintadias();
      Date fechaFin=Util.tomorow();
      //logger.info("fechaIni : " + fechaIni);
      //logger.info("fechaFin : " + fechaFin);
   
      Iterable<Entity> novedades=Util.listNovedadesHome(fechaIni,fechaFin,elNegocio);

      ArrayList<Date> listaFechas=new ArrayList<Date>();
      for(Entity novedad:novedades){
        Date fechaNovedad=(Date)novedad.getProperty("fecha");
        if(!listaFechas.contains(fechaNovedad)){
          //logger.info("agregando fechaNovedad : " + fechaNovedad); 
          listaFechas.add(fechaNovedad);
        }     
      }
     
     
      ArrayList<Turnos> listaTurnos=new ArrayList<Turnos>();
      Iterable<Entity> turnos=Util.listTurnoHome();
      for (Entity turno:turnos){
        String desc=(String)turno.getProperty("descripcion");
        Long id=Long.valueOf(turno.getKey().getId());
        listaTurnos.add(new Turnos(id,desc));
      }
     
      div.append("<div id=\"novedades\">");
      int i=1;
      ListIterator<Date> fechas=listaFechas.listIterator();
      while(fechas.hasNext()){
        Date lafecha=fechas.next();
        String fechaTxt = sdf.format(lafecha);
        String fechadiv = sdfdiv.format(lafecha);
        div.append("<h3><a href=\"#\">Novedad " + txtNegocio + " dia : " +fechaTxt+ "</a></h3>");
        div.append("<div>");
        div.append("<div id=\"print_" + fechadiv + "\"><a href=\"#\" onclick=\"imprimir('div#print_" + fechadiv + "');\" ><img src=\"../images/print.gif\" alt=\"imprimir\" width=\"16\" height=\"16\" border=\"0\" /></A>");
       
        div.append("<table class=\"table-home\" id=\"dnd-example\">");
        div.append("<thead>");
        div.append("<tr>");
        div.append("<th>Turno</th>");
        div.append("<th>Descripci�n</th>");
        div.append("<th>Usuario</th>");
        div.append("</tr>");
        div.append("</thead>");
        div.append("<tbody>");
 
        ListIterator<Turnos> enu=listaTurnos.listIterator();

        int j=1;
        while(enu.hasNext()){
          Turnos turno=enu.next();
          long key=turno.getId().longValue();
          String descripcion=turno.getTurno();
         
          Iterable<Entity> equipos=Util.listEquipoHome(elNegocio,key,lafecha);
           
           
            div.append("<tr id=\"node-"+String.valueOf(i)+String.valueOf(j)+"\">");
            div.append("<td><span class=\"folder\">" + descripcion + "</span></td>");
            div.append("<td>--</td>");
            div.append("<td>--</td>");
            div.append("</tr>");
            int k=1;
            //String usuarioAnterior="";
            for(Entity equipo:equipos){
              Text comentario=(Text)equipo.getProperty("comentario");
              String usuarioNombre=(String)equipo.getProperty("usuarioNombre");
              String equipoNombre=(String)equipo.getProperty("equipoNombre");
              /*
              if(usuarioNombre.equals(usuarioAnterior)){
                usuarioNombre="";
              }
              */
              if(comentario.getValue()!=null && comentario.getValue().trim().length()>0) {
             
                div.append("<tr id=\"node-" + String.valueOf(i)+String.valueOf(j) + String.valueOf(k)+ "\" class=\"child-of-node-" + String.valueOf(i)+String.valueOf(j)+ "\">");
                div.append("<td nowrap><span class=\"file\">"+equipoNombre+"</span></td>");
                div.append("<td>" + comentario.getValue() + "</td>");
                div.append("<td>" + usuarioNombre + "</td>");
                div.append("</tr>");
             
              }
             
              //usuarioAnterior=usuarioNombre;
            }
        j++;
        }

        div.append("</tbody>");
        div.append("</table>");
        div.append("</div>");//el que imprime
        div.append("</div>");
        i++;
      }
      div.append("</div>");
      //logger.info(div.toString());
      writer.println(div.toString());

    } catch (Exception e) {
      logger.error(e.getMessage());
    } finally{
      writer.flush();
      writer.close();
    }     

  }
}
TOP

Related Classes of cl.loso.melon.server.servlet.HomeServlet

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.