com.demo.bean.ReportePagosBean.java Source code

Java tutorial

Introduction

Here is the source code for com.demo.bean.ReportePagosBean.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.demo.bean;

import com.demo.dao.GestoresDao;
import com.demo.dao.PagosDao;
import com.demo.impl.GestoresImpl;
import com.demo.impl.PagoImpl;
import com.demo.model.CatGestores;
import com.demo.model.Pago;
import com.demo.util.LogSistema;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;

/**
 *
 * @author ivan
 */
@ManagedBean(name = "reportePagosBean")
@ViewScoped
public class ReportePagosBean implements Serializable {

    /**
     * Creates a new instance of ReportePagosBean
     */
    private Date FechaInicio;
    private Date FechaFin;
    private CatGestores Gestor;
    private List<CatGestores> listaGestores;
    private GestoresDao gestDao;
    private int gestorElegido;
    private String familiaElegida;
    private String productoElegido;
    private String producto;
    private List<Pago> pagos;
    private List<Pago> pagosFil;
    private PagosDao pagosDao;
    private float totalAplicado, totalAutorizado, totalDeposito;

    private Map<String, String> FamiliaProducto = new HashMap<String, String>();
    private Map<String, Map<String, String>> productos = new HashMap<String, Map<String, String>>();
    private Map<String, String> FamiliaProductoR = new HashMap<String, String>();

