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

import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.lang.math.NumberUtils;
import org.zkoss.zul.Listcell;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.ListitemRenderer;

import com.rjconsultores.ventaboletos.entidad.Estado;
import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties;

/**
 * 
 * @author MCosso
 */
public class RenderEstado implements ListitemRenderer {

	public void render(Listitem lstm, Object o) throws Exception {
		Estado estado = (Estado) o;

		Listcell lc = new Listcell();

		lc = new Listcell(estado.getEstadoId().toString());
		lc.setParent(lstm);

		lc = new Listcell(estado.getNombestado());
		lc.setParent(lstm);

		if (estado.getPais() != null) {
			lc = new Listcell(estado.getPais().getNombpais());
		} else {
			lc = new Listcell("");
		}
		lc.setParent(lstm);

		BigDecimal icms = estado.getIcms();
		if (icms != null) {
			lc = new Listcell(icms.setScale(3).toString());

		} else {
			lc = new Listcell("");
		}
		lc.setParent(lstm);

		Integer tiempoHorHuso = estado.getTiempoHorHuso();
		if (tiempoHorHuso != null) {
			lc = new Listcell(tiempoHorHuso.toString());
		} else {
			lc = new Listcell(NumberUtils.INTEGER_ZERO.toString());
		}
		lc.setParent(lstm);

		Integer tiempoHorVerano = estado.getTiempoHorVerano();
		if (tiempoHorVerano != null) {
			lc = new Listcell(tiempoHorVerano.toString());
		} else {
			lc = new Listcell(NumberUtils.INTEGER_ZERO.toString());
		}
		lc.setParent(lstm);

		Date fecInicioHorVerano = estado.getFecInicioHorVerano();
		if (fecInicioHorVerano != null) {
			SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
			lc = new Listcell(format.format(fecInicioHorVerano));
		} else {
			lc = new Listcell("");
		}
		lc.setParent(lstm);

		Date fecFinoHorVerano = estado.getFecFinoHorVerano();
		if (fecFinoHorVerano != null) {
			SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
			lc = new Listcell(format.format(fecFinoHorVerano));
		} else {
			lc = new Listcell("");
		}
		lc.setParent(lstm);

		if (ApplicationProperties.getInstance().mostrarEquivalencia()) {
			lc = new Listcell(estado.getEquivalenciaId());
			lc.setParent(lstm);
		}

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