"""add kas and payment fields to laporan_shift

Revision ID: d6g7h8i9j0k1
Revises: c5f6g7h8i9j0
Create Date: 2026-04-12

"""
from alembic import op
import sqlalchemy as sa
from decimal import Decimal

revision = 'd6g7h8i9j0k1'
down_revision = 'c5f6g7h8i9j0'
branch_labels = None
depends_on = None


def upgrade() -> None:
    # Cash denomination amounts
    for col in ['kas_100k', 'kas_50k', 'kas_20k', 'kas_10k', 'kas_5k', 'kas_2k', 'kas_1k', 'kas_logam']:
        op.add_column('laporan_shift',
            sa.Column(col, sa.Numeric(15, 3), nullable=False, server_default='0')
        )
    # Non-cash payment totals
    for col in ['pembayaran_kartu', 'pembayaran_qr', 'pembayaran_instansi']:
        op.add_column('laporan_shift',
            sa.Column(col, sa.Numeric(15, 3), nullable=False, server_default='0')
        )


def downgrade() -> None:
    for col in ['kas_100k', 'kas_50k', 'kas_20k', 'kas_10k', 'kas_5k', 'kas_2k', 'kas_1k',
                'kas_logam', 'pembayaran_kartu', 'pembayaran_qr', 'pembayaran_instansi']:
        op.drop_column('laporan_shift', col)
