|
|
|
@ -418,9 +418,9 @@ class License(models.Model): |
|
|
|
date_from = models.DateField(u'дата начала', null=True, blank=True) |
|
|
|
date_from = models.DateField(u'дата начала', null=True, blank=True) |
|
|
|
date_to = models.DateField(u'дата окончания', null=True, blank=True) |
|
|
|
date_to = models.DateField(u'дата окончания', null=True, blank=True) |
|
|
|
payform = models.IntegerField(verbose_name=u'форма оплаты', |
|
|
|
payform = models.IntegerField(verbose_name=u'форма оплаты', |
|
|
|
choices=consts.PAYFORMS, default=0) |
|
|
|
choices=consts.PAYFORMS, default=consts.PAYFORM_BEZNAL) |
|
|
|
status = models.IntegerField(verbose_name=u'статус лицензии', |
|
|
|
status = models.IntegerField(verbose_name=u'статус лицензии', |
|
|
|
choices=consts.LICENSE_STATUSES, default=0) |
|
|
|
choices=consts.LICENSE_STATUSES, default=consts.LICENSE_UNPAID) |
|
|
|
order_date = models.DateField(verbose_name=u'дата заказа', auto_now_add=True) |
|
|
|
order_date = models.DateField(verbose_name=u'дата заказа', auto_now_add=True) |
|
|
|
paid_date = models.DateField(verbose_name=u'дата оплаты', null=True, blank=True) |
|
|
|
paid_date = models.DateField(verbose_name=u'дата оплаты', null=True, blank=True) |
|
|
|
pay_sum= models.IntegerField(verbose_name=u'сумма оплаты') |
|
|
|
pay_sum= models.IntegerField(verbose_name=u'сумма оплаты') |
|
|
|
@ -449,7 +449,7 @@ class License(models.Model): |
|
|
|
self.date_to = self.date_from + relativedelta(months=self.term, days=-1) |
|
|
|
self.date_to = self.date_from + relativedelta(months=self.term, days=-1) |
|
|
|
self.company.active = True |
|
|
|
self.company.active = True |
|
|
|
self.company.save() |
|
|
|
self.company.save() |
|
|
|
self.status = 1 |
|
|
|
self.status = consts.LICENSE_PAID |
|
|
|
utils.check_one_profile(self.company, License, datetime.now(), manual=True) |
|
|
|
utils.check_one_profile(self.company, License, datetime.now(), manual=True) |
|
|
|
|
|
|
|
|
|
|
|
super(License, self).save(*args, **kwargs) |
|
|
|
super(License, self).save(*args, **kwargs) |
|
|
|
@ -458,31 +458,30 @@ class License(models.Model): |
|
|
|
return self.company.get_company_name() |
|
|
|
return self.company.get_company_name() |
|
|
|
|
|
|
|
|
|
|
|
def get_action_link(self): |
|
|
|
def get_action_link(self): |
|
|
|
|
|
|
|
if self.status == consts.LICENSE_UNPAID: |
|
|
|
if self.status == 0: |
|
|
|
if self.payform == consts.PAYFORM_BEZNAL: |
|
|
|
if self.payform == 0: |
|
|
|
|
|
|
|
return u'<a href="%s">Скачать счёт</a>' % reverse('customer_license_get_doc', kwargs={'order_num': self.id}) |
|
|
|
return u'<a href="%s">Скачать счёт</a>' % reverse('customer_license_get_doc', kwargs={'order_num': self.id}) |
|
|
|
elif self.payform == 1: |
|
|
|
elif self.payform == consts.PAYFORM_CARD: |
|
|
|
return u'Оплатить счёт' |
|
|
|
return u'Оплатить счёт' |
|
|
|
elif self.payform == 2: |
|
|
|
elif self.payform == consts.PAYFORM_SBER_KVITANZ: # не используется. однако могут быть старые лицензии с данной формой оплаты |
|
|
|
return u'<a href="%s">Скачать квитанцию</a>' % reverse('customer_license_get_doc', kwargs={'order_num': self.id}) |
|
|
|
return u'<a href="%s">Скачать квитанцию</a>' % reverse('customer_license_get_doc', kwargs={'order_num': self.id}) |
|
|
|
elif self.status in [1, 2]: |
|
|
|
elif self.status in [consts.LICENSE_PAID, consts.LICENSE_ACTIVE]: |
|
|
|
return u'История операций' |
|
|
|
return u'История операций' |
|
|
|
else: |
|
|
|
else: |
|
|
|
return '' |
|
|
|
return '' |
|
|
|
|
|
|
|
|
|
|
|
def get_term(self): |
|
|
|
def get_term(self): |
|
|
|
if self.term == 0: |
|
|
|
if self.term == consts.LICENSE_TEST_PERIOD_TERM: |
|
|
|
return u'45 дней' |
|
|
|
return u'%d дней' % consts.LICENSE_TEST_PERIOD_DAYS |
|
|
|
else: |
|
|
|
else: |
|
|
|
return u'%s %s' % (self.term, |
|
|
|
return u'%s %s' % (self.term, |
|
|
|
numeral.choose_plural(self.term, u"месяц, месяца, месяцев"), |
|
|
|
numeral.choose_plural(self.term, u"месяц, месяца, месяцев"), |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
def get_paid_status(self): |
|
|
|
def get_paid_status(self): |
|
|
|
if self.status == 1: |
|
|
|
if self.status == consts.LICENSE_PAID: |
|
|
|
return u'Лицензия оплачена, ещё не активирована' |
|
|
|
return u'Лицензия оплачена, ещё не активирована' |
|
|
|
elif self.status in [2, -1]: |
|
|
|
elif self.status in [consts.LICENSE_ACTIVE, consts.LICENSE_TEST_PERIOD]: |
|
|
|
left = relativedelta(self.date_to, datetime.today()) |
|
|
|
left = relativedelta(self.date_to, datetime.today()) |
|
|
|
if left.months: |
|
|
|
if left.months: |
|
|
|
left_str = '%d %s %d %s' % (left.months, |
|
|
|
left_str = '%d %s %d %s' % (left.months, |
|
|
|
@ -496,7 +495,7 @@ class License(models.Model): |
|
|
|
numeral.choose_plural(left.days, u"день, дня, дней"), |
|
|
|
numeral.choose_plural(left.days, u"день, дня, дней"), |
|
|
|
) |
|
|
|
) |
|
|
|
return u'Лицензия активирована: осталось %s' % left_str |
|
|
|
return u'Лицензия активирована: осталось %s' % left_str |
|
|
|
elif self.status == 3: |
|
|
|
elif self.status == consts.LICENSE_EXPIRED: |
|
|
|
return u'Время истекло' |
|
|
|
return u'Время истекло' |
|
|
|
else: |
|
|
|
else: |
|
|
|
return None |
|
|
|
return None |
|
|
|
|