function listadoCursosEmpleados($strUsuario, $get) { require_once '../general/' . $_SESSION['mapeo']; $db = new Db(); require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($this->getStrBD()); $lngIdEmpleado = $_SESSION['usuario']; // //ORIGINAL, SE LISTAN SEGUN LOS RESPONSABLES, NO LA USO // $strSQL = " // SELECT F.lngId, F.strCurso, CONCAT(E2.strNombre , ' ' , E2.strApellidos) AS Empleado, // D.strDescripcion AS Departamento, DATE_FORMAT(F.datFecha,'%d/%m/%Y') AS datFecha, F.strCentro , F.lngEstado // FROM tbformacion F, tbdepartamentos D, tbempleados E, tbempleados E2, tbusuarios U // WHERE E2.lngIdEmpleado = F.lngIdEmpleado AND F.lngIdResponsable = E.lngIdEmpleado AND F.lngIdDepartamento = D.lngId // AND E.lngIdEmpleado = U.lngIdEmpleado AND U.strUsuario = '" . $strUsuario . "' // AND F.lngEstado = 0 // "; // //extraigo todos los cursos con lngEstado=0 // $strSQL = " // SELECT F.lngId, F.strCurso, CONCAT(E.strNombre , ' ' , E.strApellidos) AS Empleado, // D.strDescripcion AS Departamento, DATE_FORMAT(F.datFecha,'%d/%m/%Y') AS datFecha, F.strCentro , F.lngEstado // FROM tbformacion F, tbdepartamentos D, tbempleados E // WHERE F.lngIdEmpleado = E.lngIdEmpleado AND F.lngIdDepartamento = D.lngId // AND F.lngEstado = 0 // "; //extraigo todos los cursos $strSQL = "\r\n SELECT F.lngId, F.strCurso, CONCAT(E.strNombre , ' ' , E.strApellidos) AS Empleado, \r\n D.strDescripcion AS Departamento, DATE_FORMAT(F.datFecha,'%d/%m/%Y') AS datFecha, F.strCentro , F.lngEstado \r\n FROM tbformacion F, tbdepartamentos D, tbempleados E\r\n WHERE F.lngIdEmpleado = E.lngIdEmpleado AND F.lngIdDepartamento = D.lngId AND F.lngStatus = 1\r\n "; //añado filtro sino es tbusuarios.lngPermiso = 2 o 3 $lngPermiso = $clsCADUsu->ObtienePermisoUsuario($strUsuario); if (!($lngPermiso === '2' || $lngPermiso === '3')) { $strSQL = $strSQL . " AND E.lngIdEmpleado = " . $_SESSION['usuario'] . ""; } //añado los filtros if (isset($get['datAltaDesde']) && $get['datAltaDesde'] !== '') { $strSQL = $strSQL . " AND F.datFecha >= '" . fecha_to_DATETIME($get['datAltaDesde']) . "'"; } if (isset($get['datAltaHasta']) && $get['datAltaHasta'] !== '') { $strSQL = $strSQL . " AND F.datFecha <= '" . fecha_to_DATETIME($get['datAltaHasta']) . "'"; } if (isset($get['strDepartamento']) && $get['strDepartamento'] !== '') { $strSQL = $strSQL . " AND D.strDescripcion = '" . $get['strDepartamento'] . "'"; } if (isset($get['strNombre']) && $get['strNombre'] !== '') { $strSQL = $strSQL . " AND E.strNombre = '" . $get['strNombre'] . "'"; } if (isset($get['strApellidos']) && $get['strApellidos'] !== '') { $strSQL = $strSQL . " AND E.strApellidos = '" . $get['strApellidos'] . "'"; } if (isset($get['strCurso']) && $get['strCurso'] !== '') { $strSQL = $strSQL . " AND F.strCurso = '" . $get['strCurso'] . "'"; } logger('traza', 'clsCADFor.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADFor->listadoCursosEmpleados()|| SQL : " . $strSQL); $db->conectar($this->getStrBD()); $stmt = $db->ejecutar($strSQL); $db->desconectar(); $resultado = ''; if ($stmt) { while ($row = mysql_fetch_array($stmt)) { $reg = ''; foreach ($row as $propiedad => $valor) { if (!is_numeric($propiedad)) { $reg[$propiedad] = $valor; } } $resultado[] = $reg; } } else { //si ha fallado la consulta DEVOLVEMOS false logger('traza', 'clsCADFor.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCADFor->listadoCursosEmpleados()<FALSE"); $resultado = 'false'; } return $resultado; }
function ObteneListaCons($strNumDesde, $strNumDesdeAnio, $strNumHasta, $strNumHastaAnio, $datAltaDesde, $datAltaHasta, $strProductos2, $optEstado, $strOficina, $strDepartamento) { require_once '../general/' . $_SESSION['mapeo']; require_once '../general/funcionesGenerales.php'; require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); //extraigo la oficina y departamento del usuario $OficinaDepartamento = $clsCADUsu->ObtieneOficinaDep_usuario($_SESSION['usuario']); $codOficina = explode('.', $OficinaDepartamento['strOficina']); $codOficina = $codOficina[0]; $codDepartamento = $OficinaDepartamento['lngDepartamento']; $permiso = $clsCADUsu->ObtienePermisoUsuario($_SESSION['strUsuario']); // logger('traza','clsCAD.php-', 'clsCADRecl->ObtieneLista('.$strUsuario.','.$strNumDesde.','.$strNumDesdeAnio.','.$strNumHasta.','.$strNumHastaAnio.','.$datAltaDesde.','.$datAltaHasta.','.$strProductos2.','.$optEstado.')'); $strSQL = "SELECT N.lngId as Numero, N.strPropuestaMejora,DATE_FORMAT(N.datFechaAlta,'%d/%m/%Y') AS datFechaAlta, Left(N.strReqIncumplido, 50) as ReqIncumplido, \r\n D.strDescripcion as Departamento, N.lngAccion ,N.strContrato\r\n from tbpropmej N,tbdepartamentos D\r\n Where N.lngIdDepartamento = D.lngId AND N.lngStatus=1"; //veo si tiene permiso 2 o no if ($permiso !== '2') { //por defecto filtro por oficina y departamento del usuario if ((!isset($datAltaDesde) || $datAltaDesde === '') && (!isset($datAltaHasta) || $datAltaHasta === '') && (!isset($strOficina) || $strOficina === '') && (!isset($strDepartamento) || $strDepartamento === '') && (!isset($strProductos2) || $strProductos2 === '')) { $strSQL = $strSQL . " AND (N.strCodigoOficina = '{$codOficina}' OR N.lngIdDepartamento = {$codDepartamento})"; } } //si no hubiese datos de fechas se filtra por los del año actual if ($datAltaDesde == '' && $datAltaHasta == '') { date_default_timezone_set('Europe/Madrid'); $datAltaDesde = '01/01/' . date("Y"); } //veo si hay datos en las fechas y añado los filtros if ($datAltaDesde != '') { $strSQL = $strSQL . " AND N.datFechaAlta >= '" . fecha_to_DATETIME($datAltaDesde) . "'"; } if ($datAltaHasta != '') { $strSQL = $strSQL . " AND N.datFechaAlta <= '" . fecha_to_DATETIME_F($datAltaHasta) . "'"; } if ($strOficina != '' && $strDepartamento != '') { $strSQL = $strSQL . " AND (N.strCodigoOficina = '" . $strOficina . "' OR N.lngIdDepartamento = " . $strDepartamento . ")"; } else { if ($strOficina != '') { $strSQL = $strSQL . " AND N.strCodigoOficina = '" . $strOficina . "'"; } else { if ($strDepartamento != '') { $strSQL = $strSQL . " AND N.lngIdDepartamento = " . $strDepartamento . ""; } } } if ($optEstado == 1) { //Pdte. Analisis $strSQL = $strSQL . " AND ISNULL(N.datFechaAceptadoResponsable) "; } else { if ($optEstado == 2) { //Pdte. cierre $strSQL = $strSQL . " AND NOT ISNULL(N.datFechaAceptadoResponsable) AND N.lngCerrado = 0 "; } else { if ($optEstado == 3) { //Cierre $strSQL = $strSQL . " AND N.lngCerrado = 1 "; } } } if ($strProductos2 != '') { $strSQL = $strSQL . " AND N.strContrato = '" . $strProductos2 . "' "; } $strSQL = $strSQL . " ORDER BY N.datFechaAlta DESC, N.strPropuestaMejora DESC"; //para el filtro de Nº Reclamaciones como por consulta es complicado de resolver lo hago al guardar los datos //hago la consulta que llevo en este momento (con o sin fechas) $db = new Db(); $db->conectar($_SESSION['mapeo']); $stmt = $db->ejecutar($strSQL); $db->desconectar(); //ahora guardo en un array los datos de la consulta //al guardar ahora compruebo si tengo datos en los filtros de reclamacion y antes de guardar compruebo si //cumple esos filtros, sino no los guardo, sino hay filtro guardo la consulta tal cual if ($stmt) { $this->filtrarArray($arcDoc, $stmt, $strNumDesde, $strNumDesdeAnio, $strNumHasta, $strNumHastaAnio); //devuelvo el listado return $arcDoc; } else { //no hay datos return ''; } }
function ListadoConsulta($strNumDesde, $strNumDesdeAnio, $strNumHasta, $strNumHastaAnio, $datFechaAltaDesde, $datFechaAltaHasta, $datFechaMaxCierreDesde, $datFechaMaxCierreHasta, $optTipoAccion, $optEstado, $strOficina, $strDepartamento) { require_once '../general/' . $_SESSION['mapeo']; require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); //extraigo la oficina y departamento del usuario $OficinaDepartamento = $clsCADUsu->ObtieneOficinaDep_usuario($_SESSION['usuario']); $codOficina = explode('.', $OficinaDepartamento['strOficina']); $codOficina = $codOficina[0]; $codDepartamento = $OficinaDepartamento['lngDepartamento']; $permiso = $clsCADUsu->ObtienePermisoUsuario($_SESSION['strUsuario']); $strSQL = "SELECT DISTINCT A.lngId AS Numero,A.strAccionCorrPrev,T.strDescripcion,DATE_FORMAT(A.datFechaAlta,'%d/%m/%Y') AS datFechaAlta,OA.strDescripcion as Origen, A.strNumDocOrigen,DATE_FORMAT(A.datFechaMaxCierre,'%d/%m/%Y') AS datFechaMaxCierre,concat(E.strNombre, ' ',E.strApellidos) as Responsable\r\n from tbaccioncorrprev A, tbempleados E, tbtipoaccioncp T, tborigenaccioncp OA, tboficinas O\r\n\t\t\t\t\t where A.lngTipoAccion = T.lngId and A.lngIdTipoOrigen = OA.lngId and E.lngIdEmpleado = A.lngIdResponsable "; // //veo si tiene permiso 2 o no // if($permiso !== '2'){ // //por defecto filtro por oficina y departamento del usuario // if((!isset($datFechaAltaDesde) || $datFechaAltaDesde === '') && // (!isset($datFechaAltaHasta) || $datFechaAltaHasta === '') && // (!isset($datFechaMaxCierreDesde) || $datFechaMaxCierreDesde === '') && // (!isset($datFechaMaxCierreHasta) || $datFechaMaxCierreHasta === '') && // (!isset($strOficina) || $strOficina === '') && // (!isset($strDepartamento) || $strDepartamento === '') && // (!isset($optTipoAccion) || $optTipoAccion === '')){ // $strSQL = $strSQL . " AND (A.strCodigoOficina = '$codOficina' OR A.lngIdDepartamento = $codDepartamento)"; // } // } //si no hubiese datos de fechas se filtra por los del año actual if ($datFechaAltaDesde == '' && $datFechaAltaHasta == '') { date_default_timezone_set('Europe/Madrid'); $datFechaAltaDesde = '01/01/' . date("Y"); } if ($datFechaAltaDesde != '') { $strSQL = $strSQL . " AND A.datFechaAlta >= '" . fecha_to_DATETIME($datFechaAltaDesde) . "'"; } if ($datFechaAltaHasta != '') { $strSQL = $strSQL . " AND A.datFechaAlta <= '" . fecha_to_DATETIME_F($datFechaAltaHasta) . "'"; } // if($datFechaAltaDesde=='' && $datFechaAltaHasta==''){ // date_default_timezone_set('Europe/Madrid'); // $datFechaAltaDesde='01/01/'.date ("Y"); // } if ($datFechaMaxCierreDesde != '') { $strSQL = $strSQL . " AND A.datFechaMaxCierre >= '" . fecha_to_DATETIME($datFechaMaxCierreDesde) . "'"; } if ($datFechaMaxCierreHasta != '') { $strSQL = $strSQL . " AND A.datFechaMaxCierre <= '" . fecha_to_DATETIME_F($datFechaMaxCierreHasta) . "'"; } if ($strOficina != '' && $strDepartamento != '') { $strSQL = $strSQL . " AND (A.strCodigoOficina = '" . $strOficina . "' OR A.lngIdDepartamento = " . $strDepartamento . ")"; } else { if ($strOficina != '') { $strSQL = $strSQL . " AND A.strCodigoOficina = '" . $strOficina . "'"; } else { if ($strDepartamento != '') { $strSQL = $strSQL . " AND A.lngIdDepartamento = " . $strDepartamento . ""; } } } if ($optTipoAccion == '1') { //Pdte. Analisis $strSQL = $strSQL . " AND A.lngTipoAccion=1"; } else { if ($optTipoAccion == '0') { //Pdte. cierre $strSQL = $strSQL . " AND A.lngTipoAccion=0 "; } } if ($optEstado != 3) { if ($optEstado == 4) { //Sin Verificar $strSQL = $strSQL . " AND A.lngVerificacion=0"; } else { if ($optEstado == 5) { //Verif. Sin Cerrar $strSQL = $strSQL . " AND A.lngVerificacion=1 AND A.estadoCierre=0"; } else { if ($optEstado == 6) { //Verificadas $strSQL = $strSQL . " AND A.lngVerificacion=1"; } else { if ($optEstado == 7) { //Cerradas $strSQL = $strSQL . " AND A.estadoCierre<>0"; } else { if ($optEstado == 8) { //Cerradas Fuera $strSQL = $strSQL . " AND A.estadoCierre=2"; } } } } } } $strSQL = $strSQL . " ORDER BY A.datFechaAlta DESC, A.strAccionCorrPrev DESC"; logger('traza', 'clsCADacp.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['mapeo'] . ', SesionID: ' . session_id() . " clsCADacp->ListadoConsulta() : SQL: " . $strSQL); //para el filtro de Nº Reclamaciones como por consulta es complicado de resolver lo hago al guardar los datos //hago la consulta que llevo en este momento (con o sin fechas) $db = new Db(); $db->conectar($_SESSION['mapeo']); $stmt = $db->ejecutar($strSQL); $db->desconectar(); //ahora guardo en un array los datos de la consulta //al guardar ahora compruebo si tengo datos en los filtros de reclamacion y antes de guardar compruebo si //cumple esos filtros, sino no los guardo, sino hay filtro guardo la consulta tal cual if ($stmt) { $this->filtrarArray($arcDoc, $stmt, $strNumDesde, $strNumDesdeAnio, $strNumHasta, $strNumHastaAnio); //devuelvo el listado return $arcDoc; } else { //no hay datos return ''; } }
function ObtieneLista($strUsuario, $strNumDesde, $strNumDesdeAnio, $strNumHasta, $strNumHastaAnio, $datAltaDesde, $datAltaHasta, $tipologiaRecl, $strTipologia, $strOficina, $strDepartamento) { require_once '../general/' . $_SESSION['mapeo']; require_once '../general/funcionesGenerales.php'; require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); logger('traza', 'clsCADRecl.php-', 'clsCADRecl->ObtieneLista()'); //extraigo la oficina y departamento del usuario $OficinaDepartamento = $clsCADUsu->ObtieneOficinaDep_usuario($_SESSION['usuario']); $codOficina = explode('.', $OficinaDepartamento['strOficina']); $codOficina = $codOficina[0]; $codDepartamento = $OficinaDepartamento['lngDepartamento']; $permiso = $clsCADUsu->ObtienePermisoUsuario($strUsuario); //Para llamara a la función hay que pasar 0-> Sí sólo queremos la visbilidad sobre los departamento, 1 si queremos la visibilidad sobre las oficinas // $visibilidad = DameVisibilidad($strUsuario, 1); //echo $visibilidad; //echo "<br>"; // $strSQL = "SELECT R.lngId as Id, R.strReclamacion, DATE_FORMAT(R.datFechaAlta,'%d/%m/%Y') AS datFechaAlta,CONCAT(R.strClienteNombre,' ',R.strClienteApellidos) AS strNombreYApellidos, " . // "LEFT(R.strDescripcion, 30) AS Causa,R.strEmpresa,R.strServAfect AS strNombreServicio, " . // "CONCAT(ERecib.strNombre , ' ' , ERecib.strApellidos) AS RegistradoPor, IF(R.lngAccion=1,'Si','No') AS lngAccion,R.lngTipo,R.lngTipologia " . // "FROM tbreclamaciones R, tbempleados ERecib, tbempleados EResp, tbusuarios U,tboficinas O " . // "WHERE R.lngIdEmpleado = ERecib.lngIdEmpleado AND "; // // if ($visibilidad <> NULL) { // $strSQL = $strSQL . " (U.lngPermiso = 2 OR U.lngPermiso = 1 OR R.strCodigoOficina = O.strCodigo OR R.strCodigoOficina IN (" . $visibilidad . ")) AND EResp.lngIdOficina = O.lngId "; // } else { // $strSQL = $strSQL . " (U.lngPermiso = 2 OR U.lngPermiso = 1 OR R.strCodigoOficina = O.strCodigo OR R.strCodigoOficina IN (SELECT lngVisibilidad FROM tbvisibilidad2 WHERE lngidEmpleado = U.lngIdEmpleado)) AND EResp.lngIdOficina = O.lngId "; // } // $strSQL = $strSQL . " AND U.lngIdEmpleado = EResp.lngIdEmpleado AND U.strUsuario = '" . $strUsuario . "' AND R.lngStatus<>0"; $strSQL = "\r\n SELECT R.lngId as Id, R.strReclamacion, DATE_FORMAT(R.datFechaAlta,'%d/%m/%Y') AS datFechaAlta,CONCAT(R.strClienteNombre,' ',R.strClienteApellidos) AS strNombreYApellidos,\r\n LEFT(R.strDescripcion,50) AS Causa,R.strEmpresa,R.strServAfect AS strNombreServicio,\r\n CONCAT(E.strNombre , ' ' , E.strApellidos) AS RegistradoPor, IF(R.lngAccion=1,'Si','No') AS lngAccion,R.lngTipo,R.lngTipologia,R.strTelefono2\r\n FROM tbreclamaciones R, tbempleados E WHERE R.lngIdEmpleado = E.lngIdEmpleado AND R.lngStatus<>0\r\n "; //veo si tiene permiso 2 o no if ($permiso !== '2') { //por defecto filtro por oficina y departamento del usuario if ((!isset($datAltaDesde) || $datAltaDesde === '') && (!isset($datAltaHasta) || $datAltaHasta === '') && (!isset($strOficina) || $strOficina === '') && (!isset($strDepartamento) || $strDepartamento === '') && (!isset($strTipologia) || $strTipologia === '')) { $strSQL = $strSQL . " AND (R.strCodigoOficina = '{$codOficina}' OR R.lngIdDepartamento = {$codDepartamento})"; } } //condiciones de filtros if ($tipologiaRecl != 0) { if ($tipologiaRecl == 1) { //Pdte. Analisis $strSQL = $strSQL . " AND ISNULL(R.datFechaAceptadoResponsable) "; } else { if ($tipologiaRecl == 2) { //Pdte. cierre $strSQL = $strSQL . " AND NOT ISNULL(R.datFechaAceptadoResponsable) AND R.lngCerrado = 0 "; } else { if ($tipologiaRecl == 3) { //cerrado $strSQL = $strSQL . " AND R.lngCerrado = 1 "; } } } } //si no hubiese datos de fechas se filtra por los del año actual if ($datAltaDesde == '' && $datAltaHasta == '') { date_default_timezone_set('Europe/Madrid'); $datAltaDesde = '01/01/' . date("Y"); } //veo si hay datos en las fechas y añado los filtros if ($datAltaDesde != '') { $strSQL = $strSQL . " AND R.datFechaAlta >= '" . fecha_to_DATETIME($datAltaDesde) . "'"; } if ($datAltaHasta != '') { $strSQL = $strSQL . " AND R.datFechaAlta <= '" . fecha_to_DATETIME_F($datAltaHasta) . "'"; } if ($strOficina != '' && $strDepartamento != '') { $strSQL = $strSQL . " AND (R.strCodigoOficina = '" . $strOficina . "' OR R.lngIdDepartamento = " . $strDepartamento . ")"; } else { if ($strOficina != '') { $strSQL = $strSQL . " AND R.strCodigoOficina = '" . $strOficina . "'"; } else { if ($strDepartamento != '') { $strSQL = $strSQL . " AND R.lngIdDepartamento = " . $strDepartamento . ""; } } } if ($strTipologia === '1' || $strTipologia === '2' || $strTipologia === '3') { $strSQL = $strSQL . " AND R.lngTipologia =" . $strTipologia; } logger('traza', 'clsCADRecl.php-', 'clsCADRecl->ObtieneLista() : SQL : ' . $strSQL); //para el filtro de Nº Reclamaciones como por consulta es complicado de resolver lo hago al guardar los datos //hago la consulta que llevo en este momento (con o sin fechas) $db = new Db(); $db->conectar($_SESSION['mapeo']); $stmt = $db->ejecutar($strSQL); $db->desconectar(); //ahora guardo en un array los datos de la consulta //al guardar ahora compruebo si tengo datos en los filtros de reclamacion y antes de guardar compruebo si //cumple esos filtros, sino no los guardo, sino hay filtro guardo la consulta tal cual $arcDoc = ''; if ($stmt) { //preparamos los numeros ordenados de 'desde' y 'hasta' $desdeOrd = $strNumDesdeAnio . $strNumDesde; $hastaOrd = $strNumHastaAnio . $strNumHasta; //recoremos la consulta y vamos incluyendo o descartando los resultados segun si cumplen o no el filtro while ($row = mysql_fetch_array($stmt, MYSQL_ASSOC)) { //extraemos el numero de reclamacion para poder comprobar que cumple los filtros $numRecl = explode('/', $row['strReclamacion']); //preparamos el numero ordenado primero el año y despues el numero $numRecOrdenado = $numRecl[1] . $numRecl[0]; //ahora comprobamos si tenemos datos en 'desde', 'hasta' o 'desde' y 'hasta' //hay datos de 'desde' y 'hasta' if ($strNumDesde != '' && $strNumDesdeAnio != '' && $strNumHasta != '' && $strNumHastaAnio != '') { //comprobamos si el nº reclamacion esta entre estos los numeros if ($desdeOrd <= $numRecOrdenado && $hastaOrd >= $numRecOrdenado) { //si lo cumple lo incluimos en el listado $this->guardarArrayListar($arcDoc, $row); } } else { if ($strNumDesde != '' && $strNumDesdeAnio != '' && $strNumHasta == '' && $strNumHastaAnio == '') { //comprobamos si el nº reclamacion es igual o mayor que el 'desde' if ($desdeOrd <= $numRecOrdenado) { //si lo cumple lo incluimos en el listado $this->guardarArrayListar($arcDoc, $row); } } else { if ($strNumDesde == '' && $strNumDesdeAnio == '' && $strNumHasta != '' && $strNumHastaAnio != '') { //comprobamos si el nº reclamacion es igual o menor que el 'hasta' if ($hastaOrd >= $numRecOrdenado) { //si lo cumple lo incluimos en el listado $this->guardarArrayListar($arcDoc, $row); } } else { //se incluye tal cual en el listado $this->guardarArrayListar($arcDoc, $row); } } } } //devuelvo el listado logger('traza', 'clsCADRecl.php-', 'clsCADRecl->ObtieneLista(' . $strUsuario . ',' . $strNumDesde . ',' . $strNumDesdeAnio . ',' . $strNumHasta . ',' . $strNumHastaAnio . ',' . $datAltaDesde . ',' . $datAltaHasta . ',' . $tipologiaRecl . ',' . $strTipologia . '): Hay listado datos'); return $arcDoc; } else { //no hay datos logger('traza', 'clsCADRecl.php-', 'clsCADRecl->ObtieneLista(' . $strUsuario . ',' . $strNumDesde . ',' . $strNumDesdeAnio . ',' . $strNumHasta . ',' . $strNumHastaAnio . ',' . $datAltaDesde . ',' . $datAltaHasta . ',' . $tipologiaRecl . ',' . $strTipologia . '): Esta vacio, no hay datos'); return ''; } }
<?php // Obtenemos los datos de Oficinas y departamentos asociados a la visibilidad. require_once '../CN/clsCNUsu.php'; $clsCNUsu = new clsCNUsu(); $clsCNUsu->setStrBD($_SESSION['mapeo']); $Id = $_GET['id']; //En arResult se almacenna en el campo 0 el valor de la visibilidad para la oficina y en el campo 1 el valor de los Id departamentos sobre los que tiene visibilidad $arResult = $clsCNUsu->ListadoVisibilidad($_SESSION['strUsuario'], $Id); //A continuación sacamos por un lado todos los Departamentos require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($_SESSION['mapeo']); $arDep = $clsCADUsu->Departamentos(); //Por otro lado todos las Oficinas require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($_SESSION['mapeo']); $arOfi = $clsCADUsu->Oficinas(); ?> <h3 align="center" color="#FFCC66"><font size="3px">Visibilidad de Departamentos y Oficinas</font></h3> <form name="form1" action="../vista/usuvisibility.php" method="post"> <div> <table class="filtro" align="center" border="1" width="350"> <tr></tr> <tr><td> <table class="filtro" align="center" border="0" width="350"> <table border="0" class="filtro" width="359"> <tr> <td colspan = "3" align="center"><b>Visibilidad de Departamentos</b></td>
function ResponsableUsuario($post) { logger('traza', 'clsCNUsu.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCNUsu->ResponsableUsuario()>"); require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($this->getStrBD()); return $clsCADUsu->ResponsableUsuario($post); }
function DatosUsuario($id) { logger('traza', 'clsCNDoc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCNDoc->DatosUsuario({$id})"); require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($this->getStrBD()); return $clsCADUsu->DatosEmpleado($id, ''); }
EnviaCorreos($_POST['Usuario'], $_POST['mailCliente'], $_POST['strReclamacion'], $_POST['strComentario']); echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/reclsol.php?id=' . $_POST['lngIdReclamacion'] . '">'; } } else { if (isset($_POST['cmdAltaComentario']) && $_POST['cmdAltaComentario'] == 'Aceptar') { //guardamos el comentario de esta reclamacion $clsCNRecl->AltaComentario($_POST['strReclamacion'], $_POST['lngIdUsuario'], $_POST['strComentario'], 'NO', 'reclamacion'); echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL=../vista/reclsol.php?id=' . $_POST['lngIdReclamacion'] . '">'; } else { if (isset($_POST['cmdAltaSol']) && $_POST['cmdAltaSol'] === 'Aceptar' && isset($_POST['AltaDoc']) && $_POST['AltaDoc'] === 'NO') { //damos de alta la solucion $valor = $clsCNRecl->AltaModSolucion($_POST["Id"], $_SESSION["usuario"], $_POST["strDescResponsableAfect"], $_POST["strDocAplicable"], $_POST["strProvAfectado"], $_POST["strAccionPropuesta"]); if ($valor == true) { //se a insertado correctamente la solucion require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($_SESSION['mapeo']); //ahora guardo en tbtareas esta tarea pendiente $clsCNRecl->tareaActualizar('QS', $_POST["Id"], $_SESSION['usuario'], 'Propuesta Solución', 'Cierre'); //se envia un correo $correos = ''; $activado = $clsCADUsu->ObtieneInfoCorreos($correos); //compruebo si el valor 15 esta en la cadena de texto $correos $correosArray = explode(',', $correos); $OKcorreos = false; for ($i = 0; $i < count($correosArray); $i++) { if ($correosArray[$i] == '15') { $OKcorreos = true; } } if ($activado == 0 && $OKcorreos) {
function ReasignaRecl($IdRecl, $strAsigEmpl) { logger('traza', 'clsCNEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['strBD'] . ', SesionID: ' . session_id() . " clsCNEnc->ReasignaRecl()>"); require_once '../CAD/clsCADEnc.php'; $clsCADEnc = new clsCADEnc(); $clsCADEnc->setStrBD($this->getStrBD()); //$strAsigEmpl vien el usuario de esta forma 'JUan Vicente Ramicolás(131)' //cojemos el numero que esta dentro de los parentesis $strAsig = substr($strAsigEmpl, 0, -1); //quito el parentesis final de cierre $strAsigArray = explode('(', $strAsig); $strIdEmpleado = $strAsigArray[1]; //busco el codigo de oficina del empleado require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($this->getStrBD()); $strCodOfi = $clsCADUsu->ObtieneCodOfiUsu($strIdEmpleado); if ($strCodOfi != false) { return $clsCADEnc->Reasignaencuesta($IdRecl, $strCodOfi, $strIdEmpleado); } else { return false; } }
function AltaExterna(&$num, $strUsuario, $strClienteNombre, $strClienteApellidos, $strEmpresa, $strPoblacion, $strDireccion, $lngCP, $strProvincia, $strTelefono, $strFax, $strEmail, $lngFactura, $lngExpediente, $datFechaServicio, $strServAfect, $strDescripcion, $strCodigo, $lngDepartamento, $strTipencuesta, $optCri013) { logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna(&{$num},{$strUsuario},{$strClienteNombre},{$strClienteApellidos},{$strEmpresa},{$strPoblacion},\r\n {$strDireccion},{$lngCP},{$strProvincia},{$strTelefono},{$strFax},{$strEmail},{$lngFactura},\r\n {$lngExpediente},{$datFechaServicio},{$strServAfect},{$strDescripcion},{$strCodigo},{$lngDepartamento},\r\n {$strTipencuesta},{$optCri013})>"); if ($strUsuario == '') { return 'No se puede realizar el Alta.'; } require_once '../CAD/clsCADUsu.php'; $clsCADUsu = new clsCADUsu(); $clsCADUsu->setStrBD($this->getStrBD()); logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna()->ObtieneIdUsuario({$strUsuario})>"); $idUsu = $clsCADUsu->ObtieneIdUsuario($strUsuario); logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna()->ObtieneRespDepartamento({$lngDepartamento})>"); $idResp = $clsCADUsu->ObtieneRespDepartamento($lngDepartamento); date_default_timezone_set('Europe/Madrid'); $strAnio = date("y", time()); //extraigo el lngId maximo que haya en la tabla tbencuestaes, si hay nuestro lngId sera ese mas 1, sino será el 1 require_once '../general/' . $_SESSION['mapeo']; $db = new Db(); $db->conectar($this->getStrBD()); $strSQL = 'SELECT if(isnull(Max(lngId)),1,Max(lngId)+1) AS lngId FROM tbencuestaes'; $stmt = $db->ejecutar($strSQL); if ($stmt) { $row = mysql_fetch_array($stmt); $lngId = $row['lngId']; } else { $lngId = 1; } logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna(): lngId: " . $lngId); //calculo el valor de la strencuesta (es un numero compuesto por el numero de encuesta una barra de division / y el año (2 cifras) //primero busco el valor del campo strencuesta. Este campo tiene la parte izda (7 caracteres de numeracion anual //y 2 caracteres por la derecha del año Ej: 0000003/09). Buscamos el valro maximo de la parte izda de strencuesta //filtrando por la parte derecha (año) $strSQL = 'SELECT Left(max(strencuesta),7) AS numero FROM tbencuestaes WHERE right(strencuesta,2) = "' . $strAnio . '"'; $stmt = $db->ejecutar($strSQL); $row = mysql_fetch_array($stmt); $numAnual = ''; //si hay valor (que existe ya alguna encuesta del año if ($row['numero'] == '') { $numAnual = '0000001/' . $strAnio; } else { $numAnual = $row['numero'] + 1; $long = strlen($numAnual); for ($i = 1; $i <= 7 - $long; $i++) { $numAnual = '0' . $numAnual; } $numAnual = $numAnual . '/' . $strAnio; } $strencuesta = $numAnual; logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna(): strencuesta: " . $strencuesta); //extraigo el lngIdEmpleado según su strUsuario $lngIdEmpleado = $strUsuario; $strSQL = 'INSERT INTO tbencuestaes(lngId, strencuesta, lngIdEmpleado, lngIdResponsableAfect, strClienteNombre, ' . 'strClienteApellidos, strEmpresa, strDireccion, strPoblacion, lngCP, strProvincia, strTelefono, strTelefono2,strFax, ' . 'strEmail, lngFactura, lngExpediente, datFechaServicio, strServAfect, strDescripcion, datFechaAlta, ' . 'datFechaencuesta, strCodigoOficina,lngIdDepartamento,lngTipologia,lngStatus,datFechaStatus,lngIdEmpleadoStatus) ' . 'VALUES (' . $lngId . ',"' . $strencuesta . '",' . $idUsu . ',' . $idResp . ',"' . $strClienteNombre . '","' . $strClienteApellidos . '","' . $strEmpresa . '","' . $strDireccion . '","' . $strPoblacion . '",' . $lngCP . ',"' . $strProvincia . '","' . $strTelefono . '","' . $strTipencuesta . '","' . $strFax . '","' . $strEmail . '",' . $lngFactura . ',' . $lngExpediente . ',"' . $datFechaServicio . '","' . $strServAfect . '","' . mysql_real_escape_string($strDescripcion) . '",' . 'now(),now(),"' . $strCodigo . '",' . $lngDepartamento . ',' . $optCri013 . ',1,now(),' . $idUsu . ') '; $stmt = $db->ejecutar($strSQL); logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna(): SQL: " . $strSQL); if (!$stmt) { logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna(): Consulta SQL fallida "); return 'No se puede realizar el Alta (2).<br/>'; } $strSQL = 'SELECT * from tbencuestaes where right(strencuesta,2) = "' . $strAnio . '"'; $stmt = $db->ejecutar($strSQL); $db->desconectar(); $num = mysql_num_rows($stmt); if ($num == 0) { $num = 1; } $num = $num . '/' . $strAnio; //si hemos llegado hasta aqui es que se ham realizado todas las operaciones correctamente (insercion de los datos //en la tabla tbencuestaes) por lo que devolvemos true logger('traza', 'clsCADEnc.php-', "Usuario: " . $_SESSION['strUsuario'] . ', Empresa: ' . $_SESSION['base'] . ', SesionID: ' . session_id() . " clsCADEnc->AltaExterna()< Insercion correcta TRUE"); return 'OK'; }