function periodos($data = array()) { if ($data[auth]) { global $db, $usuario; $id_periodo = is_array($data[id_periodo]) ? implode(',', $data[id_periodo]) : $data[id_periodo]; $id_empresa = is_array($data[id_empresa]) ? implode(',', $data[id_empresa]) : $data[id_empresa]; $filtro .= filtro_grupo(array(10 => '', 20 => "and a.id_empresa='{$usuario['id_empresa']}'", 30 => "and a.id_empresa='{$usuario['id_empresa']}' ", 34 => "and a.id_empresa='{$usuario['id_empresa']}' ", 35 => "and a.id_empresa='{$usuario['id_empresa']}' ", 40 => "and a.id_empresa='{$usuario['id_empresa']}' ", 50 => "and a.id_empresa='{$usuario['id_empresa']}' ", 60 => "and a.id_empresa='{$usuario['id_empresa']}' and a.id_usuario='{$usuario['id_usuario']}'")); $filtro .= $id_periodo ? " AND id_periodo IN ({$id_periodo})" : ''; $filtro .= $id_empresa ? " AND a.id_empresa IN ({$id_empresa})" : ''; $sql = "SELECT \n\t\t\t\t\t id_calendario as id_periodo\n\t\t\t\t\t,CONCAT('Del ',DATE_FORMAT(fecha_inicio,'%d/%m/%Y'),' al ', DATE_FORMAT(fecha_fin,'%d/%m/%Y')) as periodo\n\t\t\t\tFROM {$db['tbl_calendarios']} a\n\t\t\t\tWHERE 1 AND tipo='INCIDENCIAS' {$filtro} \n\t\t\t\tGROUP BY CONCAT('Del ',DATE_FORMAT(fecha_inicio,'%d/%m/%Y'),' al ', DATE_FORMAT(fecha_fin,'%d/%m/%Y'))\n\t\t\t\tORDER BY fecha_inicio;"; // dump_var($sql); $resultado = SQLQuery($sql); $resultado = count($resultado) ? $resultado : false; } else { $resultado = false; } return $resultado; }
function listado_select_pendientes_xls($data = array()) { if ($data[auth]) { global $db, $usuario, $var; $nivel_minimo = $var[nivel_minimo] ? $var[nivel_minimo] : 1; $id_horas_extra = is_array($data[id_horas_extra]) ? implode(',', $data[id_horas_extra]) : $data[id_horas_extra]; $id_personal = is_array($data[id_personal]) ? implode(',', $data[id_personal]) : $data[id_personal]; $empleado_num = is_array($data[empleado_num]) ? implode(',', $data[empleado_num]) : $data[empleado_num]; $id_usuario = is_array($data[id_usuario]) ? implode(',', $data[id_usuario]) : $data[id_usuario]; $activo = is_array($data[activo]) ? implode(',', $data[activo]) : $data[activo]; $grupo = is_array($data[grupo]) ? implode(',', $data[grupo]) : $data[grupo]; $orden = is_array($data[orden]) ? implode(',', $data[orden]) : $data[orden]; $filtro .= filtro_grupo(array(10 => '', 20 => "and a.id_empresa='{$usuario['id_empresa']}'", 30 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s5.id_supervisor='{$usuario['id_personal']}')", 34 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s4.id_supervisor='{$usuario['id_personal']}')", 35 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s3.id_supervisor='{$usuario['id_personal']}')", 40 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s2.id_supervisor='{$usuario['id_personal']}')", 50 => "and a.id_empresa='{$usuario['id_empresa']}' and s1.id_supervisor='{$usuario['id_personal']}'", 60 => "and a.id_empresa='{$usuario['id_empresa']}' and a.id_usuario='{$usuario['id_usuario']}'")); $filtro .= $id_horas_extra ? " and a.id_horas_extra IN ({$id_horas_extra})" : ''; $filtro .= $id_personal ? " and a.id_personal IN ({$id_personal})" : ''; $filtro .= $empleado_num ? " and b.empleado_num IN ({$empleado_num})" : ''; $filtro .= $activo ? " and a.activo IN ({$activo})" : ''; $filtro .= $id_usuario ? " and a.id_usuario IN ({$id_usuario})" : ''; $grupo = $grupo ? "GROUP BY {$grupo}" : "GROUP BY tbl1.id_horas_extra"; $orden = $orden ? "ORDER BY {$orden}" : "ORDER BY tbl1.id_horas_extra ASC"; $sql = "SELECT tbl2.* FROM \n\t\t\t\t\t(SELECT tbl1.* FROM (\n\t\t\t\t\t\tSELECT \n\t\t\t\t\t\t b.id_nomina\n\t\t\t\t\t\t,CONCAT(b.nombre,' ',IFNULL(b.paterno,''),' ',IFNULL(b.materno,'')) as nombre_completo\n\t\t\t\t\t\t,b.empleado_num\n\t\t\t\t\t\t,b.estado\n\t\t\t\t\t\t,b.sucursal_nomina as sucursal\n\t\t\t\t\t\t,b.sucursal as localidad\n\t\t\t\t\t\t,b.puesto\n\t\t\t\t\t\t,a.fecha\n\t\t\t\t\t\t,TIME_FORMAT(a.horas,'%H:%i') as horas\n\t\t\t\t\t\t,TIME_FORMAT(e.horas,'%H:%i') as tiempoextra\n\t\t\t\t\t\t,CASE IFNULL(e.id_cat_autorizacion,'NULL')\n\t\t\t\t\t\t\tWHEN 'NULL' THEN CONCAT(s1.nombre,' ',IFNULL(s1.paterno,''),' ',IFNULL(s1.materno,''), ' - ',s1.puesto, ' - ',s1.empleado_num)\n\t\t\t\t\t\t\tWHEN 1 THEN CONCAT(s2.nombre,' ',IFNULL(s2.paterno,''),' ',IFNULL(s2.materno,''), ' - ',s2.puesto, ' - ',s2.empleado_num)\n\t\t\t\t\t\t\tWHEN 2 THEN CONCAT(s3.nombre,' ',IFNULL(s2.paterno,''),' ',IFNULL(s3.materno,''), ' - ',s3.puesto, ' - ',s3.empleado_num)\n\t\t\t\t\t\tEND AS auth_nombre\n\t\t\t\t\t\t/*,IF(e.estatus=1, 'Aceptado', IF(e.estatus=0, 'Rechazado', 'Pendiente')) AS n1_estatus*/\n\t\t\t\t\t\t,'Pendiente' AS n1_estatus\n\t\t\t\t\t\t,e.argumento\n\t\t\t\t\t\t,a.id_horas_extra\n\t\t\t\t\tFROM {$db['tbl_horas_extra']} a\n\t\t\t\t\tLEFT JOIN {$db['tbl_personal']} b ON a.id_empresa=b.id_empresa AND a.id_personal=b.id_personal\n\t\t\t\t\tLEFT JOIN {$db['tbl_empresas']} c ON a.id_empresa=c.id_empresa\n\t\t\t\t\tLEFT JOIN {$db['tbl_autorizaciones_nomina']} d ON a.id_horas_extra=d.id_horas_extra\n\t\t\t\t\tLEFT JOIN (SELECT a.* FROM (SELECT * FROM {$db['tbl_autorizaciones']} ORDER BY timestamp DESC, id_cat_autorizacion DESC) a GROUP BY a.id_horas_extra) e ON a.id_horas_extra=e.id_horas_extra\n\t\t\t\t\tLEFT JOIN {$db['tbl_usuarios']} g on e.id_usuario=g.id_usuario\n\t\t\t\t\tLEFT JOIN {$db['tbl_personal']} h ON g.id_personal=h.id_personal\n\t\t\t\t\tLEFT JOIN {$db['tbl_supervisores']} n1 ON a.id_personal=n1.id_personal and n1.id_nivel=1\n\t\t\t\t\tLEFT JOIN {$db['tbl_personal']} s1 ON n1.id_supervisor=s1.id_personal\n\t\t\t\t\tLEFT JOIN {$db['tbl_supervisores']} n2 ON a.id_personal=n2.id_personal and n2.id_nivel=2\n\t\t\t\t\tLEFT JOIN {$db['tbl_personal']} s2 ON n2.id_supervisor=s2.id_personal\n\t\t\t\t\tLEFT JOIN {$db['tbl_supervisores']} n3 ON a.id_personal=n3.id_personal and n3.id_nivel=3\n\t\t\t\t\tLEFT JOIN {$db['tbl_personal']} s3 ON n3.id_supervisor=s3.id_personal\n\t\t\t\t\tWHERE 1 {$filtro} AND d.id_autorizacion_nomina IS NULL AND (e.id_cat_autorizacion<'{$nivel_minimo}' OR e.id_cat_autorizacion IS NULL) AND (e.estatus=1 OR e.estatus IS NULL)\n\t\t\t\t\tORDER BY e.id_cat_autorizacion DESC, e.timestamp DESC\n\t\t\t\t\t) as tbl1\n\t\t\t\t\t{$grupo} \n\t\t\t\t\t{$orden}\n\t\t\t\t\t) as tbl2\n\t\t\t\t;"; // dump_var($sql); $resultado = SQLQuery($sql); $resultado = count($resultado) ? $resultado : false; } return $resultado; }
function select_catalogo_sucursales_nomina($data = array()) { global $db, $usuario; if ($data[auth]) { $filtro .= filtro_grupo(array(10 => '', 20 => "and b.id_empresa='{$usuario['id_empresa']}'", 30 => "and b.id_empresa='{$usuario['id_empresa']}'", 40 => "and b.id_empresa='{$usuario['id_empresa']}'", 50 => "and b.id_empresa='{$usuario['id_empresa']}'", 60 => "and b.id_personal='{$usuario['id_personal']}'")); $sql = "SELECT sucursal_nomina FROM {$db['tbl_personal']} WHERE sucursal_nomina!='' and sucursal_nomina IS NOT NULL AND activo=1 GROUP BY sucursal_nomina ASC"; // dump_var($sql); $resultado = SQLQuery($sql); $resultado = count($resultado) ? $resultado : false; } else { $resultado = false; } return $resultado; }
function select_correos_autorizaciones($data = array()) { /** * Listado de autorizaciones nivel 1 */ $resultado = false; if ($data[auth]) { global $db, $usuario; $id_horas_extra = is_array($data[id_horas_extra]) ? implode(',', $data[id_horas_extra]) : $data[id_horas_extra]; $id_personal = is_array($data[id_personal]) ? implode(',', $data[id_personal]) : $data[id_personal]; $empleado_num = is_array($data[empleado_num]) ? implode(',', $data[empleado_num]) : $data[empleado_num]; $id_usuario = is_array($data[id_usuario]) ? implode(',', $data[id_usuario]) : $data[id_usuario]; $grupo = is_array($data[grupo]) ? implode(',', $data[grupo]) : $data[grupo]; $orden = is_array($data[orden]) ? implode(',', $data[orden]) : $data[orden]; $filtro .= filtro_grupo(array(10 => '', 20 => "and a.id_empresa='{$usuario['id_empresa']}'", 30 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s5.id_supervisor='{$usuario['id_personal']}')", 34 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s4.id_supervisor='{$usuario['id_personal']}')", 35 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s3.id_supervisor='{$usuario['id_personal']}')", 40 => "and a.id_empresa='{$usuario['id_empresa']}' and (s1.id_supervisor='{$usuario['id_personal']}' or s2.id_supervisor='{$usuario['id_personal']}')", 50 => "and a.id_empresa='{$usuario['id_empresa']}' and s1.id_supervisor='{$usuario['id_personal']}'", 60 => "and a.id_empresa='{$usuario['id_empresa']}' and a.id_usuario='{$usuario['id_usuario']}'")); $filtro .= $id_horas_extra ? " and a.id_horas_extra IN ({$id_horas_extra})" : ''; $filtro .= $id_personal ? " and a.id_personal IN ({$id_personal})" : ''; $filtro .= $empleado_num ? " and b.empleado_num IN ({$empleado_num})" : ''; $filtro .= $activo ? " and a.activo IN ({$activo})" : ''; $filtro .= $id_usuario ? " and a.id_usuario IN ({$id_usuario})" : ''; $grupo = $grupo ? "GROUP BY {$grupo}" : "GROUP BY a.id_horas_extra"; $orden = $orden ? "ORDER BY {$orden}" : "ORDER BY a.id_horas_extra ASC"; $sql = "SELECT \n\t\t\t\t\t\t\t\t a.id_horas_extra\n\t\t\t\t\t\t\t\t,a.id_empresa\n\t\t\t\t\t\t\t\t,c.nombre as empresa\n\t\t\t\t\t\t\t\t,a.id_personal\n\t\t\t\t\t\t\t\t,CONCAT(b.nombre,' ',IFNULL(b.paterno,''),' ',IFNULL(b.materno,'')) as nombre_completo\n\t\t\t\t\t\t\t\t,b.empleado_num\n\t\t\t\t\t\t\t\t,a.fecha\n\t\t\t\t\t\t\t\t,a.horas\n\t\t\t\t\t\t\t\t,a.semana_iso8601\n\t\t\t\t\t\t\t\t,b.email\n\t\t\t\t\t\t\t\t,s1p.email as s1_email\n\t\t\t\t\t\t\t\t,CONCAT(s1p.nombre,' ',IFNULL(s1p.paterno,''),' ',IFNULL(s1p.materno,'')) as s1_nombre_completo\n\t\t\t\t\t\t\t\t,s2p.email as s2_email\n\t\t\t\t\t\t\t\t,CONCAT(s2p.nombre,' ',IFNULL(s2p.paterno,''),' ',IFNULL(s2p.materno,'')) as s2_nombre_completo\n\t\t\t\t\t\t\t\t,s3p.email as s3_email\n\t\t\t\t\t\t\t\t,CONCAT(s3p.nombre,' ',IFNULL(s3p.paterno,''),' ',IFNULL(s3p.materno,'')) as s3_nombre_completo\n\t\t\t\t\t\t\t\t,s4p.email as s4_email\n\t\t\t\t\t\t\t\t,CONCAT(s4p.nombre,' ',IFNULL(s4p.paterno,''),' ',IFNULL(s4p.materno,'')) as s4_nombre_completo\n\t\t\t\t\t\t\t\t,s5p.email as s5_email\n\t\t\t\t\t\t\t\t,CONCAT(s5p.nombre,' ',IFNULL(s5p.paterno,''),' ',IFNULL(s5p.materno,'')) as s5_nombre_completo\n\t\t\t\t\t\t\tFROM {$db['tbl_horas_extra']} a\n\t\t\t\t\t\t\tLEFT JOIN {$db['tbl_personal']} b ON a.id_empresa=b.id_empresa AND a.id_personal=b.id_personal\n\t\t\t\t\t\t\tLEFT JOIN {$db['tbl_empresas']} c ON a.id_empresa=c.id_empresa\n\t\t\t\t\t\t\tLEFT JOIN {$db['tbl_autorizaciones']} AS n1 ON a.id_horas_extra=n1.id_horas_extra AND n1.id_cat_autorizacion=1\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tleft join {$db['tbl_supervisores']} s1 on b.id_empresa=s1.id_empresa and b.id_personal=s1.id_personal and s1.id_nivel=1\n\t\t\t\t\t\t\tleft join {$db['tbl_personal']} s1p on s1.id_supervisor=s1p.id_personal\n\t\t\t\t\t\t\tleft join {$db['tbl_supervisores']} s2 on b.id_empresa=s2.id_empresa and b.id_personal=s2.id_personal and s2.id_nivel=2\n\t\t\t\t\t\t\tleft join {$db['tbl_personal']} s2p on s2.id_supervisor=s2p.id_personal\n\t\t\t\t\t\t\tleft join {$db['tbl_supervisores']} s3 on b.id_empresa=s3.id_empresa and b.id_personal=s3.id_personal and s3.id_nivel=3\n\t\t\t\t\t\t\tleft join {$db['tbl_personal']} s3p on s3.id_supervisor=s3p.id_personal\n\t\t\t\t\t\t\tleft join {$db['tbl_supervisores']} s4 on b.id_empresa=s4.id_empresa and b.id_personal=s4.id_personal and s4.id_nivel=4\n\t\t\t\t\t\t\tleft join {$db['tbl_personal']} s4p on s4.id_supervisor=s4p.id_personal\n\t\t\t\t\t\t\tleft join {$db['tbl_supervisores']} s5 on b.id_empresa=s5.id_empresa and b.id_personal=s5.id_personal and s5.id_nivel=5\n\t\t\t\t\t\t\tleft join {$db['tbl_personal']} s5p on s5.id_supervisor=s5p.id_personal\n\t\t\t WHERE 1 \n\t\t\t {$filtro} \t\t\t \n\t\t\t {$grupo} \n\t\t\t {$orden};"; $resultado = SQLQuery($sql); $resultado = count($resultado) ? $resultado : false; } return $resultado; }