예제 #1
0
function updateDireccionByHotelId($idHotel, $data = array())
{
    try {
        $transaction = new Transaction();
        $hotel = getHotelById($idHotel);
        if ($hotel->direccion) {
            updateDireccion($hotel->direccion->id, $data);
        } else {
            $dir = DAOFactory::getDireccionDAO()->prepare($data);
            $dir_id = DAOFactory::getDireccionDAO()->insert($dir);
            $hd = DAOFactory::getHotelDireccionDAO()->prepare(array('hotelId' => $hotel->id, 'direccionId' => $dir_id));
            DAOFactory::getHotelDireccionDAO()->insert($hd);
        }
        $transaction->commit();
        return $idDireccion;
    } catch (Exception $e) {
        print_r($e);
        if ($transaction) {
            $transaction->rollback();
        }
        return false;
    }
}
예제 #2
0
function deleteEmpresa($idEmpresa, $transactional = true)
{
    try {
        if ($transactional) {
            $transaction = new Transaction();
        }
        $empresa = DAOFactory::getEmpresaDAO()->load($idEmpresa);
        $hoteles = DAOFactory::getHotelDAO()->queryByEmpresaId($idEmpresa);
        if ($hoteles) {
            foreach ($hoteles as $hotel) {
                $el = deleteHotel($hotel->id, false);
                if (!$el) {
                    throw new Exception('No se pudo eliminar el hotel');
                }
            }
        }
        $campanias = DAOFactory::getCampaniaDAO()->queryByEmpresaId($idEmpresa);
        if ($campanias && count($campanias)) {
            foreach ($campanias as $c) {
                $d = eliminarCampania($c->id, false);
                if (!$d) {
                    throw new Exception('No se pudo borrar la campaña ' . $c->id);
                }
            }
        }
        $campanias = DAOFactory::getCampaniaDAO()->queryByEmpresaDistribuidoraId($idEmpresa);
        if ($campanias && count($campanias)) {
            foreach ($campanias as $c) {
                $d = eliminarCampania($c->id, false);
                if (!$d) {
                    throw new Exception('No se pudo borrar la campaña ' . $c->id);
                }
            }
        }
        DAOFactory::getUsuarioEmpresaDAO()->deleteByEmpresaId($idEmpresa);
        DAOFactory::getEmpresaDAO()->delete($idEmpresa);
        DAOFactory::getDireccionDAO()->delete($empresa->direccionId);
        if ($transactional) {
            $transaction->commit();
        }
        return true;
    } catch (Exception $e) {
        print_r($e);
        if ($transaction) {
            $transaction->rollback();
        }
        return false;
    }
}
예제 #3
0
function deleteEvento($eventoId)
{
    try {
        $transaction = new Transaction();
        deleteTicketsByEvento($eventoId, $transactional);
        $evento = DAOFactory::getEventoDAO()->load($eventoId);
        DAOFactory::getEventoCondicionDAO()->deleteByEventoId($evento->id);
        $h_archivos = DAOFactory::getEventoArchivoDAO()->queryByEventoId($eventoId);
        if ($h_archivos && is_array($h_archivos)) {
            foreach ($h_archivos as $h_a) {
                $d = DAOFactory::getEventoArchivoDAO()->delete($h_a->id);
                if (!$d) {
                    throw new Exception("Error:delete evento archivos.");
                }
                $file = DAOFactory::getArchivoDAO()->load($h_a->archivoId);
                $dir = str_replace($base_url, $app_dir, $file->ruta);
                $dir = str_replace('//', '/', $dir);
                if (file_exists($dir)) {
                    unlink($dir);
                }
                $d = DAOFactory::getArchivoDAO()->delete($h_a->archivoId);
                if (!$d) {
                    throw new Exception("Error:delete archivos");
                }
            }
        }
        DAOFactory::getConfiguracionEventoDAO()->deleteByEventoId($eventoId);
        $deleted = DAOFactory::getEventoDAO()->delete($eventoId);
        $d = DAOFactory::getDireccionDAO()->delete($evento->direccionId);
        $transaction->commit();
        return $deleted;
    } catch (Exception $e) {
        var_dump($e);
        if ($transaction) {
            $transaction->rollback();
        }
        return false;
    }
}
예제 #4
0
function getDireccion($id)
{
    try {
        $direccion = DAOFactory::getDireccionDAO()->load($id);
        return $direccion;
    } catch (Exception $e) {
        var_dump($e);
        return false;
    }
}
예제 #5
0
function getDireccionByHotel($idHotel)
{
    try {
        $hd = DAOFactory::getHotelDireccionDAO()->queryByHotelId($idHotel);
        if ($hd && count($hd)) {
            $direccion = DAOFactory::getDireccionDAO()->load($hd[0]->direccionId);
            return $direccion;
        }
        return false;
    } catch (Exception $e) {
        var_dump($e);
        return false;
    }
}
예제 #6
0
function deleteAfiliado($idAfiliado)
{
    try {
        $transaction = new Transaction();
        DAOFactory::getAfiliadoHotelDAO()->deleteByAfiliadoId($idAfiliado);
        DAOFactory::getAfiliadoEventoDAO()->deleteByAfiliadoId($idAfiliado);
        $afiliado = DAOFactory::getAfiliadoDAO()->load($idAfiliado);
        $cuenta = array_pop(DAOFactory::getUsuarioCuentaDAO()->queryByUsuarioId($afiliado->usuarioId));
        if ($cuenta) {
            DAOFactory::getUsuarioCuentaDAO()->deleteByUsuarioId($afiliado->usuarioId);
            DAOFactory::getDireccionDAO()->delete($cuenta->direccionId);
        }
        DAOFactory::getAfiliadoDAO()->delete($idAfiliado);
        $result = DAOFactory::getUsuarioDAO()->delete($afiliado->usuarioId);
        $transaction->commit();
        return $result;
    } catch (Exception $e) {
        print_r($e);
        if ($transaction) {
            $transaction->rollback();
        }
        return false;
    }
}
예제 #7
0
function deleteDestino($id)
{
    try {
        $transaction = new Transaction();
        $destino = DAOFactory::getDestinoTuristicoDAO()->load($id);
        $destinos_archivos = DAOFactory::getDestinoArchivoDAO()->queryByDestinoId($id);
        foreach ($destinos_archivos as $da) {
            DAOFactory::getDestinoArchivoDAO()->delete($da->id);
            DAOFactory::getArchivoDAO()->delete($da->archivoId);
        }
        $hoteles = DAOFactory::getHotelDAO()->queryByDestinoId($id);
        foreach ($hoteles as $hotel) {
            $hotel->destinoId = NULL;
            DAOFactory::getHotelDAO()->update($hotel);
        }
        DAOFactory::getDestinoTuristicoDAO()->delete($id);
        DAOFactory::getDireccionDAO()->delete($destino->direccionId);
        $transaction->commit();
        return true;
    } catch (Exception $e) {
        var_dump($e);
        if ($transaction) {
            $transaction->rollback();
        }
        return false;
    }
}