278 lines
6.5 KiB
PHP
Executable File
278 lines
6.5 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 'saveDescuentos':
|
|
|
|
$ventaId = $_POST['ventaId'];
|
|
$tipoDesc = $_POST['tipoDesc'];
|
|
$valDesc = $_POST['valDesc'];
|
|
|
|
$prodDesc = $_SESSION['prodDesc'];
|
|
|
|
$total = 0;
|
|
foreach($prodDesc as $res){
|
|
|
|
$descVal = 0;
|
|
if($res['tipoDesc'] == 'Dinero')
|
|
$descVal = $res['valDesc'];
|
|
elseif($res['tipoDesc'] == 'Porcentaje'){
|
|
$descVal = $res['precioUnitario'] * ($res['valDesc']/100);
|
|
$descVal = number_format($descVal,2,'.','');
|
|
}
|
|
|
|
$total += $res['total'] - ($descVal * $res['cantidad']);
|
|
|
|
$venta->setVentaId($ventaId);
|
|
$venta->setProdItemId($res['prodItemId']);
|
|
$venta->setTipoDesc($res['tipoDesc']);
|
|
$venta->setTotal($res['valDesc']);
|
|
$venta->UpdateDescProd();
|
|
}
|
|
|
|
$descVal = 0;
|
|
if($tipoDesc == 'Dinero')
|
|
$descVal = $valDesc;
|
|
elseif($tipoDesc == 'Porcentaje')
|
|
$descVal = $total * ($valDesc/100);
|
|
|
|
$total -= $descVal;
|
|
|
|
//Obtenemos los Totales
|
|
|
|
$sucursal->setSucursalId($sucursalId);
|
|
$porcIva = $sucursal->GetIva();
|
|
$porcIva = $porcIva / 100;
|
|
|
|
$subtotal = $total / (1 + $porcIva);
|
|
$subtotal = number_format($subtotal,2,'.','');
|
|
|
|
$iva = $subtotal * $porcIva;
|
|
$iva = number_format($iva,2,'.','');
|
|
|
|
$venta->setVentaId($ventaId);
|
|
$venta->setTipoDesc($tipoDesc);
|
|
$venta->setValDesc($valDesc);
|
|
$venta->setSubtotal($subtotal);
|
|
$venta->setIva($iva);
|
|
$venta->setTotal($total);
|
|
|
|
$venta->UpdateDescVta();
|
|
|
|
$_SESSION['prodDesc'] = array();
|
|
|
|
echo 'ok[#]';
|
|
|
|
break;
|
|
|
|
case 'updatePrecios':
|
|
|
|
$ventaId = $_POST['ventaId'];
|
|
$tipoDesc = $_POST['tipoDesc'];
|
|
$valDesc = $_POST['valDesc'];
|
|
$k = $_POST['k'];
|
|
|
|
$resProds = $_SESSION['prodDesc'];
|
|
|
|
$productoId = $_SESSION['prodDesc'][$k]['productoId'];
|
|
|
|
$prodDesc = array();
|
|
foreach($resProds as $kP => $res){
|
|
|
|
if($res['productoId'] == $productoId){
|
|
|
|
$res['tipoDesc'] = $tipoDesc;
|
|
$res['valDesc'] = $valDesc;
|
|
|
|
}//if
|
|
|
|
$prodDesc[$kP] = $res;
|
|
|
|
}//foreach
|
|
|
|
/*
|
|
$venta->setVentaId($ventaId);
|
|
$info = $venta->Info();
|
|
|
|
$card = array();
|
|
|
|
$card = $_SESSION['prodDesc'][$k];
|
|
$total = $card['total'];
|
|
$precioUni = $card['precioUnitario'];
|
|
|
|
$descVal = 0;
|
|
if($tipoDesc == 'Dinero')
|
|
$descVal = $valDesc;
|
|
elseif($tipoDesc == 'Porcentaje')
|
|
$descVal = $total * ($valDesc/100);
|
|
|
|
$card['tipoDesc'] = $tipoDesc;
|
|
$card['valorDesc'] = $valDesc;
|
|
$card['valDesc'] = $descVal;
|
|
|
|
$_SESSION['prodDesc'][$k] = $card;
|
|
|
|
$total -= $descVal;
|
|
|
|
$prodDesc = $_SESSION['prodDesc'];
|
|
*/
|
|
|
|
$_SESSION['prodDesc'] = $prodDesc;
|
|
|
|
$total = 0;
|
|
$totalP = 0;
|
|
foreach($prodDesc as $res){
|
|
|
|
if($res['productoId'] == $productoId){
|
|
|
|
$descVal = 0;
|
|
if($res['tipoDesc'] == 'Dinero')
|
|
$descVal = $res['valDesc'];
|
|
elseif($res['tipoDesc'] == 'Porcentaje'){
|
|
$descVal = $res['precioUnitario'] * ($res['valDesc']/100);
|
|
$descVal = number_format($descVal,2,'.','');
|
|
}
|
|
|
|
$totalD = $res['cantidad'] * $descVal;
|
|
$total += $res['total'] - $totalD;
|
|
|
|
}//if
|
|
|
|
}//foreach
|
|
|
|
echo 'ok[#]';
|
|
echo number_format($total,2);
|
|
|
|
break;
|
|
|
|
|
|
case 'updateTotales':
|
|
|
|
$ventaId = $_POST['ventaId'];
|
|
$tipoDesc = $_POST['tipoDesc'];
|
|
$valDesc = $_POST['valDesc'];
|
|
|
|
$prodDesc = $_SESSION['prodDesc'];
|
|
|
|
$total = 0;
|
|
foreach($prodDesc as $res){
|
|
|
|
$descVal = 0;
|
|
if($res['tipoDesc'] == 'Dinero')
|
|
$descVal = $res['valDesc'];
|
|
elseif($res['tipoDesc'] == 'Porcentaje'){
|
|
$descVal = $res['precioUnitario'] * ($res['valDesc']/100);
|
|
$descVal = number_format($descVal,2,'.','');
|
|
}
|
|
|
|
$totalD = $res['cantidad'] * $descVal;
|
|
$total += $res['total'] - $totalD;
|
|
|
|
}
|
|
|
|
$descVal = 0;
|
|
if($tipoDesc == 'Dinero')
|
|
$descVal = $valDesc;
|
|
elseif($tipoDesc == 'Porcentaje')
|
|
$descVal = $total * ($valDesc/100);
|
|
|
|
$total -= $descVal;
|
|
|
|
//Obtenemos los Totales
|
|
|
|
$sucursal->setSucursalId($sucursalId);
|
|
$porcIva = $sucursal->GetIva();
|
|
$porcIva = $porcIva / 100;
|
|
|
|
$subtotal = $total / (1 + $porcIva);
|
|
$subtotal = number_format($subtotal,2,'.','');
|
|
|
|
$iva = $subtotal * $porcIva;
|
|
$iva = number_format($iva,2,'.','');
|
|
|
|
echo 'ok[#]';
|
|
echo number_format($subtotal,2);
|
|
echo '[#]';
|
|
echo number_format($iva,2);
|
|
echo '[#]';
|
|
echo number_format($total,2);
|
|
|
|
break;
|
|
|
|
case 'cancelarDescuentos':
|
|
|
|
$_SESSION['prodDesc'] = array();
|
|
|
|
echo 'ok[#]';
|
|
|
|
break;
|
|
|
|
case 'cancelVenta':
|
|
|
|
$ventaId = $_POST['ventaId'];
|
|
|
|
$venta->setVentaId($ventaId);
|
|
|
|
if(!$venta->CancelVenta()){
|
|
echo 'fail[#]';
|
|
exit;
|
|
}
|
|
|
|
//Devolvemos los productos a inventario
|
|
$venta->DevolverProductos();
|
|
|
|
//Enumeramos los Descuentos
|
|
$descuento->setSucursalId($sucursalId);
|
|
$ventas = $descuento->Enumerate();
|
|
|
|
$items = array();
|
|
foreach($ventas['items'] as $res){
|
|
|
|
$fecha = date('d-m-Y',strtotime($res['fecha']));
|
|
$hora = date('H:i:s',strtotime($res['fecha']));
|
|
$fecha = $util->FormatDateDMMMY($fecha);
|
|
$res['fecha'] = $fecha.' '.$hora;
|
|
|
|
$usuario->setUsuarioId($res['usuarioId']);
|
|
$res['usuario'] = $usuario->GetFullNameById();
|
|
|
|
$sucursal->setSucursalId($res['sucursalId']);
|
|
$res['sucursal'] = utf8_decode(urldecode($sucursal->GetNameById()));
|
|
|
|
if($res['status'] == 'DescAp')
|
|
$res['total'] = $res['totalDesc'];
|
|
|
|
$items[] = $res;
|
|
}
|
|
$ventas['items'] = $items;
|
|
|
|
$util->setError(20111,'complete');
|
|
$util->PrintErrors();
|
|
|
|
echo 'ok[#]';
|
|
$smarty->display(DOC_ROOT.'/templates/boxes/status.tpl');
|
|
echo '[#]';
|
|
|
|
$smarty->assign('ventas', $ventas);
|
|
$smarty->assign('DOC_ROOT', DOC_ROOT);
|
|
$smarty->display(DOC_ROOT.'/templates/lists/descuentos.tpl');
|
|
|
|
break;
|
|
|
|
}//switch
|
|
|
|
?>
|