261 lines
8.3 KiB
PHP
Executable File
261 lines
8.3 KiB
PHP
Executable File
<?php
|
|
|
|
include_once('../init.php');
|
|
include_once('../config.php');
|
|
include_once(DOC_ROOT.'/libraries.php');
|
|
|
|
$Usr = $user->Info();
|
|
|
|
switch($_POST["type"]){
|
|
|
|
case 'buscarFactura':
|
|
|
|
$bonificacion->setFolioProv($_POST['folioProv']);
|
|
$infP = $bonificacion->GetPedidoByFolio();
|
|
|
|
if(!$infP){
|
|
$util->setError(20144,'complete','');
|
|
$util->PrintErrors();
|
|
echo 'fail[#]';
|
|
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
|
|
exit;
|
|
}
|
|
|
|
$proveedor->setProveedorId($infP['proveedorId']);
|
|
$nomProv = $proveedor->GetNameById();
|
|
|
|
$fecha = date('d-m-Y H:i:s',strtotime($infP['fecha']));
|
|
$fechaRecibido = date('d-m-Y H:i:s',strtotime($infP['fechaOrdenCompIng']));
|
|
|
|
$fechaRec = strtotime($infP['fechaOrdenCompIng']);
|
|
$fechaHoy = time();
|
|
|
|
$timeDias = $fechaHoy - $fechaRec;
|
|
|
|
$diasTrans = intval($timeDias / 86400);
|
|
|
|
if($infP['status'] == 'OrdenCompIng')
|
|
$status = 'Mercancía Recibida en CEDIS';
|
|
elseif($infP['status'] == 'EnvSuc')
|
|
$status = 'Envíado a Tiendas';
|
|
|
|
//Obtenemos los Productos
|
|
|
|
$bonificacion->setPedidoId($infP['pedidoId']);
|
|
$resProductos = $bonificacion->EnumProdsByPedido();
|
|
|
|
$productos = array();
|
|
foreach($resProductos as $res){
|
|
|
|
$productoId = $res['productoId'];
|
|
|
|
$producto->setProductoId($productoId);
|
|
$infProd = $producto->Info();
|
|
|
|
$res['codigoBarra'] = $infProd['codigoBarra'];
|
|
|
|
$res['precio'] = $infProd['precioVentaIva'];
|
|
$res['totalCosto'] = $res['costo'] * $res['cantPrendas'];
|
|
|
|
$bonificacion->setProductoId($productoId);
|
|
$bonificacion->setPedidoId($res['pedidoId']);
|
|
$res['cantVenta'] = $bonificacion->CantVtasByProd();
|
|
|
|
$res['cantCompra'] = $res['cantPrendas'];
|
|
|
|
$res['porc'] = round(($res['cantVenta'] / $res['cantCompra']) * 100);
|
|
|
|
$res['totalVenta'] = $res['cantVenta'] * $infProd['precioVentaIva'];
|
|
|
|
if($res['totalVenta'])
|
|
$res['utilidad'] = round((($res['totalVenta'] - $res['totalCosto']) / $res['totalVenta']) * 100);
|
|
else
|
|
$res['utilidad'] = 0;
|
|
|
|
$res['precioVta'] = $infProd['precioVenta'];
|
|
|
|
if($res['porc'] < 35){
|
|
|
|
$res['devolucion'] = 'DEV';
|
|
$res['cantDev'] = $res['cantCompra'] - $res['cantVenta'];
|
|
$res['totalDev'] = $res['cantDev'] * $res['costo'];
|
|
|
|
}else{
|
|
|
|
$res['devolucion'] = '---';
|
|
$res['cantDev'] = 0;
|
|
$res['totalDev'] = 0;
|
|
$res['porcBonif'] = 0;
|
|
|
|
$bonificacion->setPorcentaje($res['porc']);
|
|
$res['porcBonif'] = $bonificacion->GetPorcBonif();
|
|
|
|
}
|
|
|
|
$res['totalBonif'] = ($res['cantCompra'] - $res['cantVenta']) * ($res['porcBonif'] / 100) * $res['costo'];
|
|
$res['totalBonif'] = number_format($res['totalBonif'],2,'.','');
|
|
|
|
$productos[] = $res;
|
|
|
|
}//foreach
|
|
|
|
echo 'ok[#]';
|
|
echo $infP['pedidoId'];
|
|
echo '[#]';
|
|
echo $nomProv;
|
|
echo '[#]';
|
|
echo '<a href="'.WEB_ROOT.'/pedidos-detalles/id/'.$infP['pedidoId'].'" target="_blank">'.$infP['noPedido'].'</a>';
|
|
echo '[#]';
|
|
echo $status;
|
|
echo '[#]';
|
|
echo $fecha;
|
|
echo '[#]';
|
|
echo $fechaRecibido;
|
|
echo '[#]';
|
|
echo $diasTrans;
|
|
|
|
echo '[#]';
|
|
$smarty->assign('productos',$productos);
|
|
$smarty->display(DOC_ROOT.'/templates/lists/evaluacion-productos.tpl');
|
|
|
|
break;
|
|
|
|
case 'aplicarEval';
|
|
|
|
$pedidoId = $_POST['pedidoId'];
|
|
$productoId = $_POST['productoId'];
|
|
|
|
//Obtenemos los Productos
|
|
|
|
$bonificacion->setPedidoId($pedidoId);
|
|
$bonificacion->setProductoId($productoId);
|
|
$resProductos = $bonificacion->EnumProdsByPedido();
|
|
|
|
$productos = array();
|
|
foreach($resProductos as $res){
|
|
|
|
$productoId = $res['productoId'];
|
|
|
|
$producto->setProductoId($productoId);
|
|
$infProd = $producto->Info();
|
|
|
|
$res['codigoBarra'] = $infProd['codigoBarra'];
|
|
|
|
$res['precio'] = $infProd['precioVentaIva'];
|
|
$res['totalCosto'] = $res['costo'] * $res['cantPrendas'];
|
|
|
|
$bonificacion->setProductoId($productoId);
|
|
$bonificacion->setPedidoId($res['pedidoId']);
|
|
$res['cantVenta'] = $bonificacion->CantVtasByProd();
|
|
|
|
$res['cantCompra'] = $res['cantPrendas'];
|
|
|
|
$res['porc'] = round(($res['cantVenta'] / $res['cantCompra']) * 100);
|
|
|
|
$res['totalVenta'] = $res['cantVenta'] * $infProd['precioVentaIva'];
|
|
|
|
if($res['totalVenta'])
|
|
$res['utilidad'] = round((($res['totalVenta'] - $res['totalCosto']) / $res['totalVenta']) * 100);
|
|
else
|
|
$res['utilidad'] = 0;
|
|
|
|
$res['precioVta'] = $infProd['precioVenta'];
|
|
|
|
if($res['porc'] < 35){
|
|
|
|
$res['devolucion'] = 'DEV';
|
|
$res['cantDev'] = $res['cantCompra'] - $res['cantVenta'];
|
|
$res['totalDev'] = $res['cantDev'] * $res['costo'];
|
|
$tipo = 'Dev';
|
|
|
|
}else{
|
|
|
|
$res['devolucion'] = '---';
|
|
$res['cantDev'] = 0;
|
|
$res['totalDev'] = 0;
|
|
$res['porcBonif'] = 0;
|
|
$tipo = 'Bonif';
|
|
|
|
$bonificacion->setPorcentaje($res['porc']);
|
|
$res['porcBonif'] = $bonificacion->GetPorcBonif();
|
|
|
|
}
|
|
|
|
$res['totalBonif'] = ($res['cantCompra'] - $res['cantVenta']) * ($res['porcBonif'] / 100) * $res['costo'];
|
|
$res['totalBonif'] = number_format($res['totalBonif'],2,'.','');
|
|
|
|
}//foreach
|
|
|
|
$producto->setProductoId($productoId);
|
|
$info = $producto->Info();
|
|
|
|
$sql = 'INSERT INTO bonifDev (pedidoId, productoId, fecha, porcBonif, totalBonif, costo, precioVentaIva,
|
|
usuarioId, tipo, cantDev)
|
|
VALUES ("'.$pedidoId.'", "'.$productoId.'", "'.date('Y-m-d H:i:s').'", "'.$res['porcBonif'].'",
|
|
"'.$res['totalBonif'].'","'.$info['costo'].'","'.$info['precioVentaIva'].'",
|
|
"'.$Usr['usuarioId'].'", "'.$tipo.'", "'.$res['cantDev'].'")';
|
|
$util->DBSelect($_SESSION["empresaId"])->setQuery($sql);
|
|
$util->DBSelect($_SESSION["empresaId"])->InsertData();
|
|
|
|
$sql = 'UPDATE pedidoProducto SET evaluado = "1"
|
|
WHERE pedidoId = "'.$pedidoId.'"
|
|
AND productoId = "'.$productoId.'"';
|
|
$util->DBSelect($_SESSION["empresaId"])->setQuery($sql);
|
|
$util->DBSelect($_SESSION["empresaId"])->UpdateData();
|
|
|
|
//Agegamos la bonificación al pedido
|
|
|
|
$totalDesc = $res['totalDesc'] - $res['totalBonif'];
|
|
|
|
$sql = 'UPDATE pedido SET totalBonif = totalBonif + "'.$res['totalBonif'].'", totalDesc = "'.$totalDesc.'"
|
|
WHERE pedidoId = "'.$pedidoId.'"';
|
|
$util->DBSelect($_SESSION["empresaId"])->setQuery($sql);
|
|
$util->DBSelect($_SESSION["empresaId"])->UpdateData();
|
|
|
|
if($tipo == 'Bonif'){
|
|
|
|
//Obtenemos el nuevo precio de venta.
|
|
|
|
$nvoPrecioVtaIva = $info['precioVentaIva'] - ($info['precioVentaIva'] * ($res['porcBonif'] / 100));
|
|
$nvoPrecioVta = $info['precioVenta'] - ($info['precioVenta'] * ($res['porcBonif'] / 100));
|
|
$nuevoCosto = $info['costo']-($info['costo'] * ($res['porcBonif'] / 100));
|
|
|
|
//Actualizamos Inventario
|
|
$sql = "UPDATE inventario SET rebajado = '1', precioVenta = ".$nvoPrecioVtaIva."
|
|
WHERE pedidoId = ".$pedidoId."
|
|
AND productoId = ".$productoId."
|
|
AND `status` LIKE 'Disponible'";
|
|
$util->DBSelect($_SESSION["empresaId"])->setQuery($sql);
|
|
$util->DBSelect($_SESSION["empresaId"])->UpdateData();
|
|
|
|
//Actualizamos el Costo del Producto.
|
|
$sql = "UPDATE producto SET costo = '".$nuevoCosto."',
|
|
precioVenta = '".$nvoPrecioVta."',
|
|
precioVentaIva = '".$nvoPrecioVtaIva."'
|
|
WHERE productoId = ".$productoId;
|
|
$util->DBSelect($_SESSION["empresaId"])->setQuery($sql);
|
|
$util->DBSelect($_SESSION["empresaId"])->UpdateData();
|
|
|
|
}else{
|
|
|
|
//Bloqueamos los productos en Inventario
|
|
$sql = "UPDATE inventario SET status = 'Devolucion'
|
|
WHERE pedidoId = ".$pedidoId."
|
|
AND productoId = ".$productoId."
|
|
AND status = 'Disponible'";
|
|
$util->DBSelect($_SESSION['empresaId'])->setQuery($sql);
|
|
$util->DBSelect($_SESSION['empresaId'])->UpdateData();
|
|
|
|
}//if
|
|
|
|
$util->setError(20143,'complete','');
|
|
$util->PrintErrors();
|
|
|
|
echo 'ok[#]';
|
|
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
|
|
|
|
break;
|
|
|
|
}//switch
|
|
|
|
?>
|