diff --git a/README.md b/README.md index 4f1ec47..9d23e4e 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,22 @@ Kassa helps you register purchased membership cards and memberships. It's a tool pip install -r requirements.txt python manage.py migrate -### LDAP +## Configuration +Create a user in Dusken with the following permissions: +* dusken | User | Can view User +* dusken | Member card | Can change Member card +* dusken | Member card | Can view Member card +* dusken | Membership | Can add Membership +* dusken | Membership | Can view Membership +* dusken | Order | Can view Order + +Fetch DUSKEN_API_KEY: + curl -H "Content-Type: application/json" -X POST -d '{"username":"apiuser","password":"test"}' DUSKEN_API_URL/auth/obtain-token/ + +If developing you can disable calls to Tekstmelding in local_settings.py: + TEKSTMELDING_ENABLED = False + +## LDAP sudo docker run -e LDAP_DOMAIN=neuf.no -e LDAP_ORGANISATION="Neuf" -e LDAP_ADMIN_PASSWORD="toor" -p 389:389 -d nikolaik/openldap ldapadd -D "cn=admin,dc=neuf,dc=no" -w "toor" -f test/testdata.ldif # Testdata # Verify import diff --git a/apps/kassa/admin.py b/apps/kassa/admin.py index d9ae24b..1ad497c 100644 --- a/apps/kassa/admin.py +++ b/apps/kassa/admin.py @@ -3,8 +3,10 @@ from django.contrib import admin class KassaEventAdmin(admin.ModelAdmin): - list_display = ['id', 'event', 'card_number', 'user_phone_number', 'user_inside_id', 'created'] + list_display = ['id', 'event', 'card_number', 'user_phone_number', 'user_dusken_id', + 'user_inside_id', 'created', 'transaction_id'] list_filter = ['event'] - search_fields = ['card_number', 'user_phone_number', 'user_inside_id'] + search_fields = ['card_number', 'user_phone_number', 'user_dusken_id', + 'user_inside_id', 'transaction_id'] admin.site.register(KassaEvent, KassaEventAdmin) diff --git a/apps/kassa/forms.py b/apps/kassa/forms.py index 2df895a..4c2e005 100644 --- a/apps/kassa/forms.py +++ b/apps/kassa/forms.py @@ -14,3 +14,4 @@ class AddCardForm(forms.Form): card_number = forms.IntegerField(widget=forms.NumberInput(attrs={'autofocus': True})) phone_number = PhoneNumberField(widget=forms.TextInput(attrs={'type': 'tel'})) user_id = forms.IntegerField(widget=forms.HiddenInput(), required=False) + order_uuid = forms.IntegerField(widget=forms.HiddenInput(), required=False) diff --git a/apps/kassa/migrations/0007_kassaevent_transaction_id.py b/apps/kassa/migrations/0007_kassaevent_transaction_id.py new file mode 100644 index 0000000..a13ca64 --- /dev/null +++ b/apps/kassa/migrations/0007_kassaevent_transaction_id.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.3 on 2017-07-22 12:40 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('kassa', '0006_auto_20150829_1811'), + ] + + operations = [ + migrations.AddField( + model_name='kassaevent', + name='transaction_id', + field=models.UUIDField(blank=True, null=True), + ), + ] diff --git a/apps/kassa/migrations/0008_kassaevent_user_dusken_id.py b/apps/kassa/migrations/0008_kassaevent_user_dusken_id.py new file mode 100644 index 0000000..87801c8 --- /dev/null +++ b/apps/kassa/migrations/0008_kassaevent_user_dusken_id.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.3 on 2017-07-22 12:43 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('kassa', '0007_kassaevent_transaction_id'), + ] + + operations = [ + migrations.AddField( + model_name='kassaevent', + name='user_dusken_id', + field=models.IntegerField(blank=True, null=True), + ), + ] diff --git a/apps/kassa/models.py b/apps/kassa/models.py index 21ba3ed..571a0e2 100644 --- a/apps/kassa/models.py +++ b/apps/kassa/models.py @@ -21,7 +21,9 @@ class KassaEvent(models.Model): ) event = models.CharField(max_length=255, choices=EVENT_CHOICES) card_number = models.IntegerField(null=True, blank=True) + user_dusken_id = models.IntegerField(null=True, blank=True) user_inside_id = models.IntegerField(null=True, blank=True) user_phone_number = models.CharField(max_length=100, null=True, blank=True) + transaction_id = models.UUIDField(null=True, blank=True) created = models.DateTimeField(auto_now_add=True) updated = models.DateTimeField(auto_now=True) diff --git a/apps/kassa/templates/kassa/register.html b/apps/kassa/templates/kassa/register.html index b3496eb..847dff4 100644 --- a/apps/kassa/templates/kassa/register.html +++ b/apps/kassa/templates/kassa/register.html @@ -18,7 +18,7 @@ {{ add_card_form|bootstrap }}