Abrechnung angepasst
This commit is contained in:
parent
746e797ac6
commit
0d31f2b7fe
|
|
@ -57,7 +57,7 @@ class AgencyBillPlan(forms.ModelForm):
|
|||
"agency_email" : "E-Mail",
|
||||
"phone" : "Telefon",
|
||||
"agb" : "AGB akzeptieren",
|
||||
"contract" : "Auftragsdatenverarbeitung akzeptieren"
|
||||
"contract" : "AV-Vertrag akzeptieren"
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -77,7 +77,7 @@ class AgencyBillPlan(forms.ModelForm):
|
|||
self.fields['city'] = forms.CharField(required=True, label="Stadt")
|
||||
|
||||
self.fields['agb'] = forms.BooleanField(required=True, label="AGB's akzeptieren")
|
||||
self.fields['contract'] = forms.BooleanField(required=True, label="Auftragsdatenverarbeitung akzeptieren")
|
||||
self.fields['contract'] = forms.BooleanField(required=True, label="AV-Vertrag akzeptieren")
|
||||
|
||||
|
||||
class AgencyEndBillPlan(forms.ModelForm):
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@
|
|||
</tr>
|
||||
<tr>
|
||||
{% loadUserCount request.user as usercount %}
|
||||
<td>Zusätzliche Nutzer (3,00 € pro Nutzer)</td><td>{{usercount}}</td>
|
||||
{% loadUserCountMoney request.user as usercount_pay %}
|
||||
<td>{{usercount}} zusätzliche Nutzer (3,00 € pro Nutzer)</td><td>{{usercount_pay|floatformat:2}} €</td>
|
||||
</tr>
|
||||
<tr>
|
||||
{% loadMWST user as mwst %}
|
||||
|
|
@ -35,24 +36,20 @@
|
|||
<h5 class="card-title">Ihre Zahlungsweise</h5>
|
||||
|
||||
{% getNextMonth request.user.profile.agency as nextMonth %}
|
||||
Ihre Agentur wurde am {{ request.user.profile.agency.registerdate|date:"d.m.Y" }} registriert.
|
||||
{% if bills|length == 0 %}
|
||||
Es wurde noch kein Abonnement gestartet und keine Rechnungen gefunden. Sie können die Digitale Agentur bis zum {{nextMonth|date:"d.m.Y"}} kostenlos nutzen. Möchten Sie die Digitale Agentur auch nach diesem Zeitraum nutzen, starten Sie bitte ein neues Abonnement.
|
||||
<br />
|
||||
<a href="{% url 'ag-billplanupdate' request.user.profile.agency.pk %}" class="btn btn-primary btn mt-2" onclick="">Abonnement starten</a>
|
||||
{% elif bills|length > 0 and request.user.profile.agency.paymentplan == 0 %}
|
||||
Ihre aktuelle Rechnungen erlaubt Ihnen die Nutzung der digitalen Agentur bis zum {{bills.0.end|date:"d.m.Y"}}. Danach wird der Zugang gesperrt. Starten Sie ein neues Abonnement, um die digitale Agentur auch weiterhin zu nutzen.<br />
|
||||
Ihre aktuelle Rechnungen erlaubt Ihnen die Nutzung der Digitalen Agentur bis zum {{bills.0.end|date:"d.m.Y"}}. Danach wird der Zugang gesperrt. Starten Sie ein neues Abonnement, um die Digitale Agentur auch weiterhin zu nutzen.<br />
|
||||
<a href="{% url 'ag-billplanupdate' request.user.profile.agency.pk %}" class="btn btn-primary btn mt-2" onclick="">Abonnement starten</a>
|
||||
{% else %}
|
||||
<br />
|
||||
Nächste Rechnungserstellung am {{bills.0.end|date:"d.m.Y"}}<br />
|
||||
Die Abrechnung erfolgt monatlich. Die nächste Rechnungserstellung erfolgt am {{bills.0.end|date:"d.m.Y"}}.<br />
|
||||
<a href="{% url 'ag-billplanend' request.user.profile.agency.pk %}" class="btn btn-primary btn mt-2" onclick="">Abonnement kündigen</a>
|
||||
{% endif %}
|
||||
<hr>
|
||||
<h5 class="card-title.">Fragen, Hilfe, Kündigung</h5>
|
||||
Bei Fragen zu Ihrer Abrechnung melden Sie sich bitte per E-Mail an <a href="mailto:abrechnung@digitale-agentur.com">abrechnung@digitale-agentur.com</a>.
|
||||
<!-- TASK: Kündigungsmodaliäten einfügen -->
|
||||
Die Kündigungsmodalitäten finden Sie in den AGB's. Alternativ wenden Sie sich an den Support.
|
||||
Bei Fragen zu Ihrer Abrechnung oder Kündigung wenden Sie sich bitte über das <a href="{% url 'supportda' %}">Kontaktformular</a> an uns. Weitere Informationen finden Sie in den AGB's.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -61,7 +58,7 @@
|
|||
<div class="card d-block mb-3">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">E-Mail-Adresse</h5>
|
||||
Informationen über neue Rechnungen werden automatisch an folgende E-Mailadresse gesendet:<br />
|
||||
Bei neuen Rechnungen erfolgt eine automatische Benachrichtigung an folgende E-Mailadresse:<br />
|
||||
{% if request.user.profile.agency.payment_address == None %}
|
||||
<i>Es wurde keine Adresse hinterlegt. Die Adresse wird an die Agenturadresse versendet:</i> <b>{{request.user.profile.agency.agency_email}}</b>
|
||||
{% else %}
|
||||
|
|
@ -78,9 +75,26 @@
|
|||
{% if bills|length == 0 %}
|
||||
Es liegen keine Rechnungen vor.
|
||||
{% endif %}
|
||||
{% for bill in bills %}
|
||||
<a href="{% url 'ag-getbillpdf' bill.pk %}" target="_blank">Rechnung vom {{bill.billdate|date:"d.m.Y"}} ({{bill.billnumber}})</a> - {% if bill.billstatus == "open" %} Offen {% elif bill.billstatus == "paid" %} Bezahlt {% endif %} <br />
|
||||
{% endfor %}
|
||||
<table style="width: 70%;">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>Rechnungs-Nr.</td>
|
||||
<td>Datum</td>
|
||||
<td>Status</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for bill in bills %}
|
||||
<tr>
|
||||
<td><a href="{% url 'ag-getbillpdf' bill.pk %}" target="_blank">{{bill.billnumber}}</a></td>
|
||||
<td>{{bill.billdate|date:"d.m.Y"}}</td>
|
||||
<td>
|
||||
{% if bill.billstatus == "open" %} <i class="far fa-times-circle" style="color: red"></i> {% elif bill.billstatus == "paid" %} <i class="far fa-check-circle" style="color: green"></i> {% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -23,14 +23,14 @@
|
|||
<div class="col-4">
|
||||
<h5>Abonnement festlegen</h5>
|
||||
<hr>
|
||||
<p>Das Abonnement der digitalen Agentur umfasst die Nutzung inkl. der aktuellen Nutzeranzahl über einen Monat. Nach jedem Monat wird eine neue Rechnung generiert, um die aktuelle Nutzeranzahl zu erfassen. Sie können innerhalb des Monats ihr Abonnement kündigen.
|
||||
<p>Das Abonnement der Digitalen Agentur umfasst die Nutzung inkl. der aktuellen Nutzeranzahl und verlängert sich automatisch. Nach jedem Monat wird eine neue Rechnung erstellt. Sie können innerhalb eines Monats ihr Abonnement kündigen.
|
||||
|
||||
<hr>
|
||||
<p>Mit Klick auf dem Button <i>Jetzt kostenpflichtig bestellen</i> wird eine Rechnung für Ihre Agentur generiert und per E-Mail an die hinterlegte Rechnungs-E-Mailadresse oder an die Agentur-E-Mailadresse versendet. Der Rechnungsbetrag muss innerhalb von 14 Tagen beglichen werden.
|
||||
<hr>
|
||||
<b>Beginn des Leistungszeitraums: </b>{{end|date:"d.m.Y"}}<br />
|
||||
{% loadFinalMoney user as fm %}
|
||||
<b>Rechnungsbetrag: <span id="billfinal">{{fm|floatformat:2|intcomma}}</span> €</b>
|
||||
<b>Aktueller Rechnungsbetrag: <span id="billfinal">{{fm|floatformat:2|intcomma}}</span> €</b>
|
||||
<hr>
|
||||
{{form.contract|as_crispy_field}}
|
||||
{{form.agb|as_crispy_field}}
|
||||
|
|
|
|||
|
|
@ -1650,7 +1650,7 @@ class BillPlanUpdate(UpdateView):
|
|||
},
|
||||
{
|
||||
"type" : "custom",
|
||||
"name" : "Digitale Agentur: Zusätzliche Mitarbeiter",
|
||||
"name" : "Digitale Agentur: Zusätzliche Nutzer",
|
||||
"description" : "Zeitraum " + start_date_string + " - " + end_date_string,
|
||||
"quantity" : usercount,
|
||||
"unitName" : "Stück",
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -732,6 +732,17 @@ def loadFinalMoney(user):
|
|||
return finalMoney
|
||||
|
||||
|
||||
@register.simple_tag
|
||||
def loadUserCountMoney(user):
|
||||
usercount = len(User.objects.filter(profile__agency=user.profile.agency))
|
||||
|
||||
if(usercount < 4):
|
||||
usercount = 0
|
||||
else:
|
||||
usercount = usercount - 3
|
||||
|
||||
return usercount*3
|
||||
|
||||
|
||||
@register.simple_tag
|
||||
def gethistoryuser(userid):
|
||||
|
|
|
|||
|
|
@ -1171,7 +1171,7 @@ def cronactionsbill(request, code):
|
|||
if(code == settings.CRONAPIKEY):
|
||||
today = date.today()
|
||||
# Check, ob Rechnungen bezahlt wurden
|
||||
unpaid_bills = AgencyBills.objects.filter(billstatus="open")
|
||||
unpaid_bills = AgencyBills.objects.all()
|
||||
|
||||
for bill in unpaid_bills:
|
||||
# Für jede Rechnung eine Anfrage an die LexOffice API und voucherStatus auslesen
|
||||
|
|
@ -1187,6 +1187,10 @@ def cronactionsbill(request, code):
|
|||
if(json.loads(r.text)["voucherStatus"] == "paid"):
|
||||
bill.billstatus="paid"
|
||||
bill.save()
|
||||
else:
|
||||
bill.billstatus="open"
|
||||
bill.save()
|
||||
|
||||
|
||||
# Monatliche Berechnung
|
||||
# Alle Rechnungen laden, deren Letzter Tag HEUTE ist und bei ausgewähltem Paymentplan 1 eine neue Rechnung erstellen, Mailverschicke, Nutzeraccouns zählen und neue Rechnung in der Agentur hinterlegen
|
||||
|
|
@ -1253,7 +1257,7 @@ def cronactionsbill(request, code):
|
|||
},
|
||||
{
|
||||
"type" : "custom",
|
||||
"name" : "Digitale Agentur: Zusätzliche Mitarbeiter",
|
||||
"name" : "Digitale Agentur: Zusätzliche Nutzer",
|
||||
"description" : "Zeitraum " + start_date_string + " - " + end_date_string,
|
||||
"quantity" : usercount,
|
||||
"unitName" : "Stück",
|
||||
|
|
|
|||
Loading…
Reference in New Issue