public function url()
 {
     if ($this->cliente) {
         return parent::url() . '&cod=' . $this->cliente->codcliente;
     } else {
         parent::url();
     }
 }
Exemplo n.º 2
0
 public function url()
 {
     if (isset($_GET['folder']) and isset($_GET['id'])) {
         return 'index.php?page=' . __CLASS__ . '&folder=' . $_GET['folder'] . '&id=' . $_GET['id'];
     } else {
         return parent::url();
     }
 }
 public function url()
 {
     if ($this->servicio) {
         return parent::url() . '&id=' . $this->servicio->idservicio;
     } else {
         return parent::url();
     }
 }
 public function url()
 {
     if (!isset($this->balance)) {
         return parent::url();
     } else {
         if ($this->balance) {
             return $this->balance->url();
         } else {
             return parent::url();
         }
     }
 }
 public function url()
 {
     if (!isset($this->subcuenta)) {
         return parent::url();
     } else {
         if ($this->subcuenta) {
             return $this->subcuenta->url();
         } else {
             return $this->ppage->url();
         }
     }
 }
Exemplo n.º 6
0
 public function url()
 {
     if (!isset($this->fabricante)) {
         return parent::url();
     } else {
         if ($this->fabricante) {
             return $this->fabricante->url();
         } else {
             return $this->page->url();
         }
     }
 }
Exemplo n.º 7
0
 public function url()
 {
     if (!isset($this->modelo)) {
         return parent::url();
     } else {
         if ($this->modelo) {
             return $this->modelo->url();
         } else {
             return $this->page->url();
         }
     }
 }
Exemplo n.º 8
0
 public function url()
 {
     if (!isset($this->marca)) {
         return parent::url();
     } else {
         if ($this->marca) {
             return $this->marca->url();
         } else {
             return $this->page->url();
         }
     }
 }
Exemplo n.º 9
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Backups', 'admin', FALSE, TRUE);
     if (strtolower(FS_DB_TYPE) == 'mysql') {
         $this->template = 'backup_mysql';
         //$this->buttons[] = new fs_button('b_backupms', 'Respaldar por Completo la BD', $this->url().'&tipo_backup=todo');
         //$this->buttons[] = new fs_button('be_backupms', 'Respaldar por Completo Solo la Estructura de la BD', $this->url().'&tipo_backup=estructura');
         if (isset($_GET['take_bk'])) {
             // Descargar Archivo del Backup
             $this->baja_backup($_GET['take_bk']);
         }
         $this->cerrado = false;
         $this->backup_mysql_ms();
     } else {
         if (isset($_GET['backup'])) {
             $this->backup_postgresql_tables();
         }
     }
 }
Exemplo n.º 10
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Tarifas de proveedor', 'compras', FALSE, FALSE);
 }
Exemplo n.º 11
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Empleados', 'admin', TRUE, TRUE);
 }
Exemplo n.º 12
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Enviar SMS', 'ventas', FALSE, FALSE);
 }
Exemplo n.º 13
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'imprimir', 'ventas', FALSE, FALSE);
 }
Exemplo n.º 14
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Cuentas', 'contabilidad', FALSE, TRUE);
 }
Exemplo n.º 15
0
 public function __construct()
 {
     parent::__construct(__CLASS__, ucfirst(FS_PEDIDOS) . ' de compra', 'compras');
 }
Exemplo n.º 16
0
 public function url()
 {
     if (!isset($this->presupuesto)) {
         return parent::url();
     } else {
         if ($this->presupuesto) {
             return $this->presupuesto->url();
         } else {
             return $this->page->url();
         }
     }
 }
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Agrupar ' . FS_ALBARANES, 'ventas', FALSE, FALSE);
 }
Exemplo n.º 18
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Opciones', 'Servicios', FALSE, FALSE);
 }
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Atributod de artículos', 'ventas', FALSE, FALSE);
 }
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Facturas', 'informes', FALSE, TRUE);
 }
Exemplo n.º 21
0
 public function __construct()
 {
     parent::__construct(__CLASS__, '9 - Nueva Venta', 'distribucion', FALSE, TRUE, FALSE);
 }
 /**
  * @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
             $part = new partida();
             // Cargamos los valores en la partida
             foreach ($partida as $name => $value) {
                 if (property_exists($part, $name)) {
                     $part->{$name} = $value;
                 }
             }
             $part->referencia = 'Caja importada el ' . date('Y-m-d H:i:s') . ' por ' . $controller->user->get_agente()->get_fullname();
             // Al guardar la partida se actualiza automáticamente los valores de la subcuenta
             // Y el monto del asiento
             if ($part->save()) {
                 $continuar = $continuar && true;
             } else {
                 $continuar = false;
             }
         }
         if ($continuar) {
             foreach ($cajas_importadas as $caja) {
                 $caja->setIdAsiento($asiento->idasiento);
                 if (!$caja->save()) {
                     $controller->new_error_msg("Error al actualizar la caja #" . $caja->id);
                     $continuar = $continuar && true;
                 } else {
                     $continuar = false;
                 }
             }
             if ($continuar) {
                 $controller->new_message('Cajas importada correctamente');
             } else {
                 $controller->new_error_msg('Hubo algún error al vincular el asiento con las cajas');
             }
         } else {
             // Creo que acá tendría que hacer rollback de toda la transacción
             $controller->new_error_msg("Error al guardar una partida al asiento");
         }
     } else {
         $controller->new_error_msg("Error al importar cajas");
     }
     return $continuar;
 }
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Idioma fact', 'admin', TRUE, TRUE);
 }
Exemplo n.º 24
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Pagar facturas', 'ventas', FALSE, FALSE);
 }
Exemplo n.º 25
0
 public function __construct()
 {
     parent::__construct(__CLASS__, ucfirst(FS_ALBARANES) . ' de cliente', 'ventas', FALSE, TRUE, TRUE);
 }
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Paises', 'admin', FALSE, TRUE);
 }
Exemplo n.º 27
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'Caja General', 'contabilidad', FALSE, TRUE);
     /// cualquier cosa que pongas aquí se ejecutará DESPUÉS de process()
 }
 public function __construct()
 {
     parent::__construct(__CLASS__, ucfirst(FS_ALBARANES) . ' de proveedor', 'compras', FALSE, TRUE, TRUE);
 }
Exemplo n.º 29
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'nueva venta', 'ventas', FALSE, FALSE);
 }
Exemplo n.º 30
0
 public function __construct()
 {
     parent::__construct(__CLASS__, 'TPV Genérico', 'TPV');
 }