mirror of
https://github.com/ae-utbm/sith.git
synced 2025-07-10 03:49:24 +00:00
Big refactor: remove Subscriber class
This commit is contained in:
@ -139,7 +139,7 @@ class Migration(migrations.Migration):
|
||||
migrations.AddField(
|
||||
model_name='counter',
|
||||
name='sellers',
|
||||
field=models.ManyToManyField(related_name='counters', to='subscription.Subscriber', blank=True, verbose_name='sellers'),
|
||||
field=models.ManyToManyField(related_name='counters', to='core.User', blank=True, verbose_name='sellers'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='counter',
|
||||
|
@ -16,8 +16,7 @@ import datetime
|
||||
from club.models import Club
|
||||
from accounting.models import CurrencyField
|
||||
from core.models import Group, User, Notification
|
||||
from subscription.models import Subscriber, Subscription
|
||||
from subscription.views import get_subscriber
|
||||
from subscription.models import Subscription
|
||||
|
||||
class Customer(models.Model):
|
||||
"""
|
||||
@ -134,7 +133,7 @@ class Counter(models.Model):
|
||||
type = models.CharField(_('counter type'),
|
||||
max_length=255,
|
||||
choices=[('BAR',_('Bar')), ('OFFICE',_('Office')), ('EBOUTIC',_('Eboutic'))])
|
||||
sellers = models.ManyToManyField(Subscriber, verbose_name=_('sellers'), related_name='counters', blank=True)
|
||||
sellers = models.ManyToManyField(User, verbose_name=_('sellers'), related_name='counters', blank=True)
|
||||
edit_groups = models.ManyToManyField(Group, related_name="editable_counters", blank=True)
|
||||
view_groups = models.ManyToManyField(Group, related_name="viewable_counters", blank=True)
|
||||
token = models.CharField(_('token'), max_length=30, null=True, blank=True)
|
||||
@ -164,7 +163,7 @@ class Counter(models.Model):
|
||||
def can_be_viewed_by(self, user):
|
||||
if self.type == "BAR" or self.type == "EBOUTIC":
|
||||
return True
|
||||
sub = get_subscriber(request.user)
|
||||
sub = request.user
|
||||
return user.is_in_group(settings.SITH_MAIN_BOARD_GROUP) or sub in self.sellers
|
||||
|
||||
def gen_token(self):
|
||||
@ -349,7 +348,7 @@ class Selling(models.Model):
|
||||
self.customer.save()
|
||||
self.is_validated = True
|
||||
if self.product and self.product.id == settings.SITH_PRODUCT_SUBSCRIPTION_ONE_SEMESTER:
|
||||
s = Subscriber.objects.filter(id=self.customer.user.id).first()
|
||||
s = User.objects.filter(id=self.customer.user.id).first()
|
||||
sub = Subscription(
|
||||
member=s,
|
||||
subscription_type='un-semestre',
|
||||
@ -364,7 +363,7 @@ class Selling(models.Model):
|
||||
start=sub.subscription_start)
|
||||
sub.save()
|
||||
elif self.product and self.product.id == settings.SITH_PRODUCT_SUBSCRIPTION_TWO_SEMESTERS:
|
||||
s = Subscriber.objects.filter(id=self.customer.user.id).first()
|
||||
s = User.objects.filter(id=self.customer.user.id).first()
|
||||
sub = Subscription(
|
||||
member=s,
|
||||
subscription_type='deux-semestres',
|
||||
|
@ -22,8 +22,7 @@ from ajax_select import make_ajax_form, make_ajax_field
|
||||
from core.views import CanViewMixin, CanEditMixin, CanEditPropMixin, CanCreateMixin, TabedViewMixin
|
||||
from core.views.forms import SelectUser, LoginForm, SelectDate, SelectDateTime
|
||||
from core.models import User
|
||||
from subscription.models import Subscriber, Subscription
|
||||
from subscription.views import get_subscriber
|
||||
from subscription.models import Subscription
|
||||
from counter.models import Counter, Customer, Product, Selling, Refilling, ProductType, CashRegisterSummary, CashRegisterSummaryItem, Eticket
|
||||
from accounting.models import CurrencyField
|
||||
|
||||
@ -49,7 +48,7 @@ class GetUserForm(forms.Form):
|
||||
cus = Customer.objects.filter(account_id__iexact=cleaned_data['code']).first()
|
||||
elif cleaned_data['id'] is not None:
|
||||
cus = Customer.objects.filter(user=cleaned_data['id']).first()
|
||||
sub = get_subscriber(cus.user) if cus is not None else None
|
||||
sub = cus.user if cus is not None else None
|
||||
if (cus is None or sub is None or not sub.subscriptions.last() or
|
||||
(date.today() - sub.subscriptions.last().subscription_end) > timedelta(days=90)):
|
||||
raise forms.ValidationError(_("User not found"))
|
||||
|
Reference in New Issue
Block a user