    public ReportePagosBean() {
        gestDao = new GestoresImpl();
        FechaInicio = new Date();
        FechaFin = new Date();
        Gestor = new CatGestores();
        listaGestores = gestDao.todos();
        pagosDao = new PagoImpl();
        pagos = new ArrayList<>();

        pagosFil = new ArrayList<>();

        //familias Productos
        FamiliaProducto.put("SOFOM COMERCIAL", "SOFOM COMERCIAL");
        FamiliaProducto.put("SOFOM PERSONAL", "SOFOM PERSONAL");
        FamiliaProducto.put("CT EXPRESS", "CT EXPRESS");
        FamiliaProducto.put("LINEA TELMEX", "LINEA TELMEX");
        FamiliaProducto.put("TELNOR LT", "TELNOR LT");
        FamiliaProducto.put("TELNOR SOFOM", "TELNOR SOFOM");
        FamiliaProducto.put("CT CASTIGO", "CT CASTIGO");
        FamiliaProducto.put("QUEBRANTO COMERCIAL", "QUEBRANTO COMERCIAL");

        ////
        Map<String, String> SubSOFOMCOMERCIAL = new HashMap<String, String>();
        SubSOFOMCOMERCIAL.put("A_LINEA CREDITO TELMEX PF 50", "A_LINEA CREDITO TELMEX PF 50");
        SubSOFOMCOMERCIAL.put("A_LINEA CREDITO TELMEX PM 50", "A_LINEA CREDITO TELMEX PM 50");
        SubSOFOMCOMERCIAL.put("A_EX LINEA CREDITO TELMEX PF 50", "A_EX LINEA CREDITO TELMEX PF 50");
        SubSOFOMCOMERCIAL.put("A_EXLINEA CREDITO TELMEX PM 50", "A_EXLINEA CREDITO TELMEX PM 50");

        Map<String, String> SubSOFOMPERSONAL = new HashMap<String, String>();
        SubSOFOMPERSONAL.put("A_LINEA CREDITO TELMEX PERSONAL 38", "A_LINEA CREDITO TELMEX PERSONAL 38");
        SubSOFOMPERSONAL.put("EX LINEA CREDITO TELMEX PERSONAL 38", "EX LINEA CREDITO TELMEX PERSONAL 38");

        Map<String, String> SubCTEXPRESS = new HashMap<String, String>();
        SubCTEXPRESS.put("CT EXPRESS PF", "CT EXPRESS PF");
        SubCTEXPRESS.put("CT EXPRESS PM", "CT EXPRESS PM");
        SubCTEXPRESS.put("CREDITOS EXPRESS PF", "CREDITOS EXPRESS PF");
        SubCTEXPRESS.put("CREDITOS EXPRESS PM", "CREDITOS EXPRESS PM");
        SubCTEXPRESS.put("EXPRESS ABIERTO PF", "EXPRESS ABIERTO PF");
        SubCTEXPRESS.put("EXPRESS ABIERTO PM", "EXPRESS ABIERTO PM");

        Map<String, String> SubLINEATELMEX = new HashMap<String, String>();
        SubLINEATELMEX.put("LINEA CREDITO TELMEX PF", "LINEA CREDITO TELMEX PF");
        SubLINEATELMEX.put("LINEA CREDITO TELMEX PM", "LINEA CREDITO TELMEX PM");
        SubLINEATELMEX.put("EX LINEA CREDITO TELMEX PF", "EX LINEA CREDITO TELMEX PF");
        SubLINEATELMEX.put("EXLINEA CREDITO TELMEX PM", "EXLINEA CREDITO TELMEX PM");

        Map<String, String> SubTELNORLT = new HashMap<String, String>();
        SubTELNORLT.put("LINEA CREDITO TELNOR PF", "LINEA CREDITO TELNOR PF");
        SubTELNORLT.put("LINEA CREDITO TELNOR PM", "LINEA CREDITO TELNOR PM");
        SubTELNORLT.put("EX LINEA CREDITO TELNOR PF", "EX LINEA CREDITO TELNOR PF");
        SubTELNORLT.put("EXLINEA CREDITO TELNOR PM", "EXLINEA CREDITO TELNOR PM");

        Map<String, String> SubTELNORSOFOM = new HashMap<String, String>();
        SubTELNORSOFOM.put("A_LINEA CREDITO TELNOR PF 50", "A_LINEA CREDITO TELNOR PF 50");
        SubTELNORSOFOM.put("A_LINEA CREDITO TELNOR PM 50", "A_LINEA CREDITO TELNOR PM 50");
        SubTELNORSOFOM.put("A_EX LINEA CREDITO TELNOR PF 50", "A_EX LINEA CREDITO TELNOR PF 50");
        SubTELNORSOFOM.put("A_EXLINEA CREDITO TELNOR PM 50", "A_EXLINEA CREDITO TELNOR PM 50");

        Map<String, String> SubCTCASTIGO = new HashMap<String, String>();
        SubCTCASTIGO.put("CT EXPRESS PF CASTIGO", "CT EXPRESS PF CASTIGO");
        SubCTCASTIGO.put("CT EXPRESS PM CASTIGO", "CT EXPRESS PM CASTIGO");

        Map<String, String> SubQUEBRANTOCORMERCIAL = new HashMap<String, String>();
        SubQUEBRANTOCORMERCIAL.put("LINEA CREDITO TELMEX PF 50 QUEBRANTO", "LINEA CREDITO TELMEX PF 50 QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("LINEA CREDITO TELMEX PM 50 QUEBRANTO", "LINEA CREDITO TELMEX PM 50 QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("EX LINEA CREDITO TELMEX PF 50 QUEBRANTO",
                "EX LINEA CREDITO TELMEX PF 50 QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("EXLINEA CREDITO TELMEX PM 50 QUEBRANTO",
                "EXLINEA CREDITO TELMEX PM 50 QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("LINEA CREDITO TELMEX PF QUEBRANTO", "LINEA CREDITO TELMEX PF QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("LINEA CREDITO TELMEX PM QUEBRANTO", "LINEA CREDITO TELMEX PM QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("EX LINEA CREDITO TELMEX PF QUEBRANTO", "EX LINEA CREDITO TELMEX PF QUEBRANTO");
        SubQUEBRANTOCORMERCIAL.put("EXLINEA CREDITO TELMEX PM QUEBRANTO", "EXLINEA CREDITO TELMEX PM QUEBRANTO");

        productos.put("SOFOM COMERCIAL", SubSOFOMCOMERCIAL);
        productos.put("SOFOM PERSONAL", SubSOFOMPERSONAL);
        productos.put("CT EXPRESS", SubCTEXPRESS);
        productos.put("LINEA TELMEX", SubLINEATELMEX);
        productos.put("TELNOR LT", SubTELNORLT);
        productos.put("TELNOR SOFOM", SubTELNORSOFOM);
        productos.put("CT CASTIGO", SubCTCASTIGO);
        productos.put("QUEBRANTO COMERCIAL", SubQUEBRANTOCORMERCIAL);

    }

    public float gettotalsort() {
        return 192325.36f;
    }

    public void handleFamiliaChange() {
        if (familiaElegida != null && !familiaElegida.equals("")) {
            {
                FamiliaProductoR = productos.get(familiaElegida);
            }
        } else {

            FamiliaProductoR = new HashMap<String, String>();
        }
    }

    public void verPagos() {

        if (familiaElegida.equalsIgnoreCase("Todos"))
            productoElegido = "Todos";

        pagos = pagosDao.pagosFiltroProductos(FechaInicio, FechaFin, productoElegido, gestorElegido);
        //gestiones = gestionesDAO.obtenerGestionesFiltro(FechaInicio, FechaFin, productoElegido, gestorElegido);
        totalAplicado = totalAutorizado = totalDeposito = 0.0f;

        for (Pago p : pagos) {
            totalAplicado += p.getAprobadoCorp();
            totalAutorizado += p.getRevCantidad();
            totalDeposito += p.getDeposito();
        }
    }

    public void postProcessXLS(Object document) {
        HSSFWorkbook wb = (HSSFWorkbook) document;
        HSSFSheet sheet = wb.getSheetAt(0);
        HSSFRow header = sheet.getRow(0);

        HSSFCellStyle cellStyle = wb.createCellStyle();
        cellStyle.setFillForegroundColor(HSSFColor.GOLD.index);
        cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

        for (int i = 0; i < header.getPhysicalNumberOfCells(); i++) {
            HSSFCell cell = header.getCell(i);
            cell.setCellStyle(cellStyle);
        }

        LogSistema
                .guardarlog(this.getClass().getName() + " Method: postProcessXLS, se exporto un reporte de pagos ");
    }

    public Date getFechaInicio() {
        return FechaInicio;
    }

    public void setFechaInicio(Date FechaInicio) {
        this.FechaInicio = FechaInicio;
    }

    public Date getFechaFin() {
        return FechaFin;
    }

    public void setFechaFin(Date FechaFin) {
        this.FechaFin = FechaFin;
    }

    public CatGestores getGestor() {
        return Gestor;
    }

    public void setGestor(CatGestores Gestor) {
        this.Gestor = Gestor;
    }

    public List<CatGestores> getListaGestores() {
        return listaGestores;
    }

    public void setListaGestores(List<CatGestores> listaGestores) {
        this.listaGestores = listaGestores;
    }

    public GestoresDao getGestDao() {
        return gestDao;
    }

    public void setGestDao(GestoresDao gestDao) {
        this.gestDao = gestDao;
    }

    public int getGestorElegido() {
        return gestorElegido;
    }

    public void setGestorElegido(int gestorElegido) {
        this.gestorElegido = gestorElegido;
    }

    public String getFamiliaElegida() {
        return familiaElegida;
    }

    public void setFamiliaElegida(String familiaElegida) {
        this.familiaElegida = familiaElegida;
    }

    public String getProductoElegido() {
        return productoElegido;
    }

    public void setProductoElegido(String productoElegido) {
        this.productoElegido = productoElegido;
    }

    public String getProducto() {
        return producto;
    }

    public void setProducto(String producto) {
        this.producto = producto;
    }

    public List<Pago> getPagos() {
        return pagos;
    }

    public void setPagos(List<Pago> pagos) {
        this.pagos = pagos;
    }

    public Map<String, String> getFamiliaProducto() {
        return FamiliaProducto;
    }

    public void setFamiliaProducto(Map<String, String> FamiliaProducto) {
        this.FamiliaProducto = FamiliaProducto;
    }

    public Map<String, Map<String, String>> getProductos() {
        return productos;
    }

    public void setProductos(Map<String, Map<String, String>> productos) {
        this.productos = productos;
    }

    public Map<String, String> getFamiliaProductoR() {
        return FamiliaProductoR;
    }

    public void setFamiliaProductoR(Map<String, String> FamiliaProductoR) {
        this.FamiliaProductoR = FamiliaProductoR;
    }

    public float getTotalAplicado() {
        return totalAplicado;
    }

    public void setTotalAplicado(float totalAplicado) {
        this.totalAplicado = totalAplicado;
    }

    public float getTotalAutorizado() {
        return totalAutorizado;
    }

    public void setTotalAutorizado(float totalAutorizado) {
        this.totalAutorizado = totalAutorizado;
    }

    public float getTotalDeposito() {
        return totalDeposito;
    }

    public void setTotalDeposito(float totalDeposito) {
        this.totalDeposito = totalDeposito;
    }

    public List<Pago> getPagosFil() {
        return pagosFil;
    }

    public void setPagosFil(List<Pago> pagosFil) {
        this.pagosFil = pagosFil;
    }

}