From f5e298dc180be2e018da78bc8d148a2e8460bdb3 Mon Sep 17 00:00:00 2001
From: Christian Dresen <c.dresen@fh-muenster.de>
Date: Wed, 5 Apr 2017 23:17:25 +0200
Subject: [PATCH] [WarpPay] Added PinCode: LDAP-Field: carLicense VOID IST
 SCHULD

---
 www/web/warpauth/models.py |  1 +
 www/web/warppay/models.py  |  3 ++-
 www/web/warppay/views.py   | 11 +++++++----
 3 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/www/web/warpauth/models.py b/www/web/warpauth/models.py
index b850c29..2360812 100644
--- a/www/web/warpauth/models.py
+++ b/www/web/warpauth/models.py
@@ -35,6 +35,7 @@ class LdapUser(ldapdb.models.Model):
     email = CharField(db_column='mail', max_length=200)
     cn = CharField(db_column='cn', max_length=200)
     card_id = CharField(db_column='employeeNumber', max_length=200)
+    pinCode = CharField(db_column='carLicense', max_length=100)
 
     def __str__(self):
         return self.uid
diff --git a/www/web/warppay/models.py b/www/web/warppay/models.py
index 4a536e2..aad290f 100644
--- a/www/web/warppay/models.py
+++ b/www/web/warppay/models.py
@@ -56,6 +56,7 @@ class UserCredit(models.Model):
     uid = models.CharField(max_length=100,unique=True)
     card_id = models.CharField(max_length=10, null=True) # Unique only with django 1.11
     credit = models.FloatField()
+    pinCode = models.CharField(max_length=100)
 
     def __str__(self):
         return self.uid
@@ -64,4 +65,4 @@ class UserCredit(models.Model):
 class UserCreditSerializer(serializers.ModelSerializer):
     class Meta:
         model = UserCredit
-        fields = ['uid', 'card_id', 'credit']
+        fields = ['uid', 'card_id', 'credit', 'pinCode']
diff --git a/www/web/warppay/views.py b/www/web/warppay/views.py
index 2e48de1..ade4be9 100644
--- a/www/web/warppay/views.py
+++ b/www/web/warppay/views.py
@@ -160,13 +160,16 @@ def transaction(request, user_id=None):
         return Response()
 
 def sync_users():
-    for user in LdapUser.objects.all():
+    for ldapuser in LdapUser.objects.all():
         try:
             u = UserCredit.objects.get(uid=user.uid)
-            if user.card_id:
-                u.card_id = user.card_id
+            if ldapuser.card_id:
+                u.card_id = ldapuser.card_id
+                u.save()
+            if ldapuser.pinCode:
+                u.pinCode = ldapuser.pinCode
                 u.save()
         except ObjectDoesNotExist:
-            u = UserCredit(uid=user.uid, card_id=user.card_id, credit=0.0)
+            u = UserCredit(uid=user.uid, card_id=user.card_id, pinCode="", credit=0.0)
             u.save()
 
-- 
GitLab