<?php

  $debugin              = $decoded['debug'];
  $compra               = $decoded['compra'];
  $almacen              = $decoded['almacen'];
  $fecha_alta           = date('Y-m-d H:i:s');
  $fecha                = $decoded['fecha'];
  $productos            = $decoded['productos'];

  //Valida Existencia de almacen
  $Query = "
    SELECT
      bo.Id
    FROM KB_Almacenes bo
    WHERE
      bo.Id = '$almacen'
  ";
  $Result = mysqli_query($mysqli, $Query);
  $Bod = mysqli_fetch_assoc($Result);
  if( $Bod[Id] ){

    //Upadate Inventario
    if( $productos ){

      //Insert Entrada
      $Query = "
        INSERT INTO KB_InventarioActualizar
        (
          Fk_Almacen,
          FechaAlta, Fecha,
          Fk_Usuario
        )
        VALUES (
          '$Bod[Id]',
          '$fecha_alta', '$fecha',
          '0'
        )
      ";
      $Result = mysqli_query($mysqli, $Query);
      $IdEnt = mysqli_insert_id($mysqli);

      //If
      if( $IdEnt ){

        //foreach
        foreach( $productos AS $pro ){

          $clave               = $pro['clave'];
          $cantidad            = $pro['cantidad'];

          //Valida Clave de Producto
          $Query = "
            SELECT
              pro.Id, pro.Clave
            FROM KB_Productos pro
            WHERE
              pro.Clave = '$clave'
          ";
          $Result = mysqli_query($mysqli, $Query);
          $Pro = mysqli_fetch_assoc($Result);
          if( $Pro[Id] ){

            //Inserta Entrada de Producto
            $Query = "
              INSERT INTO KB_ProductosInventarioActualizar
              (
                Fk_InventarioActualizar,
                Fk_Producto, ClaveProducto,
                Cantidad,
                Fk_Almacen,
                FechaAlta, Fecha,
                Fk_Usuario
              )
              VALUES (
                '$IdEnt',
                '$Pro[Id]', '$Pro[Clave]',
                '$cantidad',
                '$Bod[Id]',
                '$fecha_alta', '$fecha',
                '0'
              )
            ";
            $Result = mysqli_query($mysqli, $Query);
            $IdEntPro = mysqli_insert_id($mysqli);
            //End Inserta Entrda de Producto

            //Check Producto en Inventario
            $Query = "
              SELECT
                pro.Id
              FROM KB_ProductosInventario pro
              WHERE
                pro.Fk_Producto = '$Pro[Id]'
                AND pro.Fk_Almacen = '$Bod[Id]'
            ";
            $Result = mysqli_query($mysqli, $Query);
            $ProInv = mysqli_fetch_assoc($Result);
            if( $ProInv[Id] ){

              //Actualiza Existencia en Inventario
                $Query = "
                  UPDATE KB_ProductosInventario
                  SET
                    Existencia = Existencia + $cantidad
                  WHERE Id = '$ProInv[Id]'
                ";
                $Result = mysqli_query($mysqli, $Query);
              //End Actualiza Existencia en Inventario

            }else{

              //Inserta Existencia en Inventario
                $Query = "
                  INSERT INTO KB_ProductosInventario
                  (
                    Fk_Producto, ClaveProducto,
                    Fk_Almacen, Existencia
                  )
                  VALUES (
                    '$Pro[Id] ', '$Pro[Clave] ',
                    '$Bod[Id]', '$cantidad'
                  )
                ";
                $Result = mysqli_query($mysqli, $Query);
              //End Inserta Existencia en Inventario

            }



          }
          //End Valida Clave de Producto

        }
        //End foreach

      }
      //End If

      $Data = array(
        'action'    => 'ok',
        'msn'       => "Productos cargads con exito."
      );
      echo json_encode($Data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

    }
    //Upadate Inventario

  }
  //Valida Existencia de almacen
  else{

    //Error
    $Query = "
      SELECT
        err.Id, err.error, err.msn
      FROM KB_Api_Errores err
      WHERE err.error = 'bod-1'
    ";
    $Result = mysqli_query($mysqli, $Query);
    $Error = mysqli_fetch_assoc($Result);

    $Data = array(
      'action'      => 'error',
      'error'       => $Error[error],
      'error_msn'   => $Error[msn]
    );
    echo json_encode($Data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

  }
?>
