from dostadmin import db
from dostadmin.mixins import TimestampMixin
from flask_sqlalchemy.query import Query as BaseQuery


class ActivityFinanceDetails(TimestampMixin, db.Model):
    __tablename__ = "activity_finance_details"

    id = db.Column(db.Integer, primary_key=True)

    activity_id = db.Column(
        db.Integer,
        db.ForeignKey("activities.id", ondelete="CASCADE"),
        nullable=False,
        unique=True,
    )

    expense_purpose = db.Column(db.String(255), nullable=False)
    travel_expense = db.Column(db.Integer, default=0)
    lodging_expense = db.Column(db.Integer, default=0)
    food_expense = db.Column(db.Integer, default=0)
    collateral_expense = db.Column(db.Integer, default=0)
    refreshment_expense = db.Column(db.Integer, default=0)
    finance_comments = db.Column(db.String(1000))
    created_by = db.Column(db.String(50), nullable=False)
