Modulcommit Zeiterfassung

This commit is contained in:
holger.trampe 2020-04-29 22:00:47 +02:00
parent 226eecb46e
commit 787f08596c
5 changed files with 87 additions and 6 deletions

View File

@ -357,3 +357,30 @@ def getdailybreaktimetoday(user):
breaksum += (b.end - b.start).seconds
return breaksum*1000
@register.simple_tag
def getsumworkday(workday):
sum_break = 0
if(len(workday.breaks.all()) > 0):
for ele in workday.breaks.all():
sum_break += (ele.end - ele.start).seconds
finalsum = ((workday.end - workday.start).seconds - sum_break)
mon, sec = divmod(finalsum, 60)
hr, mon = divmod(mon, 60)
#return ("%d Stunden und %02d:%02d" % (hr, mon, sec))
return ("%d Stunden und %02d Minuten" % (hr, mon))
@register.simple_tag
def getsumbreak(workday):
sum_break = 0
if(len(workday.breaks.all()) > 0):
for ele in workday.breaks.all():
sum_break += (ele.end - ele.start).seconds
return int(sum_break/60)

View File

@ -1,11 +1,64 @@
{% extends "users/base.html" %}
{% block content %}
{% load counter_tag %}
{% if request.user.profile.agency.module_timemanagement %}
<div class="content-section col-12">
<h3>Zeiterfassung&nbsp;<small><i data-toggle="tooltip" data-placement="top" title="Bearbeiten Sie hier Ihre Zeiterfassung." class="far fa-question-circle"></i></small></h3>
<hr>
<div class="table-responsive ">
<table class="table table-hover" id="table_timemanagement" >
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">Start</th>
<th scope="col">Ende</th>
<th scope="col">Stunden</th>
<th scope="col">Pausen</th>
<th scope="col">Gesamtzeit</th>
<th scope="col">Gleitzeit in h</th>
<th scope="col">&nbsp;</th>
</tr>
</thead>
<tbody id="table_contacts" >
{% for workday in workdays %}
<tr>
<td>
{{forloop.counter}}
</td>
<td>
{{workday.start}}
</td>
<td>
{{workday.end}}
</td>
<td>
{{ workday.end|timeuntil:workday.start }}
</td>
<td>
{% getsumbreak workday as sumbreakofday %}
{{sumbreakofday}} min. ({{workday.breaks.all|length}})
</td>
<td>
{% getsumworkday workday as sumwd %}
{{sumwd}}
</td>
<td>
</td>
<td>
<a class="btn btn-secondary btn-sm ml-2" href=""><small><i class="fas fa-trash"></i></small></a>
<a class="btn btn-secondary btn-sm " href=""><small><i class="fas fa-pen"></i></small></a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<style>
<style>
/* DATATABLES */
.paginate_button {
padding: 0px !important;
@ -14,8 +67,8 @@
</style>
<script>
$(document).ready(function(){
/*
$('#activenews').DataTable({
$('#table_timemanagement').DataTable({
"language": {
"search" : "Suche",
"info": "Zeige _START_ bis _END_ von _TOTAL_ Einträgen",
@ -31,9 +84,9 @@ $(document).ready(function(){
},
"buttons" : {
"className" : "btn-danger"
}*/
}
});
});
</script>
{% else %}

View File

@ -7,7 +7,8 @@ from django.utils import timezone
@login_required
def TimeManagement(request):
context = {
"active_link" : "timemanagement"
"active_link" : "timemanagement",
"workdays" : Workday.objects.filter(agency=request.user.profile.agency, user=request.user).order_by("-start")
}
return render(request, 'timemanagement/timemanagement_management.html', context)