File size: 1,013 Bytes
4b2adab
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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}"