Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save santiblanko/45dcb7c701c0c361eede57c3a413df72 to your computer and use it in GitHub Desktop.

Select an option

Save santiblanko/45dcb7c701c0c361eede57c3a413df72 to your computer and use it in GitHub Desktop.
test egresoController
<?php
class Facturacion_EgresosController extends Mantum_RestController
{
/**
* Se utiliza para cargar la lista de egresos.
*
* @author santiago.blanco
* @date 24/05/2016
*/
public function listarAction()
{
try {
$oConexion = Mantum_BD2::getConexion();
$sSQL = " SELECT I.id, TO_CHAR(I.fecha, 'YYYY/MM/DD HH24:MI:SS') as fecha,
P.nombre + ' ' + P.apellido as personal,
I.valor, C.nombre as cuenta,
CASE WHEN I.idfactura IS NULL THEN CL.nombre
WHEN I.idfactura IS NOT NULL AND F.idclientecmms IS NOT NULL THEN F.razonsocialtercero
END AS cliente,
CASE WHEN I.idfactura IS NULL THEN PRO.nombre
WHEN I.idfactura IS NOT NULL AND F.idproveedor IS NOT NULL THEN F.razonsocialtercero
END AS proveedor,
F.consecutivo as factura
FROM facturacion.egreso AS I INNER JOIN
personal AS P ON I.idpersonal = P.id INNER JOIN
facturacion.cuenta AS C ON I.idcuenta = C.id LEFT JOIN
clientecmms AS CL ON I.idcliente = CL.id LEFT JOIN
proveedor AS PRO ON I.idproveedor = PRO.id LEFT JOIN
facturacion.factura AS F ON I.idfactura = F.id;";
$aData = array();
$aEgresos = $oConexion->fetchAll($sSQL, $aData);
$oRespuesta = new stdClass();
$oRespuesta->egresos = $aEgresos;
$this->getResponse()->setBody(json_encode($oRespuesta));
$this->getResponse()->setHttpResponseCode(200);
} catch (Exception $e) {
Zend_Registry::get('logger')->debug($e); //@pendiente
$this->getResponse()->setBody(json_encode($e));
$this->getResponse()->setHttpResponseCode(404);
}
}
/**
* Se utiliza para cargar datos iniciales.
*
* @author santiago.blanco
* @date 24/05/2016
*/
public function getdatosAction()
{
try {
// Conexión
$oConexion = Mantum_BD2::getConexion();
$facturacionModel = new Facturacion($oConexion);
// Clientes
$sSQL = "SELECT id, nombre FROM clientecmms WHERE activo = ? ORDER BY nombre ASC;";
$aData = array(Mantum_BD2::getVerdadero());
$aClientes = $oConexion->fetchAll($sSQL, $aData);
// Proveedores
$sSQL = "SELECT id, nombre FROM proveedor WHERE activo = ? ORDER BY nombre ASC;";
$aData = array(Mantum_BD2::getVerdadero());
$aProveedores = $oConexion->fetchAll($sSQL, $aData);
// Cuentas
$sSQL = "SELECT id, nombre FROM facturacion.cuenta ORDER BY nombre ASC;";
$aData = array();
$aCuentas = $oConexion->fetchAll($sSQL, $aData);
//facturas //le mando un false si quiero listar esventa = false
$aFacturas = $facturacionModel->getFacturas(Mantum_BD2::getFalso());
// Respuesta
$oRespuesta = new stdClass();
$oRespuesta->clientes = $aClientes;
$oRespuesta->proveedores = $aProveedores;
$oRespuesta->cuentas = $aCuentas;
$oRespuesta->facturas = $aFacturas;
$this->getResponse()->setBody(json_encode($oRespuesta));
$this->getResponse()->setHttpResponseCode(200);
} catch (Exception $e) {
$this->getResponse()->setBody(json_encode($e));
$this->getResponse()->setHttpResponseCode(404);
}
}
/**
* Se utiliza para cargar los datos del formulario de edición
*
* @author santiago.blanco
* @date 24/05/2016
*/
public function loadEditarAction()
{
$iIdEgreso = (int)$this->getRequest()->getParam(0);
if (!$iIdEgreso) {
return $this->enviarRespuestaError("Inserte un identificador valido.");
}
try {
$conexion = Mantum_BD2::getConexion();
$egresoModel = new Egreso($conexion);
$facturacionModel = new Facturacion($conexion);
$egreso = $egresoModel->obtenerDatosEgreso($iIdEgreso);
$facturas = [];
$detalleEgreso = $egresoModel->obtenerFacturasXEgreso($iIdEgreso);
if (isset($egreso->idcliente)) {
$facturas = $facturacionModel->getFacturasByClienteId($egreso->idcliente, Mantum_BD2::getFalso());
} elseif (isset($egreso->idproveedor)) {
$facturas = $facturacionModel->getFacturasByProveedorId($egreso->idproveedor, Mantum_BD2::getFalso());
}
//obtengo las facturas que se vieron involucradas en la generación del egreso
$facturasDetalle = [];
foreach ($detalleEgreso as $detalle) {
array_push($facturasDetalle, $facturacionModel->getFacturaById($detalle->idfactura));
}
// si no hay facturas entonces pues ponemos las que hay en el detalle.
if (count($facturas) < 1) {
$facturas = $facturasDetalle;
}
//obtengo las que estan duplicadas en el array de clientes y en el array de facturas involucradas
$repited = [];
foreach ($facturas as $factura) {
foreach ($facturasDetalle as $detalle) {
if ($factura->id == $detalle->id) {
array_push($repited, $detalle);
}
}
}
//mezclo las facturas
$grupoFacturas = array_merge($facturasDetalle, $facturas);
//le meto los detalles del egreso si la factura tiene detalle
foreach ($grupoFacturas as &$f) {
foreach ($detalleEgreso as $detEgreso) {
if ($detEgreso->idfactura == $f->id) {
$f->detalle = $detEgreso;
}
}
}
foreach ($grupoFacturas as $key => $factura) {
foreach ($repited as $k => $fact) {
if ($factura->id == $fact->id) {
unset($grupoFacturas[$key]);
unset($repited[$k]);
}
}
}
$params = array(
"proveedores" => $egresoModel->obtenerProveedores(),
"cuentas" => $egresoModel->obtenerCuenta(),
"clientes" => $egresoModel->obtenerClientes(),
"facturas" => $grupoFacturas,
"detalleEgreso" => $detalleEgreso,
"egreso" => $egreso
);
$message = "El egreso se listo satisfactoriamente.";
$this->enviarRespuestaExitosa($message, $params);
return;
} catch (Exception $e) {
$message = "El registro no puedo ser cargardo";
$this->enviarRespuestaError($message, $e);
return;
}
}
/**
* Acción crear. Se usa para crear un egreso.
*
* @author santiago.blanco
* @date 24/05/2016
*/
public function crearAction()
{
$oData = $this->getPostData();
$this->returnIfPostDataIsNull($oData);
try {
$conexion = Mantum_BD2::getConexion();
$usuarioId = Mantum_Tool::obtenerIdPersonalLogeado();
$parameters = (object) array(
"iIdCliente" => (property_exists($oData, "idcliente"))? $oData->idcliente: null,
"iIdProveedor"=> (property_exists($oData, "idproveedor"))? $oData->idproveedor: null,
"iValor" => (property_exists($oData, "valor"))? $oData->valor: null,
"aFacturas" => (property_exists($oData, "facturas"))? $oData->facturas: null,
"fecha" => date("Y-m-d H:i:s"),
"usuario" => $usuarioId,
"cuenta" => (property_exists($oData, "idcuenta"))? $oData->idcuenta: null,
"iTipo" => (property_exists($oData, "causacion"))? $oData->causacion: null,
"basic" => (property_exists($oData, "simple"))? $oData->simple: null,
"oFacturacion" => new Facturacion($conexion),
"oEgreso" => new Egreso($conexion)
);
$validacion = $this->validarRegistroNuevoEgreso($parameters);
$parameters = $this->guardarNuevoEgreso($parameters);
$this->enviarRespuestaExitosa("Se agrego el egreso de forma satisfactoria");
return;
} catch (Exception $e) {
$mensaje = "El egreso no pudo ser creado";
$this->enviarRespuestaError($mensaje, $e);
return;
}
}
/**
* Acción editar. Permite editar un egreso.
*
* @author santiago.blanco
* @date 24/05/2016
*/
public function editarAction()
{
$oData = $this->getPostData();
$this->returnIfPostDataIsNull($oData);
try {
$conexion = Mantum_BD2::getConexion();
$parameters = (object) array(
"iIdCliente" => (property_exists($oData, "idcliente"))? $oData->idcliente: null,
"iIdEgreso" => (property_exists($oData, "idEgreso"))? $oData->idEgreso: null,
"egresoId" => (property_exists($oData, "idEgreso"))? $oData->idEgreso: null,
"iIdProveedor"=> (property_exists($oData, "idproveedor"))? $oData->idproveedor: null,
"iValor" => (property_exists($oData, "valor"))? $oData->valor: null,
"aFacturas" => (property_exists($oData, "facturas"))? $oData->facturas: null,
"fecha" => date("Y-m-d H:i:s"),
"usuario" => Mantum_Tool::obtenerIdPersonalLogeado(),
"iIdCuenta" => (property_exists($oData, "idcuenta"))? $oData->idcuenta: null,
"iTipo" => (property_exists($oData, "causacion"))? $oData->causacion: null,
"basic" => (property_exists($oData, "simple"))? $oData->simple: null,
"oFacturacion" => new Facturacion($conexion),
"oEgreso" => new Egreso($conexion)
);
$validacion = $this->validarEdicionEgreso($parameters);
$parameters = $this->getFacturasxEgreso($parameters);
$this->modificarEgreso($parameters);
$this->enviarRespuestaExitosa("Se agrego el egreso de forma satisfactoria");
return;
} catch (Exception $e) {
$mensaje = "El egreso no pudo ser editado";
$this->enviarRespuestaError($mensaje, $e);
return;
}
}
/**
* Se utiliza para enviar una respuesta exitosa
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function enviarRespuestaExitosa($message, $params = null)
{
$oRespuesta = new stdClass();
$oRespuesta->mensaje = $message;
$oRespuesta->data = $params;
$this->getResponse()->setBody(json_encode($oRespuesta));
$this->getResponse()->setHttpResponseCode(201);
}
/**
* Se utiliza para enviar una respuesta de error.
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function enviarRespuestaError($message, $e = null)
{
$respuesta = new stdClass;
$respuesta->mensaje = $message;
if ($e) {
$respuesta->mensaje = $message ." : ".$e->getMessage() . ".";
Zend_Registry::get('logger')->debug($e);
$respuesta->detalles = $e->getMessage();
}
$this->getResponse()->setBody(json_encode($respuesta));
$this->getResponse()->setHttpResponseCode(400);
}
/**
* Se utiliza para guardar un nuevo egreso.
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function guardarNuevoEgreso($parameters)
{
$parameters->idegresogenerador = $parameters->oEgreso->generarEgreso([
$parameters->iIdCliente,
$parameters->iIdProveedor,
null,
$parameters->iValor,
$parameters->fecha,
$parameters->usuario,
$parameters->cuenta
]);
$parameters->egresoId = $parameters->idegresogenerador;
//si el egreso no es basico entonces tiene que proceder a revisar facturas.
if (!$parameters->basic) {
//nos mandan facturas?
$saldoDisponible = $parameters->iValor;
$parameters->iValorInicial = $saldoDisponible;
if (count($parameters->aFacturas) > 0) {
foreach ($parameters->aFacturas as $factura) {
if ($saldoDisponible > 0) {
//Cuanto vale la factura?
//para ello consulto el valor pendiente de la factura en la bd
$valorPendiente = $parameters->oFacturacion->getFacturaById($factura->id)->valorpendiente;
//puedo pagar la factura? ¿Cuanto puedo pagar?
//si no lo puedo pagar
// pago lo que puedo y me quedo sin plata.
$infoFactura = $this->calcularNuevoValorPendienteFactura($factura->MontoPagar, $saldoDisponible);
$saldoDisponible = $infoFactura->saldoDisponible;
//la registro en egresoxfactura
$parameters->oEgreso->generarEgresoFactura([
$factura->id,
$parameters->idegresogenerador,
$infoFactura->valorPagado
]);
//cambio el valor pendiente de la factura
$pendiente = $valorPendiente - $infoFactura->valorPagado;
$parameters->oFacturacion->actualizarValorPendiente([
$pendiente,
$factura->id
]);
}
}
} else {
$this->pagarFacturasCronologicamente($parameters, $saldoDisponible);
}
//actualizamos el egreso en el caso de que haya sobrado.
if ($parameters->iValorInicial !== $saldoDisponible && $saldoDisponible > 0) {
//Actualizamos el valor del egreso
$egresoVal = $parameters->iValorInicial - $saldoDisponible;
$parameters->oEgreso->modificarEgreso([
$parameters->iIdCliente,
$parameters->iIdProveedor,
$egresoVal,
$parameters->cuenta,
$parameters->idegresogenerador
]);
//si nos sobro dinero debemos generar un egreso adicional
//configuramos el objeto del nuevo egreso.
$egreso = [
$parameters->iIdCliente,
$parameters->iIdProveedor,
null,
$saldoDisponible,
$parameters->fecha,
$parameters->usuario,
$parameters->cuenta
];
//el idgenerado del nuevo egreso
$parameters->idegresogenerado = $parameters->oEgreso->generarEgreso($egreso);
//Agregamos el saldo a favor.
$parameters->oEgreso->agregarSaldoFavor([
$parameters->idegresogenerado,
$parameters->idegresogenerador,
$saldoDisponible
]);
}
}
}
/**
* Se utiliza para calcular el nuevo valor pendiente de la factura
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function calcularNuevoValorPendienteFactura($valorPendiente, $saldoDisponible)
{
$valorPendiente = (int) $valorPendiente;
$saldoDisponible = (int) $saldoDisponible;
if ($valorPendiente > $saldoDisponible) {
$valorPendienteSiguiente = $valorPendiente - $saldoDisponible;
$valorPagado = $saldoDisponible;
$saldoDisponible = 0;
} else {
//si lo pague entonces ya no debo nada
$valorPendienteSiguiente = 0;
$valorPagado = $valorPendiente;
$saldoDisponible -= $valorPagado;
}
return (object) array(
"valorPendienteSiguiente" => $valorPendienteSiguiente,
"valorPagado" => $valorPagado,
"saldoDisponible" => $saldoDisponible
);
}
/**
* Se utiliza para pagar las facturas en orden cronologico por fecha de creación
*
* @author santiago.blanco
* @date 24/05/2016
*/
public function pagarFacturasCronologicamente($parameters, $saldoDisponible)
{
//cuando dinero me queda?
//me sobra dinero?
if ($saldoDisponible > 0) {
//miro si hay facturas en la DB sin pagar
$facturasDB = $this->getFacturas($parameters, Mantum_BD2::getFalso());
foreach ($facturasDB as $factura) {
//Cuanto vale la factura?
//para ello consulto el valor pendiente de la factura en la bd
$valorPendiente = $parameters->oFacturacion->getFacturaById($factura->id)->valorpendiente;
//puedo pagar la factura? ¿Cuanto puedo pagar?
//si no lo puedo pagar
// pago lo que puedo y me quedo sin plata.
$infoFactura = $this->calcularNuevoValorPendienteFactura($factura->valorpendiente, $saldoDisponible);
$saldoDisponible = $infoFactura->saldoDisponible;
//la registro en egresoxfactura
$parameters->oEgreso->generarEgresoFactura([
$factura->id,
$parameters->idegresogenerador,
$infoFactura->valorPagado
]);
//cambio el valor pendiente de la factura
$pendiente = $valorPendiente - $infoFactura->valorPagado;
$parameters->oFacturacion->actualizarValorPendiente([
$pendiente,
$factura->id
]);
}
}
}
/**
* Se utiliza para obtener las facturas
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function getFacturas($parameters, $esVenta)
{
$clienteId = $parameters->iIdCliente;
$proveedorId = $parameters->iIdProveedor;
if ($parameters->iTipo == 1) {
return $parameters->oFacturacion->getFacturasByProveedorId($proveedorId, $esVenta);
}
if ($parameters->iTipo == 2) {
return $parameters->oFacturacion->getFacturasByClienteId($clienteId, $esVenta);
}
throw new Exception("Error al retornar facturas. El tipo de causa es nulo");
}
/**
* Se utiliza para validar el registro de un nuevo egreso.
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function validarRegistroNuevoEgreso($registro)
{
if (!isset($registro->cuenta)) {
throw new Exception("la cuenta es requerida");
}
if (!isset($registro->usuario)) {
throw new Exception("El id de personal es requerido");
}
if ($registro->iValor == 0) {
throw new Exception("El monto no puede ser cero");
}
if (!isset($registro->iTipo)) {
throw new Exception("Debe seleccionar un tipo de causación");
}
}
/**
* Se utiliza para validar la edición del egreso
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function validarEdicionEgreso($registro)
{
$registro->usuario = 1;
if (!isset($registro->iIdCuenta)) {
throw new Exception("la cuenta es requerida");
}
if (!isset($registro->usuario)) {
throw new Exception("El id de personal es requerido");
}
if ($registro->iValor == 0) {
throw new Exception("El monto no puede ser cero");
}
if (!isset($registro->iTipo)) {
throw new Exception("Debe seleccionar un tipo de causación");
}
}
/**
* Se utiliza para retornar una exception si no se envian datos
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function returnIfPostDataIsNull($oData)
{
if ($oData == null) {
$mensaje = "No se estan enviando datos";
throw new Exception($message);
return;
}
}
/**
* Se utiliza para modificar un egreso
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function modificarEgreso($parameters)
{
//obtengo las facturas por egreso.
$facturasxEgreso = $parameters->oEgreso->obtenerFacturasXEgreso($parameters->iIdEgreso);
foreach ($facturasxEgreso as $facturaxEgreso) {
//obtengo la factura para este registro.
$facturaDB = $parameters->oFacturacion->getFacturaById($facturaxEgreso->idfactura);
//calculo el valor anterior.
$nuevoPendiente = $facturaxEgreso->montototal + $facturaDB->valorpendiente;
//actualizo el valor pendiente.
$parameters->oFacturacion->actualizarValorPendiente([
$nuevoPendiente,
$facturaDB->id
]);
//actualizo a cero el valor de egresoxfactura
$valorEgreso = 0;
$parameters->oEgreso->modificarEgresoFact([
$valorEgreso,
$parameters->iIdEgreso,
$facturaxEgreso->idfactura
]);
}
//Iniciamos variables
$saldoDisponible = (int) $parameters->iValor;
$parameters->iValorInicial = (int) $parameters->iValor;
//modificamos el valor del egreso
$parameters->oEgreso->modificarEgreso([
$parameters->iIdCliente,
$parameters->iIdProveedor,
$parameters->iValor,
$parameters->iIdCuenta,
$parameters->iIdEgreso
]);
if (!count($parameters->aFacturas) > 0) {
//Mantum_Tool::dd("no nos envian facturas");
//obtenemos todas las facturas
$facturas = $this->obtenerConsolidadoFacturas($parameters, Mantum_BD2::getFalso());
foreach ($facturas as $factura) {
//si el saldo disponible es > 0 miro que puedo pagar.
if ($saldoDisponible > 0) {
$valorPendiente = (int) $parameters->oFacturacion->getFacturaById($factura->id)->valorpendiente;
//puedo pagar la factura? ¿Cuanto puedo pagar?
//si no lo puedo pagar
// pago lo que puedo y me quedo sin plata.
$infoFactura = $this->calcularNuevoValorPendienteFactura($factura->valorpendiente, $saldoDisponible);
$saldoDisponible = $infoFactura->saldoDisponible;
//la registro en egresoxfactura
$parameters->oEgreso->modificarEgresoFact([
$infoFactura->valorPagado,
$parameters->iIdEgreso,
$factura->id
]);
//cambio el valor pendiente de la factura
$pendiente = $valorPendiente - $infoFactura->valorPagado;
$parameters->oFacturacion->actualizarValorPendiente([
$pendiente,
$factura->id
]);
}
}
} else {
foreach ($parameters->aFacturas as $factura) {
if ($saldoDisponible > 0) {
//Cuanto vale la factura?
//para ello consulto el valor pendiente de la factura en la bd
$valorPendiente = $parameters->oFacturacion->getFacturaById($factura->id)->valorpendiente;
//puedo pagar la factura? ¿Cuanto puedo pagar?
//si no lo puedo pagar
// pago lo que puedo y me quedo sin plata.
$infoFactura = $this->calcularNuevoValorPendienteFactura($factura->MontoPagar, $saldoDisponible);
$saldoDisponible = $infoFactura->saldoDisponible;
//la registro en egresoxfactura
$parameters->oEgreso->modificarEgresoFact([
$infoFactura->valorPagado,
$parameters->iIdEgreso,
$factura->id
]);
//cambio el valor pendiente de la factura
$pendiente = $valorPendiente - $infoFactura->valorPagado;
$parameters->oFacturacion->actualizarValorPendiente([
$pendiente,
$factura->id
]);
}
}
}
if ($parameters->iValorInicial !== $saldoDisponible && $saldoDisponible > 0) {
//Actualizamos el valor del egreso
$egresoVal = $parameters->iValorInicial - $saldoDisponible;
$parameters->oEgreso->modificarEgreso([
$parameters->iIdCliente,
$parameters->iIdProveedor,
$egresoVal,
$parameters->iIdCuenta,
$parameters->iIdEgreso
]);
//si nos sobro dinero debemos generar un egreso adicional
//configuramos el objeto del nuevo egreso.
$egreso = [
$parameters->iIdCliente,
$parameters->iIdProveedor,
null,
$saldoDisponible,
$parameters->fecha,
$parameters->usuario,
$parameters->iIdCuenta
];
//el idgenerado del nuevo egreso
$parameters->idegresogenerado = $parameters->oEgreso->generarEgreso($egreso);
//Agregamos el saldo a favor.
$parameters->oEgreso->agregarSaldoFavor([
$parameters->idegresogenerado,
$parameters->iIdEgreso,
$saldoDisponible
]);
}
}
/**
* Se utiliza para obtener el consolidado de facturas
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function obtenerConsolidadoFacturas($parameters, $esVenta)
{
$facturas = [];
//obtenemos facturas asociadas al egreso
$detalleEgreso = $parameters->oEgreso->obtenerFacturasXEgreso($parameters->iIdEgreso);
if (isset($parameters->iIdCliente)) {
$facturas = $parameters->oFacturacion->getFacturasByClienteId($parameters->iIdCliente, $esVenta);
} elseif (isset($parameters->iIdProveedor)) {
$facturas = $parameters->oFacturacion->getFacturasByProveedorId($parameters->iIdProveedor, $esVenta);
}
//obtengo las facturas que se vieron involucradas en la generación del egreso
$facturasDetalle = [];
foreach ($detalleEgreso as $detalle) {
array_push($facturasDetalle, $parameters->oFacturacion->getFacturaById($detalle->idfactura));
}
// si no hay facturas entonces pues ponemos las que hay en el detalle.
if (count($facturas) < 1) {
$facturas = $facturasDetalle;
}
//obtengo las que estan duplicadas en el array de clientes y en el array de facturas involucradas
$repited = [];
foreach ($facturas as $factura) {
foreach ($facturasDetalle as $detalle) {
if ($factura->id == $detalle->id) {
array_push($repited, $detalle);
}
}
}
//mezclo las facturas
$grupoFacturas = array_merge($facturasDetalle, $facturas);
foreach ($grupoFacturas as $key => $factura) {
foreach ($repited as $k => $fact) {
if ($factura->id == $fact->id) {
unset($grupoFacturas[$key]);
unset($repited[$k]);
}
}
}
return $grupoFacturas;
}
/**
* Se utiliza para obtener facturas por egreso
*
* @author santiago.blanco
* @date 24/05/2016
*/
private function getFacturasxEgreso($parameters)
{
$parameters->egresoAnterior = $parameters->oEgreso->obtenerDatosEgreso($parameters->iIdEgreso);
$parameters->facturasxEgreso = $parameters->oEgreso->obtenerFacturasXEgreso($parameters->iIdEgreso);
$parameters->facturasxEgresoFacturas = [];
foreach ($parameters->facturasxEgreso as $facturaxegreso) {
array_push(
$parameters->facturasxEgresoFacturas,
$parameters->oEgreso->obtenerFacturaById($facturaxegreso->idfactura)
);
}
return $parameters;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment