function obtenerPreviasCurso($idCarrera, $idCurso, $client)
{
    //Formulario con las materias
    //$crawler = $GLOBALS['client']->request('GET', 'http://www1.bedelias.edu.uy/ingenieria/muestra_prev.imprime?carrera=' . $idCarrera . '&cicl=0&p_mat=' . $idCurso);
    $crawler = $client->request('GET', 'http://www1.bedelias.edu.uy/ingenieria/muestra_prev.imprime?carrera=72&cicl=0&p_mat=' . $idCurso);
    $tabla = $crawler->filter('table table')->eq(0);
    $filas = $tabla->filter('tr')->each(function ($fila, $index) use($idCarrera, $idCurso) {
        if ($index > 0) {
            echo "LINEA: " . $index . "<br>";
            $cantColumnas = $fila->filter('td')->count();
            if ($cantColumnas == 5) {
                //Obtener datos
                $actividad = trim($fila->filter('td')->eq(0)->text());
                //echo "ACTIVIDAD: " . $actividad . "<br>";
                $previa = trim($fila->filter('td')->eq(1)->text());
                //echo "PREVIA: " . $previa . "<br>";
                $nombre = trim($fila->filter('td')->eq(2)->text());
                echo "NOMBRE: " . $nombre . "<br>";
                $actPrevia = trim($fila->filter('td')->eq(3)->text());
                //echo "ACT PREVIA: " . $actPrevia . "<br>";
                $obs = trim($fila->filter('td')->eq(4)->text());
                //echo "OBS: " . $obs . "<br>";
                //Procesar datos
                //Es previa del Curso o del Examen
                if ($actividad == 'Curso') {
                    $GLOBALS['previaDeCurso'] = true;
                } elseif ($actividad == 'Examen') {
                    $GLOBALS['previaDeCurso'] = false;
                }
                if ($GLOBALS['previaDeCurso']) {
                    $actividad = 'CURSO';
                } else {
                    $actividad = 'EXAMEN';
                }
                if ($obs == '(*)') {
                    echo "descarto (*)";
                } else {
                    if ($actPrevia == 'Grupo') {
                        //La previa es un Grupo
                        $url = $fila->filter('td')->eq(2)->filter('a')->eq(0)->attr('href');
                        $url = 'http://www1.bedelias.edu.uy' . $url;
                        echo $url;
                        obtener_grupo($url);
                        guardarPreviaGrupo($idCarrera, $idCurso, $previa, $actividad);
                    } else {
                        //La previa es un Curso aprobado o un Examen aprobado
                        if ($actPrevia == 'Curso aprobado') {
                            $actPrevia = 'CURSO';
                        } elseif ($actPrevia == 'Curso aprobado') {
                            $actPrevia = 'EXAMEN';
                        }
                        guardarPreviaCurso($idCarrera, $idCurso, $previa, $actividad, $actPrevia);
                    }
                }
            } elseif ($cantColumnas == 3) {
                echo "MINIMO CREDITOS <br>";
                //Obtener datos
                $actividad = trim($fila->filter('td')->eq(0)->text());
                //echo "ACTIVIDAD: " . $actividad . "<br>";
                $minCreditos = trim($fila->filter('td')->eq(1)->text());
                //echo "MINIMO CREDITOS: " . $minCreditos . "<br>";
                $area = trim($fila->filter('td')->eq(1)->text());
                //echo "AREA: " . $area . "<br>";
            }
            echo "<br>";
        }
        //end if index>0
    });
}
Example #2
0
$tipo_producto = isset($_GET['tipo_producto']) ? $_GET['tipo_producto'] : 1;
if ($tipo_producto == 1) {
    // todos los productos del grupo
    $query = "SELECT\n\t\tCategoria.categoria,\n\t\tCategoria.stock_minimo,\n\t\tSUM(Item.stock_disponible),\n\t\tItem.id_categoria,\n\t\t(SUM(Item.stock_disponible)-Categoria.stock_minimo),\n\t\tUnidad.unidad,\n\t\tSUM(Item.stock_transito),\n\t\t(SUM(Item.stock_disponible)+SUM(Item.stock_transito)-Categoria.stock_minimo-Categoria.reservado),\n\t\tGrupo.grupo,\n    Categoria.reservado\n\t  FROM\n\t\tItem, Categoria, Unidad, Grupo\n\t  WHERE (\n\t\t(Item.id_categoria = Categoria.id_categoria) AND\n\t\t(Unidad.id_unidad = Categoria.id_unidad_visual) AND\n\t\t(Categoria.id_grupo = Grupo.id_grupo) AND\n\t\t(Grupo.id_grupo = {$id_grupo})\n\t        )\n\t  GROUP BY\n\t\tItem.id_categoria\n\t  ORDER BY\n\t\tCategoria.categoria";
} else {
    // productos segun el tipo de producto elegido (import o naci)
    $id_argentina = obtener_id_pais_argentina();
    if ($tipo_producto == 2) {
        $condicion = "<> {$id_argentina}";
    } else {
        $condicion = "= {$id_argentina}";
    }
    $query = "SELECT\n\tCategoria.categoria,\n\tCategoria.stock_minimo,\n\tSUM(Item.stock_disponible),\n\tItem.id_categoria,\n\t(SUM(Item.stock_disponible)-Categoria.stock_minimo),\n\tUnidad.unidad,\n\tSUM(Item.stock_transito),\n\t(SUM(Item.stock_disponible)+SUM(Item.stock_transito)-Categoria.stock_minimo-Categoria.reservado),\n\tGrupo.grupo,\n  Categoria.reservado\n  FROM\n\tItem, Categoria, Unidad, Grupo, Proveedor, Pais\n  WHERE (\n\t(Item.id_categoria = Categoria.id_categoria) AND\n\t(Unidad.id_unidad = Categoria.id_unidad_visual) AND\n\t(Categoria.id_grupo = Grupo.id_grupo)AND\n\tGrupo.id_grupo = {$id_grupo} AND\n\tProveedor.id_proveedor = Item.id_proveedor AND\n\tPais.id_pais = Proveedor.id_pais AND\n\tPais.id_pais {$condicion}\n        )\n  GROUP BY\n\tItem.id_categoria\n  ORDER BY\n\tCategoria.categoria";
}
$result = mysql_query($query);
$titulo = obtener_grupo($id_grupo);
$aux = "";
while ($row = mysql_fetch_array($result)) {
    if ($row[4] < 0) {
        $row[4] = "<em>{$row['4']}</em>";
    }
    if ($row[7] < 0) {
        $row[7] = "<em>{$row['7']}</em>";
    }
    $producto = htmlspecialchars(stripslashes($row[0]));
    $aux = $aux . "<tr class=\"provlistrow\"><td><a class=\"list\" onclick=\"show_detail({$row['3']});\">{$producto}</a></td>\n      <td>{$row['2']}</td><td>{$row['1']}</td><td>{$row['4']}</td>" . desglose_transito_por_tipo_envio($row[3]) . "<td><a class=\"list\" onclick=\"edit_reservado({$row['3']});\">{$row['9']}</a></td><td>{$row['7']}</td><td>{$row['5']}</td></tr>\n";
}
$action = "grupo_listar.php";
$var = array("rows" => $aux, "titulo" => $titulo, "imprimir" => $imprimir, "id_grupo" => $id_grupo, "tipo_producto" => $tipo_producto, "action" => $action);
eval_html('producto_grupo_listar.html', $var);
/**
}
function obtener_grupo($id_grupo)
{
    $query = "SELECT grupo FROM grupo WHERE id_grupo = {$id_grupo}";
    $result = mysql_query($query);
    $row = mysql_fetch_array($result);
    return $row[0];
}
// todos los items del grupo seleccionado
$query = "SELECT\n\tCategoria.categoria,\n\tItem.id_categoria,\n\tItem.id_proveedor,\n\tProveedor.proveedor,\n\tItem.stock_disponible,\n\tCategoria.stock_minimo,\n\tItem.stock_disponible - Categoria.stock_minimo,\n\tUnidad.unidad,\n\tItem.stock_transito,\n\tItem.stock_disponible + Item.stock_transito - Categoria.stock_minimo,\n\tItem.codigo_proveedor,\n\tItem.id_item,\n\tItem.precio_fob,\n\tItem.precio_nac,\n\tItem.precio_ref\n\n  FROM\n\tItem, Categoria, Unidad, Proveedor\n  WHERE (\n\t(Item.id_categoria = Categoria.id_categoria) AND\n\t(Unidad.id_unidad = Categoria.id_unidad_visual) AND\n\t(Categoria.id_grupo = {$id_grupo})\n\n\tAND Proveedor.id_proveedor = Item.id_proveedor\n        )\n\n  ORDER BY\n\tCategoria.categoria";
$result = mysql_query($query);
$aux = "";
while ($row = mysql_fetch_array($result)) {
    $aux = $aux . process_item($row, $periodo);
}
$grupo = obtener_grupo($id_grupo);
$titulo = "Listado de stock minimos calcuado con periodo de {$periodo} meses";
$var = array("rows" => $aux, "id_grupo" => $id_grupo, "periodos" => get_periodos($periodo), "titulo" => $titulo, "imprimir" => "");
eval_html('producto_listar_stock_minimos.html', $var);
// Function para armar cada table row del html
function process_item($row, $periodo)
{
    // calcular mesy anio iniciales a partir del periodo dado
    $anio_actual = date("Y");
    $mes_actual = date("n");
    $periodo_ini = $periodo;
    $periodo++;
    while ($periodo > 1) {
        $mes_actual = $mes_actual - 1;
        if ($mes_actual == 0) {
            $mes_actual = 12;