Beispiel #1
0
 def excel_colonne(self):
     anno = self.modulo_riempito.cleaned_data['anno']
     return super(ElencoQuote, self).excel_colonne() + (
         ("Importo quota", lambda p: ', '.join([testo_euro(q.importo_totale) for q in p.quote_anno(anno, stato=Quota.REGISTRATA)])),
         ("Data versamento", lambda p: ', '.join([q.data_versamento.strftime('%d/%m/%y') for q in p.quote_anno(anno, stato=Quota.REGISTRATA)])),
         ("Registrata da", lambda p: ', '.join([q.registrato_da.nome_completo for q in p.quote_anno(anno, stato=Quota.REGISTRATA)])),
     )
Beispiel #2
0
 def excel_colonne(self):
     anno = self.modulo_riempito.cleaned_data['anno']
     return super(ElencoQuote, self).excel_colonne() + (
         ("Importo quota", lambda p: ', '.join([testo_euro(q.importo_totale) for q in p.quote_anno(anno, stato=Quota.REGISTRATA)])),
         ("Data versamento", lambda p: ', '.join([q.data_versamento.strftime('%d/%m/%y') for q in p.quote_anno(anno, stato=Quota.REGISTRATA)])),
         ("Registrata da", lambda p: ', '.join([q.registrato_da.nome_completo for q in p.quote_anno(anno, stato=Quota.REGISTRATA)])),
     )
Beispiel #3
0
    def clean_quota(self, data):

        volontario = data.get('volontario', None)
        riduzione = data.get('riduzione', None)
        importo = data.get('importo', None)
        data_versamento = data.get('data_versamento', None)
        if not volontario or not data_versamento or not importo:
            return data

        anno_corrente = data_versamento.year

        try:
            tesseramento = Tesseramento.objects.get(anno=anno_corrente)
        except Tesseramento.DoesNotExist:
            tesseramento = None

        if tesseramento:
            if importo < tesseramento.importo_quota_volontario(riduzione):
                self.add_error('importo', 'L\'importo minimo per il %d e\' di EUR %s.' % (
                    anno_corrente, testo_euro(tesseramento.importo_quota_volontario(riduzione))
                ))

            elif data_versamento.year != anno_corrente or data_versamento > now().date():
                self.add_error('data_versamento', 'La data di versamento deve essere nel %d e '
                                                  'non può essere nel futuro.' % anno_corrente)

            elif not Tesseramento.aperto_anno(
                    data_versamento, volontario.iv, volontario.volontario_da_meno_di_un_anno
            ):
                if volontario.iv:
                    data_fine = tesseramento.fine_soci_iv
                elif volontario.volontario_da_meno_di_un_anno:
                    data_fine = tesseramento.fine_soci_nv
                else:
                    data_fine = tesseramento.fine_soci
                if data_fine:
                    self.add_error('data_versamento',
                                   "Spiacente, non è possibile registrare una "
                                   "quota con data di versamento successiva al "
                                   "%s" % data_fine)
                else:
                    self.add_error('data_versamento',
                                   "Spiacente, non è possibile registrare una "
                                   "quota perché il tesseramento %s è chiuso" % anno_corrente)

            elif tesseramento.pagante(volontario, attivi=True, ordinari=False):
                self.add_error('volontario', 'Questo volontario ha già pagato la Quota '
                                             'associativa per l\'anno %d' % anno_corrente)

            elif not tesseramento.non_pagante(volontario, attivi=True, ordinari=False):
                self.add_error('volontario', 'Questo volontario non è passibile al pagamento '
                                             'della Quota associativa come Volontario presso '
                                             'una delle tue Sedi, per l\'anno %d.' % anno_corrente)

        return data
Beispiel #4
0
    def clean_quota(self, data):

        volontario = data.get('volontario', None)
        riduzione = data.get('riduzione', None)
        importo = data.get('importo', None)
        data_versamento = data.get('data_versamento', None)
        if not volontario or not data_versamento or not importo:
            return data

        anno_corrente = data_versamento.year

        try:
            tesseramento = Tesseramento.objects.get(anno=anno_corrente)
        except Tesseramento.DoesNotExist:
            tesseramento = None

        if tesseramento:
            if importo < tesseramento.importo_quota_volontario(riduzione):
                self.add_error('importo', 'L\'importo minimo per il %d e\' di EUR %s.' % (
                    anno_corrente, testo_euro(tesseramento.importo_quota_volontario(riduzione))
                ))

            elif data_versamento.year != anno_corrente or data_versamento > now().date():
                self.add_error('data_versamento', 'La data di versamento deve essere nel %d e '
                                                  'non può essere nel futuro.' % anno_corrente)

            elif not Tesseramento.aperto_anno(
                    data_versamento, volontario.iv, volontario.volontario_da_meno_di_un_anno
            ):
                if volontario.iv:
                    data_fine = tesseramento.fine_soci_iv
                elif volontario.volontario_da_meno_di_un_anno:
                    data_fine = tesseramento.fine_soci_nv
                else:
                    data_fine = tesseramento.fine_soci
                if data_fine:
                    self.add_error('data_versamento',
                                   "Spiacente, non è possibile registrare una "
                                   "quota con data di versamento successiva al "
                                   "%s" % data_fine)
                else:
                    self.add_error('data_versamento',
                                   "Spiacente, non è possibile registrare una "
                                   "quota perché il tesseramento %s è chiuso" % anno_corrente)

            elif tesseramento.pagante(volontario, attivi=True, ordinari=False):
                self.add_error('volontario', 'Questo volontario ha già pagato la Quota '
                                             'associativa per l\'anno %d' % anno_corrente)

            elif not tesseramento.non_pagante(volontario, attivi=True, ordinari=False):
                self.add_error('volontario', 'Questo volontario non è passibile al pagamento '
                                             'della Quota associativa come Volontario presso '
                                             'una delle tue Sedi, per l\'anno %d.' % anno_corrente)

        return data
Beispiel #5
0
def euro(context, numero):
    return mark_safe(testo_euro(numero, simbolo_html=True))
Beispiel #6
0
def euro(context, numero):
    return mark_safe(testo_euro(numero, simbolo_html=True))