2021-08-22 20:10:29 +02:00
|
|
|
from django.db import models
|
|
|
|
from simple_history.models import HistoricalRecords
|
|
|
|
|
2021-08-29 22:09:22 +02:00
|
|
|
from characters.models import Character
|
2021-09-15 16:51:43 +02:00
|
|
|
from common.models import DescriptionModel, HistoryModel
|
2021-09-06 20:34:43 +02:00
|
|
|
from locations.models import Location
|
2021-08-22 20:10:29 +02:00
|
|
|
|
|
|
|
|
2021-09-15 16:51:43 +02:00
|
|
|
class Loot(DescriptionModel, HistoryModel):
|
2021-08-22 20:10:29 +02:00
|
|
|
name = models.CharField(max_length=1000)
|
|
|
|
quantity = models.PositiveSmallIntegerField()
|
|
|
|
value_gold = models.DecimalField("Value (Gold)", max_digits=7, decimal_places=2)
|
2021-09-15 16:51:43 +02:00
|
|
|
owner = models.ForeignKey(Character, on_delete=models.PROTECT, blank=True, null=True, verbose_name="Claimant")
|
2021-09-06 20:34:43 +02:00
|
|
|
location = models.ForeignKey(Location, on_delete=models.PROTECT, blank=True, null=True)
|
2021-08-22 20:10:29 +02:00
|
|
|
magic_item = models.BooleanField(default=False)
|
|
|
|
|
2021-08-28 19:52:07 +02:00
|
|
|
class Meta:
|
|
|
|
ordering = ["name"]
|
|
|
|
|
2021-08-22 20:10:29 +02:00
|
|
|
@property
|
|
|
|
def value_per_unit(self):
|
|
|
|
return self.value_gold / self.quantity
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
return self.name
|