def handle(self, *args, **options): self.stdout.write('['+time.ctime()+'] Refreshing data...') response = requests.get(baseUrl+'products/') jsondata = response.json() QuantityInStock.objects.all().delete() for product in jsondata: # serializer = QuantityInStockSerializer(data={'quantityInStock':str('0')}) serializer_tigId = QuantityInStockSerializer(data={'tigId':str(product['id'])}) if serializer_tigId.is_valid(): # serializer.save() serializer_tigId.save() self.stdout.write(self.style.SUCCESS('['+time.ctime()+'] Successfully added product id="%s"' % product['id'])) self.stdout.write('['+time.ctime()+'] Data refresh terminated.')
def get(self, request, pk, format=None): prod = self.get_object(pk) serializer = QuantityInStockSerializer(prod) response = json.loads( requests.get(baseUrl + 'product/' + str(pk) + '/').text) response['quantity'] = serializer.data['quantity'] return Response(response)
def get(self, request, format=None): res = [] for prod in QuantityInStock.objects.all(): serializer = QuantityInStockSerializer(prod) response = requests.get(baseUrl + 'product/' + str(serializer.data['tigId']) + '/') jsondata = response.json() res.append(jsondata) return Response(res)
def get(self, request, id, number, format=None): prod = self.get_object(id) if prod: response = requests.get(baseUrl + 'product/' + str(id) + '/') json_response = response.json() self.increment_quantity(id, number) #récupère le produit de la table myRevendeurApp_quantityInStock avec la quantité à jour pour #update le sale et le discount du produit new_prod = self.get_object(id) response_after_update_sale = UpdateSale.update( self, new_prod, json_response, id) serializer = QuantityInStockSerializer(new_prod) response_after_update_sale['quantity'] = serializer.data[ 'quantity'] return Response(response_after_update_sale) else: return Response('id not found', status=404)
def get(self, request, id, number, format=None): prod_in_quantity_in_stock = self.get_object(id) if prod_in_quantity_in_stock: new_quantity = self.new_quantity(id, number) if new_quantity >= 0: response = requests.get(baseUrl + 'product/' + str(id) + '/') prod_in_database = response.json() QuantityInStock.objects.filter(tigId=id).update( quantity=new_quantity) #récupère le produit de la table myRevendeurApp_quantityInStock avec la quantité à jour pour #update le sale et le discount du produit new_prod = self.get_object(id) new_response = UpdateSale.update(self, new_prod, prod_in_database, id) serializer = QuantityInStockSerializer(new_prod) new_response['quantity'] = serializer.data['quantity'] return Response(new_response) else: return Response('cannot decrement, plese verify quantity', status=405) else: return Response('id not found', status=404)