Chunks bearbeitet und Bugs)

This commit is contained in:
holger.trampe 2020-12-04 09:05:31 +01:00
parent e085dca5ab
commit 04c00e6c7f
7 changed files with 121 additions and 5 deletions

View File

@ -8,6 +8,7 @@
<thead>
<tr>
<th scope="col">Agenturname</th>
<th scope="col">Registriert am</th>
<th scope="col">Mitarbeiter</th>
<th scope="col">Standards</th>
</tr>
@ -17,6 +18,7 @@
{% getAgencyData ele as agdata %}
<tr>
<td><a href="{% url 'adm-agency-single' ele.pk %}">{{ele.name}}</a></td>
<td>{{ele.registerdate}}</td>
<td>{{agdata.0}}</td>
<td>{{agdata.1}}</td>
</tr>

View File

@ -97,6 +97,16 @@
<span>Agenturen</span></a>
</li>
{% if active_link == 'adm-bills' %}
<li class="nav-item active">
{% else %}
<li class="nav-item">
{%endif%}
<a class="nav-link" href="{% url 'adm-bills' %}">
<i class="fas fa-user"></i>
<span>Rechnungen</span></a>
</li>
<!-- Nav Item - Dashboard -->
{% if active_link == 'adm-users' %}
<li class="nav-item active">

View File

@ -0,0 +1,78 @@
{% extends "adm/adm_base.html" %}
{% block content %}
{% load adm_tags %}
{% load mathfilters %}
{% load humanize %}
{% load counter_tag %}
<div class="content-section col-12">
<h4>Rechungsübersicht</h4>
<hr>
<table class="table table-hover" id="agdata" >
<thead>
<tr>
<th scope="col">Agentur</th>
<th scope="col">Rechnungsnummer</th>
<th scope="col">Erstellt am</th>
<th scope="col">Betrag</th>
<th scope="col">Status</th>
</tr>
</thead>
<tbody >
{% for ele in bills %}
<tr>
<td><a href="{% url 'adm-agency-single' ele.agency.pk %}">{{ele.agency.name}}</a></td>
<td><a href="{% url 'ag-getbillpdf' ele.pk %}" target="_blank">{{ele.billnumber}}</a></td>
<td>{{ele.billdate}}</td>
<td>
{% loadFinalMoney user as fm %}
{{fm|floatformat:2|intcomma}} €
</td>
<td>
{% if ele.billstatus == "open" %} <i class="far fa-times-circle" style="color: red"></i> {% elif ele.billstatus == "paid" %} <i class="far fa-check-circle" style="color: green"></i> {% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<script type="text/javascript">
$(document).ready(function(){
$('#agdata').DataTable({
"language": {
"search" : "Suche",
"info": "Zeige _START_ bis _END_ von _TOTAL_ Einträgen",
"lengthMenu": "Zeige _MENU_ Einträge",
"zeroRecords": "Nichts gefunden",
"infoEmpty": "Keine Einträge",
"paginate": {
"first": "Erste",
"last": "Letzte",
"next": "Nächste",
"previous": "Zurück"
},
},
"pageLength": 50,
"buttons" : {
"className" : "btn-danger"
}
});
})
</script>
{% endblock content %}
<!--
billtype = models.CharField(default="", max_length=200)
billdate = models.DateField(default=timezone.now)
billnumber = models.CharField(default="", max_length=200)
billstatus = models.CharField(default="", max_length=200, null=True, blank=True)
start = models.DateField(default=timezone.now)
end = models.DateField(default=timezone.now)
plan = models.CharField(default="", max_length=20)
usercount = models.IntegerField(default=0)
def __str__(self):
return f'{self.lexid}'
-->

View File

@ -12,6 +12,7 @@ urlpatterns = [
path('ag/', AdmAgencys.as_view(), name="adm-agencys"),
path('us/', AdmUsers.as_view(), name="adm-users"),
path('agsingle/<int:agpk>', AdmAgencySingle.as_view(), name="adm-agency-single"),
path('ag/bills/', AdmBills.as_view(), name="adm-bills"),
path('usersingle/<int:uspk>', AdmUserSingle.as_view(), name="adm-user-single"),
path('cron/<slug:code>', statisticCronJob, name="adm-cron"),
path('getorders/', getCSVRDOrders, name="getorders")

View File

@ -78,6 +78,31 @@ class AdmMain(TemplateView):
})
return context
'''
Gesatmübersicht aller Rechnungen
'''
class AdmBills(TemplateView):
template_name = "adm/adm_bills.html"
def dispatch(self, *args, **kwargs):
if(checkForStuffUser(self.request)):
return super().dispatch(*args, **kwargs)
else:
messages.warning(self.request, f'Sie benötigen einen Mitarbeiter-Account, um diese Seiten aufzurufen!')
return redirect("login")
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context.update({'active_link' : "adm-bills"})
context.update({'bills' : AgencyBills.objects.all()})
return context
'''
Gesamtansicht der Agenturen
'''

View File

@ -181,7 +181,7 @@
</script>
-->
<h5>Arbeitszeiten&nbsp;<small><i data-toggle="tooltip" data-placement="top" title="Legen Sie fest, an welchen Tagen dieser Mitarbeiter wie viele Stunden arbeitet." class="far fa-question-circle"></i></small></h5>
<h5>Arbeitszeiten&nbsp;<small><i data-toggle="tooltip" data-placement="top" title="Legen Sie fest, an welchen Tagen dieser Mitarbeiter wie viele Stunden arbeitet (in Dezimalschreibweise)." class="far fa-question-circle"></i></small></h5>
<div class="table-responsive">
<table class="table">
<tr>

View File

@ -1407,13 +1407,13 @@ def cronactionsbill(request, code):
# 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
new_bills = AgencyBills.objects.filter(end=today)
for bill in new_bills:
if bill.agency.paymentplan == 1:
if bill.agency.paymentstatus == 0 and bill.agency.paymentplan == 1:
agency = bill.agency
month = today
next_month = today + relativedelta(months=1)
# 30 Tage weiter, nicht einen Monat!
next_month = today + relativedelta(days=30)
# USERCOUNT BERECHNEN
usercount = len(User.objects.filter(profile__agency=agency))
@ -1433,7 +1433,7 @@ def cronactionsbill(request, code):
start_date = month
start_date_string = month.strftime("%d.%m.%Y")
end_date = month + relativedelta(months=plan)
end_date = month + relativedelta(days=30)
end_date_string= end_date.strftime("%d.%m.%Y")
voucher_date_today = date.today().strftime("%Y-%m-%d")