Bereich 7 fertig
This commit is contained in:
parent
0c16f63734
commit
b605c432b6
|
|
@ -93,6 +93,23 @@ class HLFVForm(forms.ModelForm):
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
super(HLFVForm, self).__init__(*args, **kwargs)
|
super(HLFVForm, self).__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
# RDContract
|
||||||
|
class RDContractF(forms.ModelForm):
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
model = RDContract
|
||||||
|
fields = ['contract_typ','contract_owner','license','info1','info2','adresse','tel','mail']
|
||||||
|
labels = {
|
||||||
|
'contract_typ' : "Vertragstyp (Leasing, Immobilie etc.)",
|
||||||
|
'contract_owner' : "Eigentümer/Firma/Vertragsparnter",
|
||||||
|
'license' : "Lizenz/Kennzeichen/Nummer etc.",
|
||||||
|
'info1' : "Freifeld für Informationen 1",
|
||||||
|
'info2' : "Freifeld für Informationen 2",
|
||||||
|
'adresse' : "Adresse",
|
||||||
|
'tel' : "Telefon",
|
||||||
|
'mail' : "E-Mail"
|
||||||
|
}
|
||||||
|
|
||||||
# Streamingabo
|
# Streamingabo
|
||||||
class StreamingAboF(forms.ModelForm):
|
class StreamingAboF(forms.ModelForm):
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -179,6 +179,19 @@ class Personal(models.Model):
|
||||||
history = HistoricalRecords()
|
history = HistoricalRecords()
|
||||||
|
|
||||||
|
|
||||||
|
class RDContract(models.Model):
|
||||||
|
agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True)
|
||||||
|
contract_typ = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
contract_owner = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
license = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
info1 = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
info2 = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
adresse = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
tel = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
mail = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
history = HistoricalRecords()
|
||||||
|
|
||||||
|
|
||||||
class RDElse(models.Model):
|
class RDElse(models.Model):
|
||||||
agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True)
|
agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True)
|
||||||
name = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
name = encrypt(models.CharField(max_length=500, blank=True, default="", null=True))
|
||||||
|
|
@ -203,5 +216,6 @@ class RDElse(models.Model):
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,28 @@
|
||||||
|
<h4>Verträge
|
||||||
|
<a class="btn btn-primary btn-sm btn mb-3" href="{% url 'rd-a7-addcontract' %}" style="float: right;"><i class="fas fa-plus"></i> Vertrag</a>
|
||||||
|
</h4>
|
||||||
|
<table class="table table-hover" id="a7_contract" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">Vertrags-Typ</th>
|
||||||
|
<th scope="col">Eigentümer etc.</th>
|
||||||
|
<th scope="col"> </th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody >
|
||||||
|
{% for contract in area_7_contract %}
|
||||||
|
<tr>
|
||||||
|
<td><a href="{% url 'rd-a7-viewcontract' contract.pk %}">{{contract.contract_typ|default:""}}</a></td>
|
||||||
|
<td>{{contract.contract_owner|default:""}}</td>
|
||||||
|
<td>
|
||||||
|
<a style="float: right" class="btn btn-secondary btn-sm mr-2 " href="{% url 'rd-a7-viewcontract' contract.pk %}"><i class="far fa-eye"></i></a>
|
||||||
|
<a style="float: right" class="btn btn-secondary btn-sm mr-2 " href="{% url 'rd-a7-updatecontract' contract.pk %}"><small><i class="fas fa-pen"></i></small></a>
|
||||||
|
<a style="float: right" class="btn btn-secondary btn-sm mr-2 " href="{% url 'rd-a7-delcontract' contract.pk %}"><small><i class="fas fa-trash"></i></small></a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
<h4>Dokumente
|
<h4>Dokumente
|
||||||
<a class="btn btn-primary btn-sm btn mb-3" href="{% url 'rd-a1-adddoc' 7 %}" style="float: right;"><i class="fas fa-plus"></i> Dokument</a>
|
<a class="btn btn-primary btn-sm btn mb-3" href="{% url 'rd-a1-adddoc' 7 %}" style="float: right;"><i class="fas fa-plus"></i> Dokument</a>
|
||||||
</h4>
|
</h4>
|
||||||
|
|
@ -50,5 +75,27 @@ $(document).ready(function(){
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('#a7_contract').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>
|
</script>
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
{% extends "users/base.html" %}
|
||||||
|
{% load crispy_forms_tags %}
|
||||||
|
{% block content %}
|
||||||
|
{% if request.user.profile.agency.module_recoverdir %}
|
||||||
|
<div class="content-section col-9">
|
||||||
|
<h3>Vertrag bearbeiten</h3>
|
||||||
|
<hr>
|
||||||
|
<form method="POST" enctype="multipart/form-data">
|
||||||
|
{% csrf_token %}
|
||||||
|
{{form.media}}
|
||||||
|
{{form|crispy}}
|
||||||
|
<hr>
|
||||||
|
<a class="btn" href="{% url 'recoverdir' %} ">Abbrechen</a>
|
||||||
|
<button type="submit" class="btn btn-primary" style="float: right;">Vertrag speichern</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
{% else %}
|
||||||
|
<h3>Das Modul Notfallhilfe wurden in ihrer Agentur deaktiviert.</h3>
|
||||||
|
{% endif %}
|
||||||
|
{% endblock content %}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
{% extends "users/base.html" %}
|
||||||
|
{% load crispy_forms_tags %}
|
||||||
|
{% block content %}
|
||||||
|
{% if request.user.profile.agency.module_recoverdir %}
|
||||||
|
<div class="content-section col-9">
|
||||||
|
<h3>Vertrag löschen</h3>
|
||||||
|
<hr>
|
||||||
|
<form method="POST" enctype="multipart/form-data">
|
||||||
|
{% csrf_token %}
|
||||||
|
{{ form|crispy }}
|
||||||
|
Möchten Sie den Vertrag <i>{{contact.typ}} Eigentümer {{contact.contract_owner}}</i> wirklich endgültig löschen?
|
||||||
|
<hr>
|
||||||
|
<a class="btn" href="{% url 'recoverdir' %} ">Abbrechen</a>
|
||||||
|
<button type="submit" class="btn btn-primary" style="float: right;">Vertrag endgültig löschen</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
{% else %}
|
||||||
|
<h3>Das Modul Notfallhilfe wurden in ihrer Agentur deaktiviert.</h3>
|
||||||
|
{% endif %}
|
||||||
|
{% endblock content %}
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
{% extends "users/base.html" %}
|
||||||
|
{% block content %}
|
||||||
|
{% if request.user.profile.agency.module_recoverdir %}
|
||||||
|
<div class="content-section col-12">
|
||||||
|
<h3>Vertrag {% if history == True %} - Version vom {{contract.history_date|date:"d.m.Y"}}{% endif %}
|
||||||
|
<span style="float: right">
|
||||||
|
<a href="{% url 'recoverdir'%}" style="float: right" class="btn btn-secondary btn-sm "><small><i class="fas fa-chevron-circle-left"></i></small></a>
|
||||||
|
</span>
|
||||||
|
</h3>
|
||||||
|
<hr>
|
||||||
|
<h4>Vertragsinformationen</h4>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td>Typ</td>
|
||||||
|
<td>{{contract.contract_typ|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Eigentümer/Immobilie/etc.</td>
|
||||||
|
<td>{{contract.contract_owner|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Lizenz</td>
|
||||||
|
<td>{{contract.license|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Info 1</td>
|
||||||
|
<td>{{contract.info1|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Info 2</td>
|
||||||
|
<td>{{contract.info2|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Adresse</td>
|
||||||
|
<td>{{contract.ad|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Telefon</td>
|
||||||
|
<td>{{contract.tel|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>E-Mail</td>
|
||||||
|
<td>{{contract.mail|default:""}}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
{% else %}
|
||||||
|
<h3>Auf dieses Modul haben Sie keinen Zugriff!</h3>
|
||||||
|
{% endif %}
|
||||||
|
{% endblock content %}
|
||||||
|
|
@ -20,6 +20,7 @@
|
||||||
9 = Streaming-Abo
|
9 = Streaming-Abo
|
||||||
10 = Digitaler Account
|
10 = Digitaler Account
|
||||||
11 = Personal
|
11 = Personal
|
||||||
|
12 = Vertrag Bereich 7
|
||||||
-->
|
-->
|
||||||
<tbody>
|
<tbody>
|
||||||
{% for ele in history %}
|
{% for ele in history %}
|
||||||
|
|
@ -61,6 +62,10 @@
|
||||||
{% elif hisotryelementinfo.1 == 11 %}
|
{% elif hisotryelementinfo.1 == 11 %}
|
||||||
<a href="{% url 'recoverdir-personalhistory-single' ele.pk rdele.pk %}">{{hisotryelementinfo.0}}</a>
|
<a href="{% url 'recoverdir-personalhistory-single' ele.pk rdele.pk %}">{{hisotryelementinfo.0}}</a>
|
||||||
|
|
||||||
|
{% elif hisotryelementinfo.1 == 12 %}
|
||||||
|
<a href="{% url 'recoverdir-contracthistory-single' ele.pk rdele.pk %}">{{hisotryelementinfo.0}}</a>
|
||||||
|
|
||||||
|
|
||||||
{% elif hisotryelementinfo.1 == 20 %}
|
{% elif hisotryelementinfo.1 == 20 %}
|
||||||
<a href="{% url 'recoverdir-elsehistory-single' ele.pk rdele.pk %}">{{hisotryelementinfo.0}}</a>
|
<a href="{% url 'recoverdir-elsehistory-single' ele.pk rdele.pk %}">{{hisotryelementinfo.0}}</a>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -93,6 +93,11 @@ urlpatterns = [
|
||||||
# Bereich 6 übernimmt Datenfelder aus Bereich 2
|
# Bereich 6 übernimmt Datenfelder aus Bereich 2
|
||||||
|
|
||||||
# Bereich 7 TASK: Hier weiter
|
# Bereich 7 TASK: Hier weiter
|
||||||
|
# VERTRÄGE
|
||||||
|
path('seven/contract/add', permission_required('users.recoverdirmanager')(RDAsevenAddcontract.as_view()), name='rd-a7-addcontract'),
|
||||||
|
path('seven/contract/<int:pk>', permission_required('users.recoverdirmanager')(RDAsevenViewcontract.as_view()), name='rd-a7-viewcontract'),
|
||||||
|
path('seven/contract/del/<int:pk>', permission_required('users.recoverdirmanager')(RDAsevenDelcontract.as_view()), name='rd-a7-delcontract'),
|
||||||
|
path('seven/contract/update/<int:pk>', permission_required('users.recoverdirmanager')(RDAsevenUpdatecontract.as_view()), name='rd-a7-updatecontract'),
|
||||||
|
|
||||||
# Bereich 8 TASK: Hier weiter
|
# Bereich 8 TASK: Hier weiter
|
||||||
|
|
||||||
|
|
@ -128,7 +133,8 @@ urlpatterns = [
|
||||||
path('digitalaccount/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(DigitalAccountSingleHistory.as_view()), name='recoverdir-digitalaccounthistory-single'),
|
path('digitalaccount/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(DigitalAccountSingleHistory.as_view()), name='recoverdir-digitalaccounthistory-single'),
|
||||||
# Personal Intern/Extern
|
# Personal Intern/Extern
|
||||||
path('personal/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(PersonalSingleHistory.as_view()), name='recoverdir-personalhistory-single'),
|
path('personal/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(PersonalSingleHistory.as_view()), name='recoverdir-personalhistory-single'),
|
||||||
|
# VERTRAG
|
||||||
|
path('contract/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(ContractSingleHistory.as_view()), name='recoverdir-contracthistory-single'),
|
||||||
# ELSE
|
# ELSE
|
||||||
path('else/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(ElseSingleHistory.as_view()), name='recoverdir-elsehistory-single'),
|
path('else/ver/<int:pk>/<int:rev>', permission_required('users.recoverdirmanager')(ElseSingleHistory.as_view()), name='recoverdir-elsehistory-single'),
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -71,12 +71,15 @@ class RecoverDirManagement(LoginRequiredMixin, ListView):
|
||||||
personal = Personal.objects.filter(agency=self.request.user.profile.agency)
|
personal = Personal.objects.filter(agency=self.request.user.profile.agency)
|
||||||
context.update({"area_5_personal" : personal})
|
context.update({"area_5_personal" : personal})
|
||||||
|
|
||||||
|
rdcontract = RDContract.objects.filter(agency=self.request.user.profile.agency)
|
||||||
|
context.update({"area_7_contract" : rdcontract})
|
||||||
|
|
||||||
elseele = RDElse.objects.filter(agency=self.request.user.profile.agency)
|
elseele = RDElse.objects.filter(agency=self.request.user.profile.agency)
|
||||||
context.update({"area_9_else" : elseele})
|
context.update({"area_9_else" : elseele})
|
||||||
|
|
||||||
handlungsleitfadenvf = HandlungsleitfadenVF.objects.filter(agency=self.request.user.profile.agency)
|
handlungsleitfadenvf = HandlungsleitfadenVF.objects.filter(agency=self.request.user.profile.agency)
|
||||||
|
|
||||||
finalupdatelist = chain(persletters, handlungsleitfaden, contactfc, contactstrust, handlungsleitfadenvf, depistvollmacht, ergodigi, onlinebank, streamingabo, digitalaccount, personal, onlinebank6, elseele)
|
finalupdatelist = chain(persletters, handlungsleitfaden, contactfc, contactstrust, handlungsleitfadenvf, depistvollmacht, ergodigi, onlinebank, streamingabo, digitalaccount, personal, onlinebank6, elseele, rdcontract)
|
||||||
context.update({"history" : finalupdatelist})
|
context.update({"history" : finalupdatelist})
|
||||||
|
|
||||||
users_of_agency = User.objects.filter(profile__agency=self.request.user.profile.agency)
|
users_of_agency = User.objects.filter(profile__agency=self.request.user.profile.agency)
|
||||||
|
|
@ -886,6 +889,54 @@ class RDAnineUpdateelse(UpdateView):
|
||||||
context.update({'active_link' : 'recoverdir'})
|
context.update({'active_link' : 'recoverdir'})
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
# RDContract
|
||||||
|
class RDAsevenViewcontract(DetailView):
|
||||||
|
model = RDContract
|
||||||
|
success_url = reverse_lazy('recoverdir')
|
||||||
|
template_name = 'recoverdir/rd_elements_forms/rd_area_7_contract_single.html'
|
||||||
|
context_object_name = 'contract'
|
||||||
|
|
||||||
|
class RDAsevenDelcontract(DeleteView):
|
||||||
|
model = RDContract
|
||||||
|
success_url = reverse_lazy('recoverdir')
|
||||||
|
template_name = 'recoverdir/rd_elements_forms/rd_area_7_contract_del.html'
|
||||||
|
context_object_name = 'ele'
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super().get_context_data(**kwargs)
|
||||||
|
context.update({'active_link' : 'recoverdir'})
|
||||||
|
return context
|
||||||
|
|
||||||
|
class RDAsevenAddcontract(CreateView):
|
||||||
|
model = RDContract
|
||||||
|
success_url = reverse_lazy('recoverdir')
|
||||||
|
form_class = RDContractF
|
||||||
|
template_name = "recoverdir/rd_elements_forms/rd_area_7_addcontract.html"
|
||||||
|
|
||||||
|
def form_valid(self, form):
|
||||||
|
form.instance.agency = self.request.user.profile.agency
|
||||||
|
return super().form_valid(form)
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super().get_context_data(**kwargs)
|
||||||
|
context.update({'active_link' : 'recoverdir'})
|
||||||
|
return context
|
||||||
|
|
||||||
|
class RDAsevenUpdatecontract(UpdateView):
|
||||||
|
model = RDContract
|
||||||
|
success_url = reverse_lazy('recoverdir')
|
||||||
|
form_class = RDContractF
|
||||||
|
template_name = "recoverdir/rd_elements_forms/rd_area_7_addcontract.html"
|
||||||
|
|
||||||
|
def form_valid(self, form):
|
||||||
|
form.instance.agency = self.request.user.profile.agency
|
||||||
|
return super().form_valid(form)
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super().get_context_data(**kwargs)
|
||||||
|
context.update({'active_link' : 'recoverdir'})
|
||||||
|
return context
|
||||||
|
|
||||||
################################################## HISTORY ELEMENT VIEW ##########################################
|
################################################## HISTORY ELEMENT VIEW ##########################################
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1167,7 +1218,28 @@ class PersonalSingleHistory(DetailView):
|
||||||
})
|
})
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
# VETRTRAG
|
||||||
|
class ContractSingleHistory(DetailView):
|
||||||
|
model = RDContract
|
||||||
|
template_name = 'recoverdir/rd_elements_forms/rd_area_7_contract_single.html'
|
||||||
|
|
||||||
|
# Gewünschte Revision aufrufen
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super().get_context_data(**kwargs)
|
||||||
|
context.update({'active_link' : 'recoverdir'})
|
||||||
|
|
||||||
|
historyelements = RDContract.objects.get(pk=self.kwargs['pk']).history.all()
|
||||||
|
|
||||||
|
shown_element = None
|
||||||
|
for he in historyelements:
|
||||||
|
if he.pk == self.kwargs["rev"]:
|
||||||
|
shown_element = he
|
||||||
|
|
||||||
|
context.update({
|
||||||
|
'contract' : shown_element,
|
||||||
|
'history' : True
|
||||||
|
})
|
||||||
|
return context
|
||||||
|
|
||||||
# ELSE
|
# ELSE
|
||||||
class ElseSingleHistory(DetailView):
|
class ElseSingleHistory(DetailView):
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -809,6 +809,9 @@ def getHistoryClassOfObject(value):
|
||||||
elif(objectClass == 'HistoricalPersonal'):
|
elif(objectClass == 'HistoricalPersonal'):
|
||||||
finalclass[0] = "Personal und Partner"
|
finalclass[0] = "Personal und Partner"
|
||||||
finalclass[1] = 11
|
finalclass[1] = 11
|
||||||
|
elif(objectClass == 'HistoricalRDContract'):
|
||||||
|
finalclass[0] = "Vertrag"
|
||||||
|
finalclass[1] = 12
|
||||||
# ELSE
|
# ELSE
|
||||||
elif(objectClass == 'HistoricalRDElse'):
|
elif(objectClass == 'HistoricalRDElse'):
|
||||||
finalclass[0] = "Sonstiges"
|
finalclass[0] = "Sonstiges"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue