#ifndef CERTAMEN_H
#define CERTAMEN_H

#include "ActividadAcademica.h" // ¡Ahora hereda de ActividadAcademica!
#include "Ramo.h"

class Certamen : public ActividadAcademica {
public:
    // Constructor modificado
    Certamen(int id, const QString& nombre, const QString& descripcion,
             const QDate& fechaInicio, const QDate& fechaFin, Ramo* ramoAsociado,
             const QString& sala, const QString& tipoCertamen,
             // Atributos de evaluación se pasan a ActividadAcademica
             float ponderacion = 0.0f, float notaObtenida = -1.0f,
             float estimacionHoras = 0.0f, // Estimación de horas
             QObject* parent = nullptr);

    // Getters específicos de Certamen
    QString getSala() const;
    QString getTipoCertamen() const;

    // Setters específicos de Certamen
    void setSala(const QString& sala);
    void setTipoCertamen(const QString& tipoCertamen);

    // Implementaciones de métodos virtuales de ActividadAcademica
    QString obtenerTipoActividad() const override;
    void mostrarDetalles() const override;

private:
    QString m_sala;
    QString m_tipoCertamen;
};

#endif // CERTAMEN_H