/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.rjconsultores.ventaboletos.web.utilerias.render;

import com.rjconsultores.ventaboletos.entidad.TramoTiempo;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;

import java.text.SimpleDateFormat;
import java.util.Calendar;

import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;

/**
 *
 * @author Administrador
 */
public class RenderTramoTiempo implements ListitemRenderer {

    public void render(Listitem lstm, Object o) throws Exception {
        TramoTiempo tramoTiempo = (TramoTiempo) o;

        SimpleDateFormat sf = new SimpleDateFormat("HH:mm");

        Listcell lc = new Listcell(tramoTiempo.getClaseServicio().toString());
        lc.setParent(lstm);

        lc = new Listcell(sf.format(tramoTiempo.getHorainicio()));
        lc.setParent(lstm);

        lc = new Listcell(sf.format(tramoTiempo.getHorafin()));
        lc.setParent(lstm);
        
        
        
        if (tramoTiempo.getTiemporecorrido() == null) {
            lc = new Listcell("");
        } else {
            Calendar c = Calendar.getInstance();
            c.setTime(tramoTiempo.getTiemporecorrido());
            
            Long tempo = DateUtil.getElapsedMinutos(DateUtil.getFecInicio().getTime(), c.getTime());
            long minutos = (tempo % 60);
            int horas = (tempo.intValue() / 60);


            String sMinutos = String.valueOf(minutos);
            lc = new Listcell(horas + ":" + ((sMinutos.length() < 2) ? "0" + sMinutos : sMinutos));
        }
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndapliclun()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndaplicmar()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndaplicmie()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndaplicjue()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndaplicvie()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndaplicsab()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lc = new Listcell((tramoTiempo.getIndaplicdom()) ? "Sim" : "Não");
        lc.setParent(lstm);

        lstm.setAttribute("data", tramoTiempo);
    }
}
