mirror of
https://github.com/ae-utbm/sith.git
synced 2025-07-12 04:49:25 +00:00
All: Apply Black coding rules
This commit is contained in:
@ -31,59 +31,82 @@ from django.conf import settings
|
||||
|
||||
from counter.models import Counter, ProductType
|
||||
|
||||
|
||||
class Stock(models.Model):
|
||||
"""
|
||||
The Stock class, this one is used to know how many products are left for a specific counter
|
||||
"""
|
||||
name = models.CharField(_('name'), max_length=64)
|
||||
counter = models.OneToOneField(Counter, verbose_name=_('counter'), related_name='stock')
|
||||
|
||||
name = models.CharField(_("name"), max_length=64)
|
||||
counter = models.OneToOneField(
|
||||
Counter, verbose_name=_("counter"), related_name="stock"
|
||||
)
|
||||
|
||||
def __str__(self):
|
||||
return "%s (%s)" % (self.name, self.counter)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('stock:list')
|
||||
return reverse("stock:list")
|
||||
|
||||
def can_be_viewed_by(self, user):
|
||||
return user.is_in_group(settings.SITH_GROUP_COUNTER_ADMIN_ID)
|
||||
|
||||
|
||||
class StockItem(models.Model):
|
||||
"""
|
||||
The StockItem class, element of the stock
|
||||
"""
|
||||
name = models.CharField(_('name'), max_length=64)
|
||||
unit_quantity = models.IntegerField(_('unit quantity'), default=0, help_text=_('number of element in one box'))
|
||||
effective_quantity = models.IntegerField(_('effective quantity'), default=0, help_text=_('number of box'))
|
||||
minimal_quantity = models.IntegerField(_('minimal quantity'), default=1,
|
||||
help_text=_('if the effective quantity is less than the minimal, item is added to the shopping list'))
|
||||
type = models.ForeignKey(ProductType, related_name="stock_items", verbose_name=_("type"), null=True, blank=True,
|
||||
on_delete=models.SET_NULL)
|
||||
|
||||
name = models.CharField(_("name"), max_length=64)
|
||||
unit_quantity = models.IntegerField(
|
||||
_("unit quantity"), default=0, help_text=_("number of element in one box")
|
||||
)
|
||||
effective_quantity = models.IntegerField(
|
||||
_("effective quantity"), default=0, help_text=_("number of box")
|
||||
)
|
||||
minimal_quantity = models.IntegerField(
|
||||
_("minimal quantity"),
|
||||
default=1,
|
||||
help_text=_(
|
||||
"if the effective quantity is less than the minimal, item is added to the shopping list"
|
||||
),
|
||||
)
|
||||
type = models.ForeignKey(
|
||||
ProductType,
|
||||
related_name="stock_items",
|
||||
verbose_name=_("type"),
|
||||
null=True,
|
||||
blank=True,
|
||||
on_delete=models.SET_NULL,
|
||||
)
|
||||
stock_owner = models.ForeignKey(Stock, related_name="items")
|
||||
|
||||
def __str__(self):
|
||||
return "%s" % (self.name)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('stock:items_list', kwargs={'stock_id':self.stock_owner.id})
|
||||
return reverse("stock:items_list", kwargs={"stock_id": self.stock_owner.id})
|
||||
|
||||
def can_be_viewed_by(self, user):
|
||||
return user.is_in_group(settings.SITH_GROUP_COUNTER_ADMIN_ID)
|
||||
|
||||
|
||||
class ShoppingList(models.Model):
|
||||
"""
|
||||
The ShoppingList class, used to make an history of the shopping lists
|
||||
"""
|
||||
date = models.DateTimeField(_('date'))
|
||||
name = models.CharField(_('name'), max_length=64)
|
||||
todo = models.BooleanField(_('todo'))
|
||||
comment = models.TextField(_('comment'), null=True, blank=True)
|
||||
|
||||
date = models.DateTimeField(_("date"))
|
||||
name = models.CharField(_("name"), max_length=64)
|
||||
todo = models.BooleanField(_("todo"))
|
||||
comment = models.TextField(_("comment"), null=True, blank=True)
|
||||
stock_owner = models.ForeignKey(Stock, null=True, related_name="shopping_lists")
|
||||
|
||||
def __str__(self):
|
||||
return "%s (%s)" % (self.name, self.date)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('stock:shoppinglist_list')
|
||||
return reverse("stock:shoppinglist_list")
|
||||
|
||||
def can_be_viewed_by(self, user):
|
||||
return user.is_in_group(settings.SITH_GROUP_COUNTER_ADMIN_ID)
|
||||
@ -92,13 +115,34 @@ class ShoppingList(models.Model):
|
||||
class ShoppingListItem(models.Model):
|
||||
"""
|
||||
"""
|
||||
shopping_lists = models.ManyToManyField(ShoppingList, verbose_name=_("shopping lists"), related_name="shopping_items_to_buy")
|
||||
stockitem_owner = models.ForeignKey(StockItem, related_name="shopping_item", null=True)
|
||||
name = models.CharField(_('name'), max_length=64)
|
||||
type = models.ForeignKey(ProductType, related_name="shoppinglist_items", verbose_name=_("type"), null=True, blank=True,
|
||||
on_delete=models.SET_NULL)
|
||||
tobuy_quantity = models.IntegerField(_('quantity to buy'), default=6, help_text=_("quantity to buy during the next shopping session"))
|
||||
bought_quantity = models.IntegerField(_('quantity bought'), default=0, help_text=_("quantity bought during the last shopping session"))
|
||||
|
||||
shopping_lists = models.ManyToManyField(
|
||||
ShoppingList,
|
||||
verbose_name=_("shopping lists"),
|
||||
related_name="shopping_items_to_buy",
|
||||
)
|
||||
stockitem_owner = models.ForeignKey(
|
||||
StockItem, related_name="shopping_item", null=True
|
||||
)
|
||||
name = models.CharField(_("name"), max_length=64)
|
||||
type = models.ForeignKey(
|
||||
ProductType,
|
||||
related_name="shoppinglist_items",
|
||||
verbose_name=_("type"),
|
||||
null=True,
|
||||
blank=True,
|
||||
on_delete=models.SET_NULL,
|
||||
)
|
||||
tobuy_quantity = models.IntegerField(
|
||||
_("quantity to buy"),
|
||||
default=6,
|
||||
help_text=_("quantity to buy during the next shopping session"),
|
||||
)
|
||||
bought_quantity = models.IntegerField(
|
||||
_("quantity bought"),
|
||||
default=0,
|
||||
help_text=_("quantity bought during the last shopping session"),
|
||||
)
|
||||
|
||||
def __str__(self):
|
||||
return "%s - %s" % (self.name, self.shopping_lists.first())
|
||||
@ -107,5 +151,4 @@ class ShoppingListItem(models.Model):
|
||||
return user.is_in_group(settings.SITH_GROUP_COUNTER_ADMIN_ID)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('stock:shoppinglist_list')
|
||||
|
||||
return reverse("stock:shoppinglist_list")
|
||||
|
Reference in New Issue
Block a user