setProveedorId($_POST['id']); $infP = $proveedor->Info(); $infP = $util->EncodeRow($infP); $smarty->assign('post', $infP); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/boxes/editar-proveedor-ctapagar-popup.tpl'); break; case 'saveSaldoCtaPagar': $proveedor->setProveedorId($_POST['proveedorId']); $proveedor->setSaldo($_POST['saldo']); if(!$proveedor->UpdateSaldoCtaPagar()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); } else { echo 'ok[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); echo '[#]'; $proveedores = $proveedor->Enumerate(); $proveedores['items'] = $util->EncodeResult($proveedores['items']); $smarty->assign('proveedores', $proveedores); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/cuentas-pagar-saldos.tpl'); } break; //PAGOS case 'addPago': $proveedorId = $_POST['proveedorId']; $proveedor->setProveedorId($proveedorId); $infP = $proveedor->Info(); //Obtenemos los abonos realizados $cuentaPagar->setProveedorId($proveedorId); $abonos = $cuentaPagar->GetTotalPagosProv(); $info['saldo'] = $infP['saldoCtaPagar'] - $abonos; $metodosPago = $metodoPago->EnumerateAll(); $metodosPago = $util->EncodeResult($metodosPago); $info['proveedorId'] = $proveedorId; $smarty->assign('info', $info); $smarty->assign('metodosPago', $metodosPago); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/boxes/agregar-pago-prov-popup.tpl'); break; case 'saveAddPago': $proveedorId = $_POST['proveedorId']; $metodoPagoId = $_POST['metodoPagoId']; $cantidad = $_POST['cantidad']; $noCheque = $_POST['noCheque']; $fecha = ($_POST['fecha'] != '') ? date('Y-m-d',strtotime($_POST['fecha'])) : ''; $proveedor->setProveedorId($proveedorId); $infP = $proveedor->Info(); $cuentaPagar->setProveedorId($proveedorId); $cuentaPagar->setMetodoPagoId($metodoPagoId); $cuentaPagar->setCantidad($cantidad); $cuentaPagar->setFecha($fecha); $cuentaPagar->setNoCheque($noCheque); $cuentaPagar->setNoFactura($_POST['noFactura']); //Obtenemos los abonos realizados $abonos = $cuentaPagar->GetTotalPagosProv(); $saldo = $infP['saldoCtaPagar'] - $abonos; $abonos = number_format($abonos,2,'.',''); $saldo = number_format($saldo,2,'.',''); if($cantidad > $saldo){ $util->setError(20075, 'error', '', ''); $util->PrintErrors(); echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); exit; } if(!$cuentaPagar->SavePagoProv()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); } else { //Checamos si ya esta pagado totalmente $abonos = $cuentaPagar->GetTotalPagosProv(); $saldo = $infP['saldoCtaPagar'] - $abonos; $pagado = ($saldo == 0) ? 1:0; //Actualizamos el status a Pagado if($pagado){ $proveedor->setProveedorId($proveedorId); $proveedor->setPagado(1); $proveedor->UpdatePagado(); } echo 'ok[#]'; echo $proveedorId; echo '[#]'; echo '$'.number_format($abonos,2); echo '[#]'; echo '$'.number_format($saldo,2); echo '[#]'; echo $pagado; echo '[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); echo '[#]'; $cuentaPagar->setProveedorId($proveedorId); $resPagos = $cuentaPagar->EnumPagosProv(); $pagos = array(); foreach($resPagos as $val){ $metodoPago->setMetodoPagoId($val['metodoPagoId']); $val['metodoPago'] = utf8_encode($metodoPago->GetNameById()); $val['fecha'] = date('d-m-Y',strtotime($val['fecha'])); $pagos[] = $val; } $item['pagos'] = $pagos; $smarty->assign('item', $item); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/cuentas-pagos-prov.tpl'); } break; case 'deletePago': $provPagoId = $_POST['id']; $cuentaPagar->setProvPagoId($provPagoId); $infP = $cuentaPagar->InfoPagoProv(); $proveedorId = $infP['proveedorId']; if(!$cuentaPagar->DeletePagoProv()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); } else { $proveedor->setProveedorId($proveedorId); $info = $proveedor->Info(); //Quitamos el status de Pagado $proveedor->setPagado(0); $proveedor->UpdatePagado(); //Obtenemos los abonos realizados $cuentaPagar->setProveedorId($proveedorId); $abonos = $cuentaPagar->GetTotalPagosProv(); $saldo = $info['saldoCtaPagar'] - $abonos; echo 'ok[#]'; echo $proveedorId; echo '[#]'; echo '$'.number_format($abonos,2); echo '[#]'; echo '$'.number_format($saldo,2); echo '[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); echo '[#]'; $cuentaPagar->setProveedorId($proveedorId); $resPagos = $cuentaPagar->EnumPagosProv(); $pagos = array(); foreach($resPagos as $val){ $metodoPago->setMetodoPagoId($val['metodoPagoId']); $val['metodoPago'] = utf8_encode($metodoPago->GetNameById()); $val['fecha'] = date('d-m-Y',strtotime($val['fecha'])); $pagos[] = $val; } $item['pagos'] = $pagos; $smarty->assign('item', $item); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/cuentas-pagos-prov.tpl'); } break; //OTHERS case 'search': $proveedor->setProveedorId($_POST['proveedorId2']); $result = $proveedor->SearchSaldos($_POST['saldoIni2']); $resProv = array(); if(count($result)) $resProv = $util->EncodeResult($result); $total = 0; $totalAbonos = 0; $totalSaldoActual = 0; $items = array(); foreach($resProv as $res){ //Obtenemos los abonos realizados $cuentaPagar->setProveedorId($res['proveedorId']); $res['abonos'] = $cuentaPagar->GetTotalPagosProv(); $res['saldoActual'] = $res['saldoCtaPagar'] - $res['abonos']; $cuentaPagar->setProveedorId($res['proveedorId']); $resPagos = $cuentaPagar->EnumPagosProv(); $pagos = array(); foreach($resPagos as $val){ $metodoPago->setMetodoPagoId($val['metodoPagoId']); $val['metodoPago'] = $metodoPago->GetNameById(); $val['fecha'] = date('d-m-Y',strtotime($val['fecha'])); $pagos[] = $val; } $res['pagos'] = $pagos; $total += $res['saldoCtaPagar']; $totalAbonos += $res['abonos']; $totalSaldoActual += $res['saldoActual']; $items[] = $res; } $proveedores['items'] = $items; $smarty->assign('tipo', 'search'); $smarty->assign('total', $total); $smarty->assign('totalAbonos', $totalAbonos); $smarty->assign('totalSaldoActual', $totalSaldoActual); $smarty->assign('proveedores', $proveedores); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/cuentas-pagar-saldos.tpl'); break; } ?>