Files
ventas_php/classes/cuentaPagar.class.php

459 lines
11 KiB
PHP
Executable File

<?php
class CuentaPagar extends Main
{
private $pedidoId;
private $pedidoPagoId;
private $pedidoNotaId;
private $provPagoId;
private $metodoPagoId;
private $cuentaBancariaId;
private $proveedorId;
private $cantidad;
private $fecha;
private $noCheque;
private $noFactura;
private $noNota;
private $status;
public function setPedidoId($value)
{
$this->Util()->ValidateInteger($value);
$this->pedidoId = $value;
}
public function setPedidoPagoId($value)
{
$this->Util()->ValidateInteger($value);
$this->pedidoPagoId = $value;
}
public function setPedidoNotaId($value)
{
$this->Util()->ValidateInteger($value);
$this->pedidoNotaId = $value;
}
public function setProvPagoId($value)
{
$this->Util()->ValidateInteger($value);
$this->provPagoId = $value;
}
public function setMetodoPagoId($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 1, 'M&eacute;todo de Pago');
$this->Util()->ValidateInteger($value);
$this->metodoPagoId = $value;
}
public function setCuentaBancariaId($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 1, 'Cuenta Bancaria');
$this->Util()->ValidateInteger($value);
$this->cuentaBancariaId = $value;
}
public function setProveedorId($value)
{
$this->Util()->ValidateInteger($value);
$this->proveedorId = $value;
}
public function setCantidad($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 1, 'Cantidad');
$this->cantidad = $value;
}
public function setFecha($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 1, 'Fecha');
$this->fecha = $value;
}
public function setNoCheque($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 0, 'No. de Cheque');
$this->Util()->ValidateInteger($value);
$this->noCheque = $value;
}
public function setNoFactura($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 1, 'No. de Factura');
$this->noFactura = $value;
}
public function setNoNota($value)
{
$this->Util()->ValidateString($value, $max_chars=50, $minChars = 1, 'No. Nota de Cr&eacute;dito');
$this->noNota = $value;
}
public function setStatus($value)
{
$this->status = $value;
}
public function InfoPago(){
$sql = 'SELECT * FROM pedidoPago
WHERE pedidoPagoId = "'.$this->pedidoPagoId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$info = $this->Util()->DBSelect($_SESSION["empresaId"])->GetRow();
return $info;
}
public function InfoPagoProv(){
$sql = 'SELECT * FROM proveedorPago
WHERE provPagoId = "'.$this->provPagoId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$info = $this->Util()->DBSelect($_SESSION["empresaId"])->GetRow();
return $info;
}
function Enumerate()
{
$sql = "SELECT COUNT(*) FROM pedido
WHERE (status = 'OrdenCompIng'
OR status = 'EnvSuc')
AND ajuste = '0'";
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION["empresaId"])->GetSingle();
$pages = $this->Util->HandleMultipages($this->page, $total ,WEB_ROOT."/cuentas-pagar");
$sqlAdd = "LIMIT ".$pages["start"].", ".$pages["items_per_page"];
$sql = "SELECT * FROM pedido
WHERE (status = 'OrdenCompIng'
OR status = 'EnvSuc')
AND ajuste = '0'
ORDER BY fecha ASC ".$sqlAdd;
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$result = $this->Util()->DBSelect($_SESSION["empresaId"])->GetResult();
$data["items"] = $result;
$data["pages"] = $pages;
return $data;
}
function EnumPagos(){
$sql = 'SELECT * FROM pedidoPago
WHERE pedidoId = "'.$this->pedidoId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$pagos = $this->Util()->DBSelect($_SESSION["empresaId"])->GetResult();
return $pagos;
}
function EnumPagosProv(){
$sql = 'SELECT * FROM proveedorPago
WHERE proveedorId = "'.$this->proveedorId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$pagos = $this->Util()->DBSelect($_SESSION["empresaId"])->GetResult();
return $pagos;
}
function GetTotalPagos(){
$sql = 'SELECT SUM(cantidad) FROM pedidoPago
WHERE pedidoId = "'.$this->pedidoId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION["empresaId"])->GetSingle();
return $total;
}
function GetTotalPagosProv(){
$sql = 'SELECT SUM(cantidad) FROM proveedorPago
WHERE proveedorId = "'.$this->proveedorId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION["empresaId"])->GetSingle();
return $total;
}
function GetTotalPagosByProveedor(){
$sql = 'SELECT SUM(cantidad) FROM pedidoPago
WHERE proveedorId = "'.$this->proveedorId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION["empresaId"])->GetSingle();
return $total;
}
function GetTotalByProveedor(){
$sql = 'SELECT SUM(total) FROM pedido
WHERE (status = "OrdenCompIng"
OR status = "EnvSuc")
AND ajuste = "0"
AND proveedorId = "'.$this->proveedorId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION["empresaId"])->GetSingle();
return $total;
}
function GetTotalBonifByProv()
{
$sql = 'SELECT SUM(totalBonificacion)
FROM pedidoBonifDevolucion AS b, pedido AS p
WHERE p.pedidoId = b.pedidoId
AND (p.status = "OrdenCompIng"
OR p.status = "EnvSuc")
AND p.ajuste = "0"
AND p.proveedorId = '.$this->proveedorId;
$this->Util()->DBSelect($_SESSION['empresaId'])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION['empresaId'])->GetSingle();
return $total;
}
function GetTotalDevByProv()
{
$sql = 'SELECT SUM(totalDevolucion)
FROM pedidoBonifDevolucion AS d, pedido AS p
WHERE p.pedidoId = d.pedidoId
AND (p.status = "OrdenCompIng"
OR p.status = "EnvSuc")
AND p.ajuste = "0"
AND p.proveedorId = '.$this->proveedorId;
$this->Util()->DBSelect($_SESSION['empresaId'])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION['empresaId'])->GetSingle();
return $total;
}
function SavePago()
{
if($this->Util()->PrintErrors()){ return false; }
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery("
INSERT INTO `pedidoPago` (
pedidoId,
metodoPagoId,
cuentaBancariaId,
proveedorId,
cantidad,
fecha,
noCheque,
noFactura
)
VALUES (
'".$this->pedidoId."',
'".$this->metodoPagoId."',
'".$this->cuentaBancariaId."',
'".$this->proveedorId."',
'".$this->cantidad."',
'".$this->fecha."',
'".$this->noCheque."',
'".$this->noFactura."'
)"
);
$this->Util()->DBSelect($_SESSION["empresaId"])->InsertData();
$this->Util()->setError(30057, "complete");
$this->Util()->PrintErrors();
return true;
}
function DeletePago(){
$sql = "DELETE FROM
pedidoPago
WHERE
pedidoPagoId = '".$this->pedidoPagoId."'";
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$this->Util()->DBSelect($_SESSION["empresaId"])->DeleteData();
$this->Util()->setError(30059, "complete");
$this->Util()->PrintErrors();
return true;
}
function SavePagoProv()
{
if($this->Util()->PrintErrors()){ return false; }
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery("
INSERT INTO `proveedorPago` (
proveedorId,
metodoPagoId,
cantidad,
fecha,
noCheque,
noFactura
)
VALUES (
'".$this->proveedorId."',
'".$this->metodoPagoId."',
'".$this->cantidad."',
'".$this->fecha."',
'".$this->noCheque."',
'".$this->noFactura."'
)"
);
$this->Util()->DBSelect($_SESSION["empresaId"])->InsertData();
$this->Util()->setError(30057, "complete");
$this->Util()->PrintErrors();
return true;
}
function DeletePagoProv(){
$sql = "DELETE FROM
proveedorPago
WHERE
provPagoId = '".$this->provPagoId."'";
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$this->Util()->DBSelect($_SESSION["empresaId"])->DeleteData();
$this->Util()->setError(30059, "complete");
$this->Util()->PrintErrors();
return true;
}
function EnumerateById()
{
$sql = "SELECT * FROM pedido
WHERE (status = 'OrdenCompIng'
OR status = 'EnvSuc') AND
pedidoId = '".$this->pedidoId."'";
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$result = $this->Util()->DBSelect($_SESSION["empresaId"])->GetRow();
return $result;
}
function Search(){
if($this->proveedorId)
$sqlFilter = ' AND proveedorId = "'.$this->proveedorId.'"';
$sql = "SELECT * FROM pedido
WHERE (status = 'OrdenCompIng'
OR status = 'EnvSuc')
AND ajuste = '0'
AND folioProv NOT REGEXP '^FOLIO'
".$sqlFilter."
ORDER BY fecha ASC ".$sqlAdd;
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$result = $this->Util()->DBSelect($_SESSION["empresaId"])->GetResult();
return $result;
}
function EnumProveedores()
{
if($this->proveedorId)
$sqlFilter = ' AND proveedorId = "'.$this->proveedorId.'"';
$sql = "SELECT * FROM pedido
WHERE (status = 'OrdenCompIng'
OR status = 'EnvSuc')
AND ajuste = '0'
AND folioProv NOT REGEXP '^FOLIO'
".$sqlFilter."
GROUP BY proveedorId";
$this->Util()->DBSelect($_SESSION['empresaId'])->setQuery($sql);
$proveedores = $this->Util()->DBSelect($_SESSION['empresaId'])->GetResult();
return $proveedores;
}
//NOTAS CREDITO
function SaveNota()
{
if($this->Util()->PrintErrors()){ return false; }
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery("
INSERT INTO `pedidoNota` (
pedidoId,
proveedorId,
cantidad,
fecha,
noNota
)
VALUES (
'".$this->pedidoId."',
'".$this->proveedorId."',
'".$this->cantidad."',
'".$this->fecha."',
'".$this->noNota."'
)"
);
$this->Util()->DBSelect($_SESSION["empresaId"])->InsertData();
$this->Util()->setError(20122, "complete");
$this->Util()->PrintErrors();
return true;
}
function DeleteNota(){
$sql = "DELETE FROM
pedidoNota
WHERE
pedidoNotaId = '".$this->pedidoNotaId."'";
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$this->Util()->DBSelect($_SESSION["empresaId"])->DeleteData();
$this->Util()->setError(20123, "complete");
$this->Util()->PrintErrors();
return true;
}
function GetTotalNotas(){
$sql = 'SELECT SUM(cantidad) FROM pedidoNota
WHERE pedidoId = "'.$this->pedidoId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$total = $this->Util()->DBSelect($_SESSION["empresaId"])->GetSingle();
return $total;
}
function EnumNotas(){
$sql = 'SELECT * FROM pedidoNota
WHERE pedidoId = "'.$this->pedidoId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$pagos = $this->Util()->DBSelect($_SESSION["empresaId"])->GetResult();
return $pagos;
}
public function InfoNota(){
$sql = 'SELECT * FROM pedidoNota
WHERE pedidoNotaId = "'.$this->pedidoNotaId.'"';
$this->Util()->DBSelect($_SESSION["empresaId"])->setQuery($sql);
$info = $this->Util()->DBSelect($_SESSION["empresaId"])->GetRow();
return $info;
}
}
?>