From 401d45e215d0ea3d02dc4f871ab3397533854734 Mon Sep 17 00:00:00 2001 From: Olatunji Date: Fri, 3 Sep 2021 09:45:52 +0100 Subject: [PATCH 1/2] create deal update endpoint --- .gitignore | 3 ++- deals/urls.py | 3 ++- deals/views.py | 33 ++++++++++++++++++++++++++++++--- prospect/views.py | 2 +- 4 files changed, 35 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 932844a06..9717e5a81 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ venv/ "db.sqlite3" venv duovenv/ -env \ No newline at end of file +env +Pipenv.lock \ No newline at end of file diff --git a/deals/urls.py b/deals/urls.py index ff7bbd18a..967213eff 100644 --- a/deals/urls.py +++ b/deals/urls.py @@ -1,6 +1,7 @@ from django.urls import path -from deals.views import DealCreateView +from deals.views import DealCreateView, DealUpdateView urlpatterns = [ path("create/", DealCreateView.as_view()), + path("update//", DealUpdateView.as_view()) ] \ No newline at end of file diff --git a/deals/views.py b/deals/views.py index c2fcf59c2..90ddfeeb3 100644 --- a/deals/views.py +++ b/deals/views.py @@ -2,7 +2,6 @@ from django.conf import settings from deals.serializers import DealSerializer from rest_framework.views import APIView -from rest_framework import status import requests import json from rest_framework.response import Response @@ -48,5 +47,33 @@ def post(self, request, *args, **kwargs): print(response.status_code) print(r) if response.status_code == 201: - return Response(data={'message':'Created deal object successfully!'}, status=status.HTTP_201_CREATED) - return Response(data={"message":"Creation of deals failed... Try again later."}, status=st.HTTP_500_INTERNAL_SERVER_ERROR) \ No newline at end of file + return Response(data={'message':'Created deal object successfully!'}, status=st.HTTP_201_CREATED) + return Response(data={"message":"Creation of deals failed... Try again later."}, status=st.HTTP_500_INTERNAL_SERVER_ERROR) + +class DealUpdateView(APIView): + """ + An endpoint to update a deal, takes in prospect_id, status, title, and amount. + The endpoint is https://sales.zuri.chat/deals/update// + """ + serializer_class = DealSerializer + queryset = None + + def put(self, request, *args, **kwargs): + url = "https://zccore.herokuapp.com/data/write" + serializer = DealSerializer(data=request.data) + serializer.is_valid(raise_exception=True) + data = { + "plugin_id": "000000000000000000000000", + "organization_id": "612a3a914acf115e685df8e3", + "collection_name": "deals", + "bulk_write": False, + "object_id":serializer.data.get("_id"), + "payload": serializer.data + } + response = requests.request("POST", url,data=json.dumps(data)) + r = response.json() + print(response.status_code) + print(r) + if response.status_code == 201: + return Response(data={'message':'successful'}, status=st.HTTP_201_CREATED) + return Response(data={"message":"Try again later"}, status=st.HTTP_500_INTERNAL_SERVER_ERROR) \ No newline at end of file diff --git a/prospect/views.py b/prospect/views.py index cd490f1e4..57137cac7 100644 --- a/prospect/views.py +++ b/prospect/views.py @@ -123,9 +123,9 @@ def put(self, request, *args, **kwargs): "payload": serializer.data } response = requests.request("POST", url,data=json.dumps(data)) + r = response.json() print(response.status_code) print(r) if response.status_code == 201: - r = response.json() return Response(data={'message':'successful'}, status=status.HTTP_201_CREATED) return Response(data={"message":"Try again later"}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) From 263fa7df8a9f0a8cc332ce037211226635f38846 Mon Sep 17 00:00:00 2001 From: Olatunji Date: Fri, 3 Sep 2021 10:01:20 +0100 Subject: [PATCH 2/2] create deal update endpoint --- deals/urls.py | 2 +- deals/views.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/deals/urls.py b/deals/urls.py index 967213eff..f6ffec5f7 100644 --- a/deals/urls.py +++ b/deals/urls.py @@ -3,5 +3,5 @@ urlpatterns = [ path("create/", DealCreateView.as_view()), - path("update//", DealUpdateView.as_view()) + path("update//", DealUpdateView.as_view()) ] \ No newline at end of file diff --git a/deals/views.py b/deals/views.py index 90ddfeeb3..1afe7f0ec 100644 --- a/deals/views.py +++ b/deals/views.py @@ -53,7 +53,7 @@ def post(self, request, *args, **kwargs): class DealUpdateView(APIView): """ An endpoint to update a deal, takes in prospect_id, status, title, and amount. - The endpoint is https://sales.zuri.chat/deals/update// + The endpoint is https://sales.zuri.chat/deals/update// """ serializer_class = DealSerializer queryset = None