private function cerrar_caja()
 {
     $this->caja->fecha_fin = Date('d-m-Y H:i:s');
     if ($this->caja->save()) {
         if ($this->terminal) {
             $this->terminal->add_linea_big("\nCIERRE DE CAJA:\n");
             $this->terminal->add_linea("Empleado: " . $this->user->codagente . " " . $this->agente->get_fullname() . "\n");
             $this->terminal->add_linea("Caja: " . $this->caja->fs_id . "\n");
             $this->terminal->add_linea("Fecha inicial: " . $this->caja->fecha_inicial . "\n");
             $this->terminal->add_linea("Dinero inicial: " . $this->show_precio($this->caja->dinero_inicial, FALSE, FALSE) . "\n");
             $this->terminal->add_linea("Fecha fin: " . $this->caja->show_fecha_fin() . "\n");
             $this->terminal->add_linea("Dinero fin: " . $this->show_precio($this->caja->dinero_fin, FALSE, FALSE) . "\n");
             $this->terminal->add_linea("Diferencia: " . $this->show_precio($this->caja->diferencia(), FALSE, FALSE) . "\n");
             $this->terminal->add_linea("Tickets: " . $this->caja->tickets . "\n\n");
             $this->terminal->add_linea("Dinero pesado:\n\n\n");
             $this->terminal->add_linea("Observaciones:\n\n\n\n");
             $this->terminal->add_linea("Firma:\n\n\n\n\n\n\n");
             /// encabezado común para los tickets
             $this->terminal->add_linea_big($this->terminal->center_text($this->empresa->nombre, 16) . "\n");
             $this->terminal->add_linea($this->terminal->center_text($this->empresa->lema) . "\n\n");
             $this->terminal->add_linea($this->terminal->center_text($this->empresa->direccion . " - " . $this->empresa->ciudad) . "\n");
             $this->terminal->add_linea($this->terminal->center_text("CIF: " . $this->empresa->cifnif));
             $this->terminal->cortar_papel();
             $this->terminal->add_linea("\n\n");
             $this->terminal->add_linea($this->terminal->center_text($this->empresa->horario) . "\n");
             $this->terminal->abrir_cajon();
             $this->terminal->save();
             /// recargamos la página
             header('location: ' . $this->url() . '&terminal=' . $this->terminal->id);
         } else {
             /// recargamos la página
             header('location: ' . $this->url());
         }
     } else {
         $this->new_error_msg("¡Imposible cerrar la caja!");
     }
 }