com.app.inventario.logica.ProveedorLogicaImpl.java Source code

Java tutorial

Introduction

Here is the source code for com.app.inventario.logica.ProveedorLogicaImpl.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.app.inventario.logica;

import com.app.inventario.dao.ProveedorDAOImpl;
import com.app.inventario.entidades.Proveedor;
import com.app.inventario.grid.jqGridModel;
import com.app.inventario.logicainterface.ILogica;
import com.thoughtworks.xstream.XStream;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.hibernate.HibernateException;
import org.springframework.transaction.annotation.Transactional;

/**
 *
 * @author Erick
 */
public class ProveedorLogicaImpl implements ILogica<Proveedor> {

    private ProveedorDAOImpl proveedorDAO;
    private jqGridModel<Proveedor> modelo;

    @Transactional
    public void guardar(Proveedor proveedor) throws Exception {
        try {
            proveedorDAO.guardar(proveedor);
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional
    public void actualizar(Proveedor proveedor) throws Exception {
        try {
            proveedorDAO.actualizar(proveedor);
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional
    public void eliminar(Proveedor proveedor) throws Exception {
        try {
            proveedorDAO.eliminar(proveedor);
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional(readOnly = true)
    public Proveedor obtener(int id) throws Exception {
        try {
            Proveedor proveedor = proveedorDAO.obtener(id);
            return proveedor;
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional(readOnly = true)
    public List<Proveedor> obtenerTodos() throws Exception {
        try {
            List<Proveedor> proveedores = null;
            proveedores = proveedorDAO.obtenerTodos();
            return proveedores;
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional(readOnly = true)
    public Proveedor obtenerProveedorNombre(String nombreProveedor) {
        try {
            Proveedor proveedor = null;
            proveedor = proveedorDAO.obtenerProveedorNombre(nombreProveedor);
            return proveedor;
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional(readOnly = true)
    public String obtenerListaTodosXML(int numeroPagina, int numeroFilas, String ordenarPor, String ordenarAsc)
            throws Exception {
        XStream xstream = new XStream();
        xstream.alias("root", jqGridModel.class);
        xstream.alias("proveedor", Proveedor.class);
        modelo = new jqGridModel<Proveedor>();
        int primerResultado = numeroFilas * (numeroPagina - 1);
        List<Proveedor> proveedores = null;
        try {
            proveedores = proveedorDAO.obtenerTodosAGrid(ordenarPor, ordenarAsc);
            modelo.setPage(numeroPagina);
            modelo.setTotal((int) Math.ceil((double) proveedores.size() / (double) numeroFilas));
            modelo.setRecords(proveedores.size());
            modelo.setRows(proveedores.subList(primerResultado,
                    numeroFilas > proveedores.size() ? proveedores.size() : numeroFilas));
            return xstream.toXML(modelo);
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
        //return map;
    }

    @Transactional(readOnly = true)
    public List<Proveedor> obtenerNombresProveedores() throws HibernateException {
        try {
            List lista = proveedorDAO.obtenerNombresProveedores();
            List<Proveedor> proveedores = new ArrayList<Proveedor>();
            Proveedor p;
            for (Object o : lista.toArray()) {
                p = new Proveedor();
                p.setId(Integer.parseInt(Array.get(o, 0).toString()));
                p.setNombreProveedor(Array.get(o, 1).toString());
                proveedores.add(p);
            }
            return proveedores;
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    @Transactional(readOnly = true)
    public jqGridModel obtenerListaTodos(int numeroPagina, int numeroFilas, String ordenarPor, String ordenarAsc)
            throws Exception {
        modelo = new jqGridModel<Proveedor>();
        int primerResultado = numeroFilas * (numeroPagina - 1);
        List<Proveedor> proveedores = null;
        try {
            proveedores = proveedorDAO.obtenerTodosAGrid(ordenarPor, ordenarAsc);
            modelo.setPage(numeroPagina);
            modelo.setTotal((int) Math.ceil((double) proveedores.size() / (double) numeroFilas));
            modelo.setRecords(proveedores.size());
            modelo.setRows(proveedores.subList(primerResultado,
                    numeroFilas > proveedores.size() ? proveedores.size() : numeroFilas));
            return modelo;
        } catch (HibernateException he) {
            Logger.getLogger(ProveedorLogicaImpl.class.getName()).log(Level.SEVERE, null, he);
            throw he;
        }
    }

    public ProveedorDAOImpl getProveedorDAO() {
        return proveedorDAO;
    }

    public void setProveedorDAO(ProveedorDAOImpl proveedorDAO) {
        this.proveedorDAO = proveedorDAO;
    }
}