本文整理汇总了PHP中fs_controller::new_error_msg方法的典型用法代码示例。如果您正苦于以下问题:PHP fs_controller::new_error_msg方法的具体用法?PHP fs_controller::new_error_msg怎么用?PHP fs_controller::new_error_msg使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类fs_controller
的用法示例。
在下文中一共展示了fs_controller::new_error_msg方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: importar_caja
/**
* @param asiento $asiento
* @param divisa $divisa
* @param fs_controller $controller
*
* @return bool Status de la importacion de las cajas
*/
public static function importar_caja(asiento $asiento, divisa $divisa, fs_controller $controller)
{
$art = new articulo();
$continuar = true;
/** @var caja[] $cajas_importadas */
$cajas_importadas = array();
foreach ($_POST['cajas'] as $idcaja) {
$caja = caja::get($idcaja);
// Lo primero que tiene que haber en el asiento es una linea con el monto de la caja importada
// Cuando importe muchas, lo que va a haber es una sola linea con el total de cajas
contabilidad_asiento::add_partida($asiento, $divisa, '110101001', array('debe' => $caja->dinero_fin, 'haber' => 0, 'comprobante' => '<a hreh="' . $caja->url() . '">Caja #' . $caja->id . '</a>,'));
foreach ($caja->get_recibos() as $recibo) {
$factura = $recibo->getFactura();
// Obtengo las lineas de la factura
$lineas = $factura->get_lineas();
// Después de acuerdo a la forma de pago del recibo tengo que agregar el pago a cada una de las cuentas
switch ($recibo->codpago) {
case 'CONT':
// TODO: Cuando es de contado, a que cuenta va?
break;
case 'DBT MACRO':
contabilidad_asiento::add_partida($asiento, $divisa, '110103001', array('debe' => 0, 'haber' => $recibo->importe, 'comprobante' => ''));
break;
case 'DBT S. RIO':
case 'CTA CTE':
contabilidad_asiento::add_partida($asiento, $divisa, '110103006', array('debe' => 0, 'haber' => $recibo->importe, 'comprobante' => ''));
break;
case 'TRF':
case 'CHQ':
case 'DEP':
contabilidad_asiento::add_partida($asiento, $divisa, '110103003', array('debe' => 0, 'haber' => $recibo->importe, 'comprobante' => ''));
break;
case 'TC':
case 'TD':
contabilidad_asiento::add_partida($asiento, $divisa, '1102010000', array('debe' => 0, 'haber' => $recibo->importe, 'comprobante' => ''));
break;
default:
$controller->new_error_msg("La forma de pago no está configurada para ser importada!");
break;
}
// Después de eso viene la parte "compleja":
// Si la factura del recibo está pagada
if ($factura->pagada) {
// El monto total de la factura es igual al del recibo?
if ($recibo->importe === $factura->total) {
// tomamos todos los articulos y los importamos de acuerdo a la subcuenta de venta
// que está declarada en cada articulo (este es el caso "normal", como por ejemplo
// el de las COMIDAS_PERSONAL
foreach ($lineas as $linea) {
$articulo = $art->get($linea->referencia);
// Si no hay articulo tengo un grave problema
if ($articulo && $articulo->codsubcuentaven) {
contabilidad_asiento::add_partida($asiento, $divisa, $articulo->codsubcuentaven, array('debe' => 0, 'haber' => $linea->pvptotal, 'comprobante' => ''));
} else {
$controller->new_error_msg('La factura: <a href="' . $factura->url() . '">#' . $factura->numero . '</a> tiene un un artículo inexistente: ' . $linea->referencia . 'o el artículo no tiene configurada la cuenta a la que deve ser cargada');
}
}
} else {
// Si la factura está paga pero los totales difieren
// Eso quiere decir que los pagos están dispersos entre varias cajas, por lo que tengo que
// importar solamente el monto del recibo
// si el artículo que tiene soalemente es una reserva
if (count($lineas) === 1 && $lineas[0]->referencia === 'Reserva') {
// se agrega la partida a la subcuenta 210101003
contabilidad_asiento::add_partida($asiento, $divisa, '210101003', array('debe' => 0, 'haber' => $recibo->importe, 'comprobante' => ''));
contabilidad_asiento::add_partida($asiento, $divisa, '410101001', array('debe' => 0, 'haber' => $factura->total, 'comprobante' => ''));
} else {
// No se que hacer en estos casos
$controller->new_error_msg('La factura <a href="' . $factura->url() . '">#' . $factura->numero . '</a> está paga pero el importe está distribuido y contiene otros articulos que no' . ', por lo que no puede ser importada en un asiento contable por favor ignore la caja #' . $caja->id);
$continuar = false;
}
}
} else {
// Si la factura no está paga y el artículo es una reserva
// entonces los recibos van a la subcuenta 210101003
if (count($lineas) === 1 && $lineas[0]->referencia === 'Reserva') {
contabilidad_asiento::add_partida($asiento, $divisa, '210101003', array('debe' => 0, 'haber' => $recibo->importe, 'comprobante' => ''));
} else {
//No se que hacer en estos casos
$controller->new_error_msg('La factura <a href="' . $factura->url() . '">#' . $factura->numero . '</a> no está paga y contiene otros articulos que no son una reserva, por lo que no ' . ' puede ser importada en un asiento contable por favor ignore la caja #' . $caja->id);
$continuar = false;
}
}
}
if ($continuar) {
$cajas_importadas[] = $caja;
}
}
// Si todas las cajas fueron importadas correctamente
if ($continuar) {
// Guardo las partidas asociadas al asiento en la BBDD
foreach (contabilidad_asiento::$partidas as $subcuenta => $partida) {
// Creamos una nueva partida
//.........这里部分代码省略.........