Bugs und Registrierungssachen fertig, CSV-Downlad fertig
This commit is contained in:
parent
9ad984beef
commit
b03d8a8e72
|
|
@ -37,6 +37,8 @@
|
|||
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.6/Chart.bundle.min.js"></script>
|
||||
</tbody>
|
||||
</table>
|
||||
<hr>
|
||||
<a href="{% url 'getorders' %}" target="_blank">Bestellungen der Notfallhilfe als CSV herunterladen</a>
|
||||
</div>
|
||||
<script>
|
||||
new Chart(document.getElementById("all_stats"),{
|
||||
|
|
|
|||
|
|
@ -14,5 +14,5 @@ urlpatterns = [
|
|||
path('agsingle/<int:agpk>', AdmAgencySingle.as_view(), name="adm-agency-single"),
|
||||
path('usersingle/<int:uspk>', AdmUserSingle.as_view(), name="adm-user-single"),
|
||||
path('cron/<slug:code>', statisticCronJob, name="adm-cron"),
|
||||
|
||||
path('getorders/', getCSVRDOrders, name="getorders")
|
||||
]
|
||||
|
|
|
|||
36
adm/views.py
36
adm/views.py
|
|
@ -6,9 +6,10 @@ from django.http import HttpResponseRedirect,HttpResponse, JsonResponse
|
|||
from .models import MainStatistic
|
||||
from django.contrib.auth.models import User
|
||||
from chat.models import ChatMessage
|
||||
from users.models import Agency, AgencyBills
|
||||
from users.models import Agency, AgencyBills, RegNotfallhilfe
|
||||
from standards.models import Standards
|
||||
|
||||
import csv
|
||||
from datetime import date
|
||||
'''
|
||||
Prüfung, ob angemeldeter User Mitarbeiterstatus hat. IMMER PER DISPATCH EINBAUEN!
|
||||
'''
|
||||
|
|
@ -18,6 +19,37 @@ def checkForStuffUser(request):
|
|||
else:
|
||||
return False
|
||||
|
||||
'''
|
||||
|
||||
CSV mit Bestellungen herunterladen
|
||||
|
||||
'''
|
||||
def getCSVRDOrders(request):
|
||||
if(request.method == "GET"):
|
||||
|
||||
response = HttpResponse(content_type='text/csv')
|
||||
|
||||
today = date.today()
|
||||
|
||||
response['Content-Disposition'] = 'attachment; charset=UTF-8; filename="DA-Export_NF_Bestellungen_' + str(today.day) + '_'+ str(today.month)+'_'+ str(today.year)+'.csv"'
|
||||
|
||||
writer = csv.writer(response)
|
||||
writer.writerow(['Datum', 'E-Mail', 'Name', 'Personalnummer', 'mitgliedsnummer', 'PLZ', 'Stadt', 'Strasse', 'Rabatt'])
|
||||
orders = RegNotfallhilfe.objects.filter(wassend=False)
|
||||
|
||||
for order in orders:
|
||||
rabatt = "NEIN"
|
||||
if order.rabatt:
|
||||
rabatt = "JA"
|
||||
writer.writerow([str(order.orderdate),str(order.mail),str(order.name),str(order.persnumber),str(order.mitgliedsnummer),str(order.plz), str(order.stadt),str(order.street), rabatt ])
|
||||
order.wassend = True
|
||||
order.save()
|
||||
return response
|
||||
else:
|
||||
pass
|
||||
|
||||
|
||||
|
||||
|
||||
'''
|
||||
Hauptansicht Statisik
|
||||
|
|
|
|||
|
|
@ -794,7 +794,7 @@ $('.droppable_div').on('dragleave', function (e) {
|
|||
});
|
||||
//allowedtypes = "application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, text/plain, application/pdf, image/*, image/x-png, image/gif, image/jpg, image/jpeg, image/JPEG, image/JPG, docx, JPEG, JPG, doc, odt, ODT, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/vnd.openxmlformats-officedocument.presentationml.presentation, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
|
||||
|
||||
allowedtypes = ['doc','docx','odt','ods','xls','xlsx','xlsm','ppt','pptx','mov','avi','svg','png','jpg','jpeg','mp3', 'wav', 'zip', 'rar', 'mp4', 'mwv', 'flv', 'eps', 'txt', 'pdf']
|
||||
allowedtypes = ['doc','docx','odt','ods','xls','xlsx','xlsm','ppt','pptx','mov','avi','svg','png','jpg','jpeg','mp3', 'wav', 'zip', 'rar', 'mp4', 'mwv', 'flv', 'eps', 'txt', 'pdf', "pages", "numbers"]
|
||||
|
||||
|
||||
function getFileExtension1(filename) {
|
||||
|
|
|
|||
|
|
@ -251,7 +251,7 @@ def adddirbyajax(request, parent):
|
|||
# VALIDATE FILE-TYPE
|
||||
file_ext_arr = request.FILES['uploadedfile'].name.split(".")
|
||||
file_ext = file_ext_arr[len(file_ext_arr)-1]
|
||||
allowed_types = ["txt", "TXT", "png", "PNG", "jpeg", "JPEG", "jpg", "JPG", "PDF", "pdf", "csv", "CSV", "DOC", "doc", "DOCX", "docx", "ODT", "odt", "PPT", "ppt", "PPTX", "pptx", "XLS", "xls", "XLSX", "xlsx", "mov", "MOV", "SVG", "svg", "ZIP", "zip", "RAR", "rar", "EPS", "eps", "MP3", "mp3", "WAV", "wav", "avi", "AVI", "FLV", "flv", "MP4", "mp4"]
|
||||
allowed_types = ["txt", "TXT", "png", "PNG", "jpeg", "JPEG", "jpg", "JPG", "PDF", "pdf", "csv", "CSV", "DOC", "doc", "DOCX", "docx", "ODT", "odt", "PPT", "ppt", "PPTX", "pptx", "XLS", "xls", "XLSX", "xlsx", "mov", "MOV", "SVG", "svg", "ZIP", "zip", "RAR", "rar", "EPS", "eps", "MP3", "mp3", "WAV", "wav", "avi", "AVI", "FLV", "flv", "MP4", "mp4", "PAGES", "pages", "NUMBERS", "numbers"]
|
||||
file_ok = False
|
||||
|
||||
for t in allowed_types:
|
||||
|
|
|
|||
|
|
@ -507,6 +507,9 @@ class RegNotfallhilfe(models.Model):
|
|||
street = models.CharField(max_length=500, blank=True)
|
||||
data_to_vh = models.BooleanField(default=True)
|
||||
rabatt = models.BooleanField(default=False)
|
||||
wassend = models.BooleanField(default=False)
|
||||
orderdate = models.DateField(default=timezone.now, null=True)
|
||||
|
||||
|
||||
|
||||
# SUBCLASS
|
||||
|
|
|
|||
|
|
@ -275,7 +275,7 @@
|
|||
<a style="color: #999; text-decoration: none;" href="{% url 'impressumda' %}">Impressum</a>
|
||||
<br />
|
||||
<br />
|
||||
Version 0.9.3
|
||||
Version 0.9.9
|
||||
<br />
|
||||
<br />
|
||||
<a href="https://www.myvve.de/" target="_blank"><img src="{% static 'users/img/VVE-Logo.png' %}" width="27%" class="mb-2"></a>
|
||||
|
|
|
|||
|
|
@ -46,9 +46,21 @@
|
|||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<p>
|
||||
<hr>
|
||||
<h5>Hinweis</h5>
|
||||
Der Verkauf und Versand der Notfallhilfe erfolgt ausschließlich im Namen vom VVE. <a href="https://www.myvve.de/Kontakt/Adressen" target="_blank">Bei Fragen oder Problemen melden Sie sich bitte unter folgendem Link.</a>
|
||||
<hr>
|
||||
Zahlungsweise: Vorkasse. Nach Zahlungseingang wird der Ordner verschickt.<br />
|
||||
<h5>Bankverbindung VVE</h5>
|
||||
<p>DE59 2003 0000 0007 5605 01<br />
|
||||
Unicredit Bank (HypoVereinsbank) <br />
|
||||
Verwendungszweck: Ihr Name, Personal-Nr., Ordner Notfallhilfe
|
||||
</p>
|
||||
</p>
|
||||
<hr>
|
||||
<div class="form-group">
|
||||
<button type="submit" class="btn btn-primary btn-lg" style="float: right">Registrieren & Bestellen</button>
|
||||
<button type="submit" class="btn btn-primary btn-lg" style="float: right">Registrieren & Kostenpflichtig für 25 € bestellen</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -44,9 +44,21 @@
|
|||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<p>
|
||||
<hr>
|
||||
<h5>Hinweis</h5>
|
||||
Der Verkauf und Versand der Notfallhilfe erfolgt ausschließlich im Namen vom VVE. <a href="https://www.myvve.de/Kontakt/Adressen" target="_blank">Bei Fragen oder Problemen melden Sie sich bitte unter folgendem Link.</a>
|
||||
<hr>
|
||||
Zahlungsweise: Vorkasse. Nach Zahlungseingang wird der Ordner verschickt.<br />
|
||||
<h5>Bankverbindung VVE</h5>
|
||||
<p>DE59 2003 0000 0007 5605 01<br />
|
||||
Unicredit Bank (HypoVereinsbank) <br />
|
||||
Verwendungszweck: Ihr Name, Personal-Nr., Ordner Notfallhilfe
|
||||
</p>
|
||||
</p>
|
||||
<hr>
|
||||
<div class="form-group">
|
||||
<button type="submit" class="btn btn-primary btn-lg" style="float: right">Notfallhilfe kostenpflichtig bestellen</button>
|
||||
<button type="submit" class="btn btn-primary btn-lg" style="float: right">Notfallhilfe kostenpflichtig für 25 € bestellen</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -211,7 +211,7 @@ class NewAgencyFormRD(forms.Form):
|
|||
self.fields['plz'] = forms.CharField(required=True, label="PLZ")
|
||||
self.fields['stadt'] = forms.CharField(required=True, label="Stadt")
|
||||
self.fields['street'] = forms.CharField(required=True, label="Straße und Hausnummer")
|
||||
self.fields['vve'] = forms.CharField(required=True, label="VVE-Mitgliedsnummer")
|
||||
self.fields['vve'] = forms.CharField(required=True, label="VVE-Mitgliedsnummer - Ihre Mitgliedsnummer entnehmen Sie bitte der Teilnahmebestätigung zur VVE-Jahrestagung.")
|
||||
self.fields['agb'] = forms.BooleanField(required=True, label="AGB's")
|
||||
self.fields['av'] = forms.BooleanField(required=True, label="Auftragsverarbeitung")
|
||||
self.fields['data_to_vh'] = forms.BooleanField(required=True, label="Hiermit erkläre ich mich der Übertragung meiner Daten von der vh Solutions UG an den VVE einverstanden.")
|
||||
|
|
@ -230,7 +230,7 @@ class FormRD(forms.Form):
|
|||
|
||||
self.fields['name'] = forms.CharField(required=True, label="Vor- und Nachname")
|
||||
self.fields['persnumber'] = forms.CharField(required=True, label="Personalnummer")
|
||||
self.fields['mitgliedsnummer'] = forms.CharField(required=True, label="VVE-Mitgliedsnummer")
|
||||
self.fields['mitgliedsnummer'] = forms.CharField(required=True, label="VVE-Mitgliedsnummer - Ihre Mitgliedsnummer entnehmen Sie bitte der Teilnahmebestätigung zur VVE-Jahrestagung.")
|
||||
self.fields['plz'] = forms.CharField(required=True, label="PLZ")
|
||||
self.fields['stadt'] = forms.CharField(required=True, label="Stadt")
|
||||
self.fields['street'] = forms.CharField(required=True, label="Straße und Hausnummer")
|
||||
|
|
|
|||
Loading…
Reference in New Issue