from django.db import models from Accounts.models import Profile class Reward(models.Model): REWARD_TYPES = [ ('discount', 'Discount'), ('free_box', 'Free Box'), ('coupon', 'Coupon'), ('credits', 'Credits'), ] user = models.ForeignKey(Profile, on_delete=models.CASCADE) reward_type = models.CharField(max_length=20, choices=REWARD_TYPES) value = models.CharField(max_length=100) redeemed = models.BooleanField(default=False) created_at = models.DateTimeField(auto_now_add=True) def __str__(self): return f"{self.reward_type} ({self.value}) for {self.user.user.username}" class SpinWheelHistory(models.Model): user = models.ForeignKey(Profile, on_delete=models.CASCADE) reward = models.ForeignKey(Reward, on_delete=models.SET_NULL, null=True, blank=True) spun_at = models.DateTimeField(auto_now_add=True) def __str__(self): return f"{self.user.user.username} spun at {self.spun_at}"