48 lines
1.2 KiB
PHP
48 lines
1.2 KiB
PHP
<?php
|
|
|
|
require_once '../modelo/BaseDatos.php';
|
|
require_once '../modelo/Sala.php';
|
|
require_once '../modelo/Boleto.php';
|
|
require_once '../modelo/Venta.php';
|
|
|
|
class VendedorController {
|
|
private $baseDatos;
|
|
private $sala;
|
|
|
|
public function __construct($baseDatos) {
|
|
$this->baseDatos = $baseDatos;
|
|
}
|
|
|
|
public function cargarSala($idSala) {
|
|
$this->sala = $this->baseDatos->cargarSala($idSala);
|
|
return $this->sala;
|
|
}
|
|
|
|
public function mostrarDisponibilidadAsientos() {
|
|
if ($this->sala) {
|
|
return $this->sala->disponibilidadAsientos();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public function seleccionarBoletos($idsBoletos) {
|
|
if ($this->sala) {
|
|
return $this->sala->obtenerBoletosPorId($idsBoletos);
|
|
}
|
|
return [];
|
|
}
|
|
|
|
public function procesarVenta($boletos, $nombreCliente) {
|
|
$venta = new Venta($nombreCliente);
|
|
$venta->agregarBoletos($boletos);
|
|
|
|
if (count($venta->getBoletos()) > 0) {
|
|
$resultado = $this->baseDatos->guardarVenta($venta);
|
|
if ($resultado) {
|
|
return $venta->generarComprobante();
|
|
}
|
|
}
|
|
|
|
return null;
|
|
}
|
|
} |