<?php

include('../../path.php');

require_once(ROOT_CONFIG);



    class infraestructura

    {

        public function insert_infraestructura($Nombre_Recurso, $Tipo_Infraestructura, $Proveedor_Servicio, $Ubicacion, $Estatus, $Descripcion, $Url_Acceso, $Usuario_Acceso, $Password_Acceso, $Notas, $Documento_Memoria1, $Documento_Memoria2, $Documento_Memoria3, $Fecha_Registro, $Usuario_Registro, $Fecha_Modificacion, $Usuario_Modifico)

        {

            require_once('../../log/controller/log.php');

            $Obj_log = new log();

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="INSERT INTO infraestructura(Nombre_Recurso, Tipo_Infraestructura, Proveedor_Servicio, Ubicacion, Estatus, Descripcion, Url_Acceso, Usuario_Acceso, Password_Acceso, Notas, Documento_Memoria1, Documento_Memoria2, Documento_Memoria3,  Usuario_Registro,  Usuario_Modifico) VALUES ('$Nombre_Recurso', '$Tipo_Infraestructura', '$Proveedor_Servicio', '$Ubicacion', '$Estatus', '$Descripcion', '$Url_Acceso', '$Usuario_Acceso', '$Password_Acceso', '$Notas', '$Documento_Memoria1', '$Documento_Memoria2', '$Documento_Memoria3',  '$Usuario_Registro', '$Usuario_Modifico') ";

            $conexion->query($consulta);

            $whatsmyid=$conexion->insert_id;

            $conexion->close();

            $_Tabla='infraestructura';

            $_Evento_Log='registrar';

            $_Consulta = '"'.$consulta.'"';

            $Obj_log->insert_log_crud($_Tabla,$_Evento_Log,$_Consulta);

            return $whatsmyid;

        }



        public function get_infraestructura($_Clausula_Fk,$_IdFk)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            if($_Clausula_Fk!='' && $_IdFk!=''){

                //$consulta="SELECT *,  count(*) as numregis FROM infraestructura WHERE $_Clausula_Fk=$_IdFk ORDER BY Id_Infraestructura DESC";

                $consulta="SELECT count(*) as numregis FROM infraestructura WHERE $_Clausula_Fk=$_IdFk";

            }else{

                //$consulta="SELECT *,  count(*) as numregis FROM infraestructura ORDER BY Id_Infraestructura DESC";

                $consulta="SELECT count(*) as numregis FROM infraestructura";

            }

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function get_infraestructurapg($inicio,$TAMANO_PAGINA,$_Clausula_Fk,$_IdFk)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            if($_Clausula_Fk!='' && $_IdFk!=''){

                $consulta="SELECT * FROM infraestructura WHERE $_Clausula_Fk=$_IdFk ORDER BY Id_Infraestructura DESC";

            }else{

                $consulta="SELECT * FROM infraestructura ORDER BY Id_Infraestructura DESC";

            }

            

            if ($TAMANO_PAGINA != "Todos") {

                $consulta .= " LIMIT $inicio, $TAMANO_PAGINA";

            }

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function update_infraestructura($Id_Infraestructura, $Nombre_Recurso, $Tipo_Infraestructura, $Proveedor_Servicio, $Ubicacion, $Estatus, $Descripcion, $Url_Acceso, $Usuario_Acceso, $Password_Acceso, $Notas, $Documento_Memoria1, $Documento_Memoria2, $Documento_Memoria3, $Fecha_Registro, $Usuario_Registro, $Fecha_Modificacion, $Usuario_Modifico)

        {

            require_once('../../log/controller/log.php');

            $Obj_log = new log();

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="UPDATE infraestructura SET Id_Infraestructura='$Id_Infraestructura', Nombre_Recurso='$Nombre_Recurso', Tipo_Infraestructura='$Tipo_Infraestructura', Proveedor_Servicio='$Proveedor_Servicio', Ubicacion='$Ubicacion', Estatus='$Estatus', Descripcion='$Descripcion', Url_Acceso='$Url_Acceso', Usuario_Acceso='$Usuario_Acceso', Password_Acceso='$Password_Acceso', Notas='$Notas', Documento_Memoria1='$Documento_Memoria1', Documento_Memoria2='$Documento_Memoria2', Documento_Memoria3='$Documento_Memoria3',  Usuario_Registro='$Usuario_Registro', Usuario_Modifico='$Usuario_Modifico' WHERE Id_Infraestructura = '$Id_Infraestructura'";

            $conexion->query($consulta);

            $rowaffected=$conexion->affected_rows;

            $conexion->close();

            $_Tabla='infraestructura';

            $_Evento_Log='editar';

            $_Consulta = '"'.$consulta.'"';

            $Obj_log->insert_log_crud($_Tabla,$_Evento_Log,$_Consulta);

            return $rowaffected;

        }



        public function delete_infraestructura($Id_Infraestructura)

        {

            require_once('../../log/controller/log.php');

            $Obj_log = new log();

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="DELETE FROM infraestructura WHERE Id_Infraestructura='$Id_Infraestructura'";

            $conexion->query($consulta);

            $rowaffected=$conexion->affected_rows;

            $conexion->close();

            $_Tabla='infraestructura';

            $_Evento_Log='eliminar';

            $_Consulta = '"'.$consulta.'"';

            $Obj_log->insert_log_crud($_Tabla,$_Evento_Log,$_Consulta);

            return $rowaffected;

        }



        //Funciones adicionales.

        public function getorderby_infraestructura($Nombre,$Orderby,$_Clausula_Fk,$_IdFk)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            if($_Clausula_Fk!='' && $_IdFk!=''){

                //$consulta="SELECT *,  count(*) as numregis FROM infraestructura WHERE $_Clausula_Fk=$_IdFk ORDER BY $Nombre $Orderby";

                $consulta="SELECT count(*) as numregis FROM infraestructura WHERE $_Clausula_Fk=$_IdFk";

            }else{

                //$consulta="SELECT *,  count(*) as numregis FROM infraestructura ORDER BY $Nombre $Orderby";

                $consulta="SELECT count(*) as numregis FROM infraestructura";

            }

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function getorderby_infraestructurapg($Nombre,$Orderby,$inicio,$TAMANO_PAGINA,$_Clausula_Fk,$_IdFk)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            if($_Clausula_Fk!='' && $_IdFk!=''){

                $consulta="SELECT * FROM infraestructura WHERE $_Clausula_Fk=$_IdFk ORDER BY $Nombre $Orderby";

            }else{

                $consulta="SELECT * FROM infraestructura ORDER BY $Nombre $Orderby";

            }

            if ($TAMANO_PAGINA != "Todos") {

                $consulta .= " LIMIT $inicio, $TAMANO_PAGINA";

            }

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function getbyid_infraestructura($Id_Infraestructura)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="SELECT * FROM infraestructura WHERE Id_Infraestructura='$Id_Infraestructura'";

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function get_infraestructura_paginador_frm()

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="SELECT * FROM infraestructura";

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function search_infraestructura($Buscar,$_Clausula_Fk,$_IdFk)

        {

            require_once('../../log/controller/log.php');

            $Obj_log = new log();

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            if($_Clausula_Fk!='' && $_IdFk!=''){

                $consulta="SELECT *, count(*) as numregis FROM infraestructura WHERE $_Clausula_Fk=$_IdFk AND (Id_Infraestructura LIKE '%$Buscar%' || Nombre_Recurso LIKE '%$Buscar%' || Tipo_Infraestructura LIKE '%$Buscar%' || Proveedor_Servicio LIKE '%$Buscar%' || Ubicacion LIKE '%$Buscar%' || Estatus LIKE '%$Buscar%' || Descripcion LIKE '%$Buscar%' || Url_Acceso LIKE '%$Buscar%' || Usuario_Acceso LIKE '%$Buscar%' || Password_Acceso LIKE '%$Buscar%' || Notas LIKE '%$Buscar%' || Documento_Memoria1 LIKE '%$Buscar%' || Documento_Memoria2 LIKE '%$Buscar%' || Documento_Memoria3 LIKE '%$Buscar%' || Fecha_Registro LIKE '%$Buscar%' || Usuario_Registro LIKE '%$Buscar%' || Fecha_Modificacion LIKE '%$Buscar%' || Usuario_Modifico LIKE '%$Buscar%') ORDER BY Id_Infraestructura DESC";

                $consulta="SELECT count(*) as numregis FROM infraestructura WHERE $_Clausula_Fk=$_IdFk AND (Id_Infraestructura LIKE '%$Buscar%' || Nombre_Recurso LIKE '%$Buscar%' || Tipo_Infraestructura LIKE '%$Buscar%' || Proveedor_Servicio LIKE '%$Buscar%' || Ubicacion LIKE '%$Buscar%' || Estatus LIKE '%$Buscar%' || Descripcion LIKE '%$Buscar%' || Url_Acceso LIKE '%$Buscar%' || Usuario_Acceso LIKE '%$Buscar%' || Password_Acceso LIKE '%$Buscar%' || Notas LIKE '%$Buscar%' || Documento_Memoria1 LIKE '%$Buscar%' || Documento_Memoria2 LIKE '%$Buscar%' || Documento_Memoria3 LIKE '%$Buscar%' || Fecha_Registro LIKE '%$Buscar%' || Usuario_Registro LIKE '%$Buscar%' || Fecha_Modificacion LIKE '%$Buscar%' || Usuario_Modifico LIKE '%$Buscar%')";

            }else{

                //$consulta="SELECT *, count(*) as numregis FROM infraestructura WHERE Id_Infraestructura LIKE '%$Buscar%' || Nombre_Recurso LIKE '%$Buscar%' || Tipo_Infraestructura LIKE '%$Buscar%' || Proveedor_Servicio LIKE '%$Buscar%' || Ubicacion LIKE '%$Buscar%' || Estatus LIKE '%$Buscar%' || Descripcion LIKE '%$Buscar%' || Url_Acceso LIKE '%$Buscar%' || Usuario_Acceso LIKE '%$Buscar%' || Password_Acceso LIKE '%$Buscar%' || Notas LIKE '%$Buscar%' || Documento_Memoria1 LIKE '%$Buscar%' || Documento_Memoria2 LIKE '%$Buscar%' || Documento_Memoria3 LIKE '%$Buscar%' || Fecha_Registro LIKE '%$Buscar%' || Usuario_Registro LIKE '%$Buscar%' || Fecha_Modificacion LIKE '%$Buscar%' || Usuario_Modifico LIKE '%$Buscar%' ORDER BY Id_Infraestructura DESC";

                $consulta="SELECT count(*) as numregis FROM infraestructura WHERE Id_Infraestructura LIKE '%$Buscar%' || Nombre_Recurso LIKE '%$Buscar%' || Tipo_Infraestructura LIKE '%$Buscar%' || Proveedor_Servicio LIKE '%$Buscar%' || Ubicacion LIKE '%$Buscar%' || Estatus LIKE '%$Buscar%' || Descripcion LIKE '%$Buscar%' || Url_Acceso LIKE '%$Buscar%' || Usuario_Acceso LIKE '%$Buscar%' || Password_Acceso LIKE '%$Buscar%' || Notas LIKE '%$Buscar%' || Documento_Memoria1 LIKE '%$Buscar%' || Documento_Memoria2 LIKE '%$Buscar%' || Documento_Memoria3 LIKE '%$Buscar%' || Fecha_Registro LIKE '%$Buscar%' || Usuario_Registro LIKE '%$Buscar%' || Fecha_Modificacion LIKE '%$Buscar%' || Usuario_Modifico LIKE '%$Buscar%'";  

            }

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            $_Tabla='infraestructura';

            $_Evento_Log='busco:'.$Buscar;

            $_Consulta = '"'.$consulta.'"';

            $Obj_log->insert_log_consultas($_Tabla,$_Evento_Log,$_Consulta);

            return $Array_adapter;

        }



        public function search_infraestructurapg($Buscar,$inicio,$TAMANO_PAGINA,$_Clausula_Fk,$_IdFk)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            if($_Clausula_Fk!='' && $_IdFk!=''){

                $consulta="SELECT * FROM infraestructura WHERE $_Clausula_Fk=$_IdFk AND (Id_Infraestructura LIKE '%$Buscar%' || Nombre_Recurso LIKE '%$Buscar%' || Tipo_Infraestructura LIKE '%$Buscar%' || Proveedor_Servicio LIKE '%$Buscar%' || Ubicacion LIKE '%$Buscar%' || Estatus LIKE '%$Buscar%' || Descripcion LIKE '%$Buscar%' || Url_Acceso LIKE '%$Buscar%' || Usuario_Acceso LIKE '%$Buscar%' || Password_Acceso LIKE '%$Buscar%' || Notas LIKE '%$Buscar%' || Documento_Memoria1 LIKE '%$Buscar%' || Documento_Memoria2 LIKE '%$Buscar%' || Documento_Memoria3 LIKE '%$Buscar%' || Fecha_Registro LIKE '%$Buscar%' || Usuario_Registro LIKE '%$Buscar%' || Fecha_Modificacion LIKE '%$Buscar%' || Usuario_Modifico LIKE '%$Buscar%') ORDER BY Id_Infraestructura DESC";

            }else{

                $consulta="SELECT * FROM infraestructura WHERE Id_Infraestructura LIKE '%$Buscar%' || Nombre_Recurso LIKE '%$Buscar%' || Tipo_Infraestructura LIKE '%$Buscar%' || Proveedor_Servicio LIKE '%$Buscar%' || Ubicacion LIKE '%$Buscar%' || Estatus LIKE '%$Buscar%' || Descripcion LIKE '%$Buscar%' || Url_Acceso LIKE '%$Buscar%' || Usuario_Acceso LIKE '%$Buscar%' || Password_Acceso LIKE '%$Buscar%' || Notas LIKE '%$Buscar%' || Documento_Memoria1 LIKE '%$Buscar%' || Documento_Memoria2 LIKE '%$Buscar%' || Documento_Memoria3 LIKE '%$Buscar%' || Fecha_Registro LIKE '%$Buscar%' || Usuario_Registro LIKE '%$Buscar%' || Fecha_Modificacion LIKE '%$Buscar%' || Usuario_Modifico LIKE '%$Buscar%' ORDER BY Id_Infraestructura DESC";

            }

            if ($TAMANO_PAGINA != "Todos") {

                $consulta .= " LIMIT $inicio, $TAMANO_PAGINA";

            }

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }



        public function searchbyparameter_infraestructura($Parametro,$Buscar)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="SELECT * FROM infraestructura WHERE $Parametro LIKE '%$Buscar%' ORDER BY Id_Infraestructura DESC";

            $Array_adapter=$conexion->query($consulta);

            $conexion->close();

            return $Array_adapter;

        }

  

        public function execute_infraestructura($query)

        {

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $Array_adapter=$conexion->query($query);

            $conexion->close();

            return $Array_adapter;

        }



        public function update_field_infraestructura($Field,$Value,$Id_Infraestructura)

        {

            require_once('../../log/controller/log.php');

            $Obj_log = new log();

            $Valueinto=strtoupper($Value);

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="UPDATE infraestructura SET $Field='$Valueinto' WHERE Id_Infraestructura= '$Id_Infraestructura'";

            $conexion->query($consulta);

            $rowaffected=$conexion->affected_rows;

            $conexion->close();

            $_Tabla='infraestructura';

            $_Evento_Log='editar';

            $_Consulta = '"'.$consulta.'"';

            $Obj_log->insert_log_crud($_Tabla,$_Evento_Log,$_Consulta);

            return $rowaffected;                          

        }



        public function update_field_front_infraestructura($Field,$Value,$Id_Infraestructura)

        {

            require_once('../../log/controller/log.php');

            $Obj_log = new log();

            $Odbj_conexion = new odbconexion;

            $conexion=$Odbj_conexion->openconection();

            $consulta="UPDATE infraestructura SET $Field='$Value' WHERE Id_Infraestructura= '$Id_Infraestructura'";

            $conexion->query($consulta);

            $rowaffected=$conexion->affected_rows;

            $conexion->close();

            $_Tabla='infraestructura';

            $_Evento_Log='editar';

            $_Consulta = '"'.$consulta.'"';

            $Obj_log->insert_log_crud($_Tabla,$_Evento_Log,$_Consulta);

            return $rowaffected;                          

        }



}



?>