# payments/models.py
from django.db import models
from orders.models import Order

# payments/models.py

class Payment(models.Model):

    STATUS_CHOICES = [
        ('NOT_PAID', 'Not Paid'),
        ('PENDING', 'Pending Verification'),
        ('PAID', 'Paid'),
        ('CASH_COLLECTED', 'Cash Collected'),
        ('REJECTED', 'Rejected'),
    ]

    METHOD_CHOICES = [
        ('BANK', 'Bank Transfer'),
        ('CASH', 'Cash'),
    ]

    order = models.OneToOneField(Order, on_delete=models.CASCADE)
    method = models.CharField(max_length=20, choices=METHOD_CHOICES, default='BANK')
    status = models.CharField(max_length=20, choices=STATUS_CHOICES, default='NOT_PAID')
    screenshot = models.ImageField(upload_to='payments/', blank=True, null=True)
    paid_at = models.DateTimeField(null=True, blank=True)

    def __str__(self):
        return f"Payment for Order {self.order.id}"
