add banks to connection viewset. Change plaid auth to return connection serializer
This commit is contained in:
parent
20aa85bf08
commit
4e188cd57e
@ -1,5 +1,6 @@
|
|||||||
from rest_framework import serializers
|
from rest_framework import serializers
|
||||||
from .models import ConnectionType, Connection
|
from .models import ConnectionType, Connection
|
||||||
|
from qrtr_account.models import BankAccount
|
||||||
|
|
||||||
|
|
||||||
class ConnectionTypeSerializer(serializers.HyperlinkedModelSerializer):
|
class ConnectionTypeSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
@ -11,12 +12,24 @@ class ConnectionTypeSerializer(serializers.HyperlinkedModelSerializer):
|
|||||||
'filename': {'read_only': True}
|
'filename': {'read_only': True}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class ConnectionAccountSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
class ConnectionSerializer(serializers.HyperlinkedModelSerializer):
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Connection
|
model = Connection
|
||||||
fields = ['url', 'name', 'type', 'credentials']
|
fields = ['pk', 'url', 'name', 'type']
|
||||||
|
|
||||||
|
class BankAccountReadSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
|
connection = ConnectionAccountSerializer(read_only=True)
|
||||||
|
class Meta:
|
||||||
|
model = BankAccount
|
||||||
|
fields = ['pk', 'url', 'connection']
|
||||||
|
|
||||||
|
class ConnectionSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
|
bank_accounts = BankAccountReadSerializer(read_only=True, source='*')
|
||||||
|
class Meta:
|
||||||
|
model = Connection
|
||||||
|
fields = ['url', 'name', 'type', 'credentials', 'bank_accounts']
|
||||||
extra_kwargs = {
|
extra_kwargs = {
|
||||||
'type': {'write_only': True},
|
'type': {'write_only': True},
|
||||||
'credentials': {'write_only': True}
|
'credentials': {'write_only': True}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -78,7 +78,7 @@ class ConnectionViewSet(viewsets.ModelViewSet, OwnedAccountsMixin):
|
|||||||
conn.credentials = plaid_client.credentials
|
conn.credentials = plaid_client.credentials
|
||||||
print(f"CREDS: {plaid_client.credentials}")
|
print(f"CREDS: {plaid_client.credentials}")
|
||||||
conn.save()
|
conn.save()
|
||||||
return Response(plaid_client.get_accounts())
|
return Response(self.get_serializer(conn).data)
|
||||||
|
|
||||||
@action(detail=False, methods=['post'], url_path='plaid')
|
@action(detail=False, methods=['post'], url_path='plaid')
|
||||||
def authenticate(self, request):
|
def authenticate(self, request):
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user