Exemple #1
0
 def put(self, request, pk, format=None):
     item = self.get_object(pk)
     serializer = ItemsSerializer(item, data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemple #2
0
 def put(self, request, pk=None):
     """ to update the specfic item """
     queryset = Items.objects.get(pk=pk)
     serializer = ItemsSerializer(instance=queryset, data=request.data)
     if serializer.is_valid():
         serializer.save()
     response = serializer.data
     if settings.DEBUG:
         response.update(image='http://localhost:8000' + response['image'])
     message = "updated Successfully! redirecting to details page"
     return Response(
         {'result': {
             'item_detail': response,
             "message": message
         }}, status.HTTP_200_OK)
Exemple #3
0
class TrxsReceiptReadSerializer(serializers.ModelSerializer):

    items = ItemsSerializer()

    class Meta:
        model = TrxsReceipt
        fields = ('id', 'items', 'quantity', 'trxs')
Exemple #4
0
 def create(self, request):
     """to add new item"""
     serializer = ItemsSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save()
         message = "Item Added successfully!"
         response = self.list_of_items()
         return Response(
             {"result": {
                 "product_data": response,
                 "message": message
             }}, 201)
     error_messages = "Either you have entered invalid input or Server is down!"
     return Response({"result": {
         'message': error_messages
     }}, status.HTTP_201_CREATED)
Exemple #5
0
class InventoriesReadSerializer(serializers.ModelSerializer):
    item = ItemsSerializer()
    store = StoresSerializer()

    class Meta:
        model = Inventories
        fields = ('id', 'store', 'item', 'quantity', 'updated')
Exemple #6
0
 def test_retrive_items_list(self):
     """ test retrieving the list of ingredients """
     Items.objects.create(name="Green Tea", description="Refreshing and Healthy Tea", price=20, image=self.tem_img1)
     Items.objects.create(name="Egg Roll", description="Egg with roti and veggies", price=40, image=self.tem_img2)
     res = self.client.get(self.items_url)
     all_items = Items.objects.all().order_by('-added_date')
     serializer = ItemsSerializer(all_items, many=True)
     self.assertEqual(res.status_code, status.HTTP_200_OK)
     self.assertEqual(res.data, {"result":{"product_data":serializer.data}})
Exemple #7
0
 def retrieve(self, request, pk=None):
     """ to retrieve specfic item """
     queryset = Items.objects.all()
     item = get_object_or_404(queryset, pk=pk)
     serializer = ItemsSerializer(item)
     response = serializer.data
     if settings.DEBUG:
         response.update(image='http://localhost:8000' + response['image'])
     return Response({'result': {
         'item_detail': response
     }}, status.HTTP_200_OK)
Exemple #8
0
 def test_retrive_one_items(self):
     """ retrieving the one of item from two """
     item1 = Items.objects.create(name="Green Tea", description="Refreshing and Healthy Tea", price=20, image=self.tem_img1)
     item2 = Items.objects.create(name="Egg Roll", description="Egg with roti and veggies", price=40, image=self.tem_img2)
     pk = item1.id
     res = self.client.get(self.items_url+ f'{pk}/')
     queryset = Items.objects.all()
     item = get_object_or_404(queryset, pk=pk)
     serializer = ItemsSerializer(item)
     response = serializer.data
     self.assertEqual(res.status_code, status.HTTP_200_OK)
     self.assertEqual(res.data, {"result":{"item_detail":response}})
Exemple #9
0
 def test_update_items(self):
     """ updating an item """
     item = Items.objects.create(name="Green Tea", description="Refreshing and Healthy Tea", price=20, image=self.tem_img1)
     pk = item.id
     payload = {"name": "Coffee", "description":"Strong and refreshing", "price":25, "image":self.image1}
     res = self.client.put(self.items_url+ f'{pk}/', payload, format='multipart')
     queryset = Items.objects.all()
     item = get_object_or_404(queryset, pk=pk)
     serializer = ItemsSerializer(item)
     response = serializer.data
     message = "updated Successfully! redirecting to details page"
     self.assertEqual(res.status_code, status.HTTP_200_OK)
     self.assertEqual(res.data, {"result":{"item_detail":response, "message": message}})
Exemple #10
0
 def list_of_items():
     """ helper function to lists all the items
     args : None
     returns :
         list of dictionary of items
     """
     queryset = Items.objects.filter(
         status='active').order_by('-added_date')
     serializer = ItemsSerializer(queryset, many=True)
     response = serializer.data
     if settings.DEBUG:
         for items_list in response:
             for k, v in items_list.items():
                 if k == 'image':
                     items_list.update(image='http://localhost:8000' + v)
                     break
     return response
Exemple #11
0
 def get(self, request, pk, format=None):
     item = self.get_object(pk)
     serializer = ItemsSerializer(item)
     return Response(serializer.data)
Exemple #12
0
 def post(self, request, format=None):
     serializer = ItemsSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=status.HTTP_201_CREATED)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)