<?php
  $debugin        = $decoded['debug'];
  $usr_id         = $decoded['usr_id'];
  $tienda_id      = $decoded['tienda_id'];
  $articulos      = $decoded['articulos'];
  $fechahoy       = date('Y-m-d H:i:s');

  if( $usr_id && $tienda_id ){

    //Valida Usuario y Tienda
    $Query = "
      SELECT
        usr.id,
        tie.fk_tienda
      FROM usuarios_app usr
      LEFT JOIN usuarios_tiendas tie ON tie.fk_usuario = usr.id
      WHERE
        usr.id = '$usr_id'
        AND tie.fk_tienda = '$tienda_id'
        AND usr.activo = '1'
    ";
    $Result = mysqli_query($mysqli, $Query);
    $Usr = mysqli_fetch_assoc($Result);
    if( $Usr[id] ){

      //Valida Productos en existencia y disponibles
      //--Aqui se debe hacer la validación de Existencias en cada CEdis y valoración de opciones
      foreach ($articulos AS $articulo) {

        //Articulo
        $Query = "
          SELECT
            art.id,
            art.nombre, art.codigo,
            art.descripcion,
            mar.id AS marca_id, mar.nombre AS marca,
            cat.id AS categoria_id, cat.categoria
          FROM articulos art
          LEFT JOIN marcas mar ON mar.id = art.fk_marca
          LEFT JOIN cat_articulos_categorias cat ON cat.id = art.fk_articulo_categoria
          WHERE
            art.id = '$articulo[articulo_id]'
            AND art.activo = '1'
        ";
        $Result = mysqli_query($mysqli, $Query);
        $Art = mysqli_fetch_assoc($Result);
        if( $Art[id] ){

          $ArticulosCheck[$Art[id]]['id']             = $Art[id];
          $ArticulosCheck[$Art[id]]['codigo']         = $Art[codigo];
          $ArticulosCheck[$Art[id]]['marca_id']       = $Art[marca_id];
          $ArticulosCheck[$Art[id]]['marca']          = $Art[marca];
          $ArticulosCheck[$Art[id]]['categoria_id']   = $Art[categoria_id];
          $ArticulosCheck[$Art[id]]['categoria']      = $Art[categoria];
          $ArticulosCheck[$Art[id]]['nombre']         = $Art[nombre];
          $ArticulosCheck[$Art[id]]['cantidad']       = $articulo[cantidad];

        }else{

          $ArticulosError[$Art[id]]['id']         = $Art[id];
          $ArticulosError[$Art[id]]['cantidad']   = $articulo[cantidad];

        }

      }
      //Valida Productos en existencia y disponibles

      // var_dump($ArticulosCheck);
      // var_dump($ArticulosError);
      // count($ArticulosCheck);

      //Si hay articulos disponibles realiza el pedido
      if( count($ArticulosCheck) > 0 ){

        //Inserta Pedido
        $Query = "
          INSERT INTO articulos_pedidos
          (
            fk_usuario, fk_tienda,
            fecha, fk_estatus
          )
          VALUES (
            '$Usr[id]', '$tienda_id',
            '$fechahoy', '1'
          )
        ";
        $Result = mysqli_query($mysqli, $Query);
        $cart_id = mysqli_insert_id($mysqli);
        //End Inserta Pedido

        $SuperTotal = 0;

        //Insert Articulo - Pedido
        foreach ($ArticulosCheck AS $Art) {

          //Precio en rango
          $Query = "
            SELECT
              pre.id, pre.precio
            FROM articulos_precios pre
            WHERE
              pre.id != '0'
              ANd pre.fk_articulo = '$Art[id]'
              AND ( '$Art[cantidad]' BETWEEN pre.rango_a AND pre.rango_b )
          ";
          $Result = mysqli_query($mysqli, $Query);
          $Precio = mysqli_fetch_assoc($Result);
          if( $Precio[id] ){

            $Total = $Art[cantidad] * $Precio[precio];

            //Insert Articulo
            $Query = "
              INSERT INTO articulos_pedidos_articulos
              (
                fk_pedido, fk_articulo, codigo,
                nombre, cantidad,
                precio, total
              )
              VALUES (
                '$cart_id', '$Art[id]', '$Art[codigo]',
                '$Art[nombre]', '$Art[cantidad]',
                '$Precio[precio]', '$Total'
              )
            ";
            $Result = mysqli_query($mysqli, $Query);
            $cart_art_id = mysqli_insert_id($mysqli);

            $SuperTotal = $SuperTotal + $Total;

          }
          //End Precio en rango

        }
        //Insert Articulo - Pedido

        //Update a pedido solicitado
        $Query = "
          UPDATE articulos_pedidos
          SET
            total       = '$SuperTotal',
            fk_estatus  = '2'
          WHERE
            id = '$cart_id'
        ";
        $Result = mysqli_query($mysqli, $Query);
        //End Update a pedido solicitado

        $Data = array(
          'action'      => 'ok',
          'pedido_id'   => $cart_id,
          'msn'         => 'Pedido Realizado',
          'msn_usr'     => 'Gracias por realizar tu pedido.'
        );
        echo json_encode($Data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

      }else{

        //Error, los artiuclos no estan disponibles
        $Data = array(
          'action'      => 'error',
          'error'       => 'er-1',
          'error_msn'   => 'Los articulos ya no estan disponibles.'
        );
        echo json_encode($Data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

      }
      //End Si hay articulos disponibles realiza el pedido


    }else{

      $Data = array(
        'action'      => 'error',
        'error'       => 'er-1',
        'error_msn'   => 'Error'
      );
      echo json_encode($Data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

    }

  }
?>
