Files
ventas_php/ajax/inventario-ajustar.php

281 lines
7.9 KiB
PHP
Executable File

<?php
include_once('../init.php');
include_once('../config.php');
include_once(DOC_ROOT.'/libraries.php');
session_start();
$sucursalId = $_SESSION['idSuc'];
$Usr = $user->Info();
$smarty->assign('Usr', $Usr);
if(isset($_POST['action']))
$_POST['type'] = $_POST['action'];
switch($_POST["type"]){
case 'ajustarInventario':
$sucursalId = $_POST['sucursalId'];
$codigoBarra = trim($_POST['codigoBarra']);
$cantAjustar = trim($_POST['cantAjustar']);
if($sucursalId == ''){
$util->setError(30015,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
if($codigoBarra == ''){
$util->setError(20106,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
$producto->setCodigoBarra($codigoBarra);
$productoId = $producto->GetProductIdByCodigo();
if(!$productoId){
$util->setError(20107,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
if($cantAjustar == ''){
$util->setError(20108,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
$inventario->setProductoId($productoId);
$inventario->setSucursalId($sucursalId);
$disponible = $inventario->GetDispByProd();
if($disponible > $cantAjustar){
$cantidad = $disponible - $cantAjustar;
$modo = 'Eliminar';
}else{
$cantidad = $cantAjustar - $disponible;
$modo = 'Agregar';
}
$db = $util->DBSelect(15);
if($modo == 'Eliminar'){
$inventario->setSucursalId($sucursalId);
$inventario->setProductoId($productoId);
$inventario->setCantidad($cantidad);
$inventario->AjustarProductos();
$sql = 'INSERT INTO ajustes (sucursalId, productoId, disponible, cantidad, fecha, pedidoId, usuarioId,
tipo)
VALUES ("'.$sucursalId.'", "'.$productoId.'", "'.$disponible.'", "'.$cantAjustar.'",
"'.date('Y-m-d H:i:s').'", "'.$pedidoId.'", "'.$Usr['usuarioId'].'", "'.$modo.'")';
$db->setQuery($sql);
$db->InsertData();
echo 'ok[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
$sql = 'SELECT proveedorId FROM producto WHERE productoId = "'.$productoId.'"';
$db->setQuery($sql);
$proveedorId = $db->GetSingle();
//Obtenemos el Sig. No de Pedido
$sql = 'SELECT MAX(noPedido) FROM pedido';
$db->setQuery($sql);
$noPedido = $db->GetSingle();
$noPedido++;
//CARGAMOS LOS PRODUCTOS
$sql = 'INSERT INTO pedido
(
proveedorId,
folioProv,
noPedido,
fecha,
fechaEntrega,
metodoCompra,
resurtido,
usuarioId,
fechaAprobacion,
userIdAprobacion,
fechaDistribucion,
userIdDistribucion,
fechaAutorizacion,
userIdAutorizacion,
fechaOrdenCompEnv,
userIdOrdenCompEnv,
fechaOrdenCompIng,
userIdOrdenCompIng,
ajuste,
status
)VALUES(
"'.$proveedorId.'",
"FOLIO'.$noPedido.'",
"'.$noPedido.'",
"'.date('Y-m-d H:i:s').'",
"'.date('Y-m-d').'",
"conIva",
"0",
"2",
"'.date('Y-m-d H:i:s').'",
"3",
"'.date('Y-m-d H:i:s').'",
"6",
"'.date('Y-m-d H:i:s').'",
"3",
"'.date('Y-m-d H:i:s').'",
"2",
"'.date('Y-m-d H:i:s').'",
"4",
"1",
"EnvSuc"
)';
$db->setQuery($sql);
$pedidoId = $db->InsertData();
$sql = 'SELECT * FROM producto
WHERE productoId = '.$productoId;
$db->setQuery($sql);
$infP = $db->GetRow();
$sql = 'INSERT INTO pedidoColor (pedidoId, productoId, colorId, cantidad)
VALUES ("'.$pedidoId.'","'.$productoId.'", 2, '.$cantidad.')';
$db->setQuery($sql);
$db->InsertData();
$sql = 'INSERT INTO pedidoTalla (pedidoId, productoId, tallaId, cantidad)
VALUES ("'.$pedidoId.'","'.$productoId.'", 1, 1)';
$db->setQuery($sql);
$db->InsertData();
$sql = 'INSERT INTO pedidoDistribucion (pedidoId, productoId, sucursalId, cantidad, status)
VALUES ("'.$pedidoId.'","'.$productoId.'", "'.$sucursalId.'", "'.$cantidad.'", "Enviado")';
$db->setQuery($sql);
$db->InsertData();
$sql = 'INSERT INTO pedidoProducto (pedidoId, productoId, prodCatId, prodSubcatId, totalLote,
cantLotes, cantPrendas, prendasComp, costo, precioVenta, status)
VALUES ("'.$pedidoId.'","'.$productoId.'", "'.$infP['prodCatId'].'", "'.$infP['prodSubcatId'].'", "'.$cantidad.'",
1, "'.$cantidad.'","1","'.$infP['costo'].'", "'.$infP['precioVentaIva'].'" ,"Aprobado")';
$db->setQuery($sql);
$db->InsertData();
//Envios
$sql = 'INSERT INTO envio (sucursalId, fecha, usuarioId, fechaRecibido, userIdRecibido, tipo, status)
VALUES ("'.$sucursalId.'","'.date('Y-m-d H:i:s').'", 4, "'.date('Y-m-d H:i:s').'", 5, "CT", "Recibido")';
$db->setQuery($sql);
$envioId = $db->InsertData();
$sql = 'INSERT INTO envioPedido (envioId, pedidoId, noCajas)
VALUES ("'.$envioId.'", "'.$pedidoId.'", 1)';
$db->setQuery($sql);
$db->InsertData();
$sql = 'INSERT INTO envioRecibir (envioId, pedidoId, productoId, noPrendas, completo)
VALUES ("'.$envioId.'", "'.$pedidoId.'", "'.$productoId.'", "'.$cantidad.'", "1")';
$db->setQuery($sql);
$db->InsertData();
$sql = 'SELECT * FROM producto
WHERE productoId = '.$productoId;
$db->setQuery($sql);
$infP = $db->GetRow();
for($k=0; $k<$cantidad; $k++){
$sql = 'INSERT INTO inventario (envioId, pedidoId, sucursalId, productoId, prodItemId, precioVenta, cantidad, status)
VALUES ("'.$envioId.'", "'.$pedidoId.'", "'.$sucursalId.'", "'.$productoId.'", "'.$productoId.'", "'.$infP['precioVentaIva'].'", "1", "Disponible")';
$db->setQuery($sql);
$db->InsertData();
}
//Guardamos los Datos
$sql = 'INSERT INTO ajustes (sucursalId, productoId, disponible, cantidad, fecha, pedidoId, usuarioId,
tipo)
VALUES ("'.$sucursalId.'", "'.$productoId.'", "'.$disponible.'", "'.$cantAjustar.'",
"'.date('Y-m-d H:i:s').'", "'.$pedidoId.'", "'.$Usr['usuarioId'].'", "'.$modo.'")';
$db->setQuery($sql);
$db->InsertData();
$util->setError(20109,'complete');
$util->PrintErrors();
echo 'ok[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
break;
case 'buscarProducto':
$sucursalId = $_POST['sucursalId'];
$codigoBarra = trim($_POST['codigoBarra']);
if($sucursalId == ''){
$util->setError(30015,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
if($codigoBarra == ''){
$util->setError(20106,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
$producto->setCodigoBarra($codigoBarra);
$productoId = $producto->GetProductIdByCodigo();
if(!$productoId){
$util->setError(20107,'error');
$util->PrintErrors();
echo 'fail[#]';
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
exit;
}
$producto->setProductoId($productoId);
$nombre = $producto->GetModeloById();
$inventario->setProductoId($productoId);
$inventario->setSucursalId($sucursalId);
$disponible = $inventario->GetDispByProd();
echo 'ok[#]';
echo '&nbsp;'.utf8_encode($nombre);
echo '[#]';
echo '&nbsp;'.$disponible;
break;
}//switch
?>