<?php
require_once("DBManager.class.php");

class ComprobanteTipo {

    private $id;
    private $nombre;

    // =========================================================
    //  REGISTRAR TIPO DE COMPROBANTE
    // =========================================================
    public function Crear($nombre)
    {
        $resp = false;
        $db = new DBManager();

        $sql = "INSERT INTO comprobante_tipo(id, nombre)
                VALUES(NULL, '$nombre')";

        if ($db->_execute($sql)) {
            $resp = true;
        }
        return $resp;
    }

    // =========================================================
    //  ACTUALIZAR TIPO DE COMPROBANTE
    // =========================================================
    public function Actualizar($id, $nombre)
    {
        $resp = false;
        $db = new DBManager();

        $sql = "UPDATE comprobante_tipo SET
                    nombre = '$nombre'
                WHERE id = $id";

        if ($db->_execute($sql)) {
            $resp = true;
        }
        return $resp;
    }

    // =========================================================
    //  ELIMINAR TIPO DE COMPROBANTE
    // =========================================================
    public function Eliminar($id)
    {
        $resp = false;
        $db = new DBManager();

        $sql = "DELETE FROM comprobante_tipo WHERE id = $id";

        if ($db->_execute($sql)) {
            $resp = true;
        }
        return $resp;
    }

    // =========================================================
    //  BUSCAR POR ID
    // =========================================================
    public function BuscarPorCodigo($id)
    {
        $resp = false;
        $db = new DBManager();

        $rs = $db->execute("SELECT * FROM comprobante_tipo WHERE id=$id");

        if ($rs->getNumOfRows() > 0) {
            $resp = true;

            $rs->firstRow();
            while (!$rs->EOF) {
                $this->id     = $rs->fields["id"];
                $this->nombre = $rs->fields["nombre"];
                $rs->nextRow();
            }
        }

        return $resp;
    }

    // =========================================================
    //  LISTAR
    // =========================================================
    public function Listar($valor)
    {
        $vector = null;
        $db = new DBManager();

        $sql = "SELECT * FROM comprobante_tipo
                WHERE nombre LIKE CONCAT('%','$valor','%')
                ORDER BY nombre ASC";

        $rs = $db->execute($sql);
        $num_rows = $rs->getNumOfRows();

        if ($num_rows > 0) {

            $row = 0;
            $rs->firstRow();
            while (!$rs->EOF) {

                $vector[$row] = array(
                    "id"     => $rs->fields["id"],
                    "nombre" => $rs->fields["nombre"]
                );

                $row++;
                $rs->nextRow();
            }

            return $vector;
        }

        return null;
    }

    // =========================================================
    //  GETTERS
    // =========================================================
    public function getId()     { return $this->id; }
    public function getNombre() { return $this->nombre; }

}
?>

