def deleteCategorieProduit(request): if (request.method == "DELETE"): if Validators.is_not_empty(request.body): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest("Le JSON dans le corps de votre requête est mal formaté") fields = ["id"] errors = Validators.keys_are_inside_arrays(data, fields) if Validators.is_type(errors, list): return HttpResponseBadRequest("Champs manquants : " + json.dumps(errors)) id = data["id"] categorieProduit = CategorieProduit.objects.filter(pk=id) if not Validators.is_not_empty(categorieProduit): return HttpResponseBadRequest("Catégorie non existante") categorieProduit[0].delete() return JsonResponse({'etat' : "Catégorie supprimée"}) else: return HttpResponseBadRequest("Vous n'avez pas mis de corps à votre requête") return HttpResponseForbidden("Accès refusé")
def getVenteDF(request): reponse = [] if(request.method == "POST"): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest("Probleme data") else: dateDebut = data["DateDebut"] dateFin = data["DateFin"] allVente = Vente.objects.all() for vente in allVente: if dateDebut <= vente.dateVente <= dateFin : reponse.append(Vente_to_json(vente)) return JsonResponse(reponse, safe= False) else: print("pas un get") return HttpResponseBadRequest("Mauvaise requête")
def login(request): if (request.method == "POST"): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest( "Le JSON dans le corps de votre requête est mal formaté") fields = ["login", "mdp"] errors = Validators.keys_are_inside_arrays(data, fields) if Validators.is_type(errors, list): return HttpResponseBadRequest("Champs manquants : " + json.dumps(errors)) user = User.objects.filter(login=data['login']) if Validators.is_not_empty(user): hashmdp = hashlib.md5(data['mdp'].encode() + user[0].grainsel.encode()) hashmdp = hashmdp.hexdigest() if user[0].mdp.lower() == hashmdp.lower(): user.update(dateDerniereConnexion=datetime.datetime.now(), token=random_generator(size=30)) return JsonResponse({ 'etat': "Connexion réussie", 'lvl': user[0].niveauAuth, 'token': user[0].token }) else: return HttpResponseBadRequest("Mauvais indentifiants") else: return HttpResponseBadRequest("Identifiants non existants") else: return HttpResponseForbidden("Accès refusé")
def deleteUser(request): if (request.method == "DELETE"): if Validators.is_not_empty(request.body): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest( "Le JSON dans le corps de votre requête est mal formaté") fields = ["login"] errors = Validators.keys_are_inside_arrays(data, fields) if Validators.is_type(errors, list): return HttpResponseBadRequest("Champs manquants : " + json.dumps(errors)) login = data["login"] userExist = User.objects.filter(login=login) if Validators.is_not_empty(userExist): userExist[0].delete() else: return HttpResponseForbidden("Utilisateur non existant") return JsonResponse({'etat': "Utilisateur supprimé"}) else: return HttpResponseBadRequest( "Vous n'avez pas mis de corps à votre requête") return HttpResponseForbidden("Accès refusé")
def editUser(request): if (request.method == "PUT"): if Validators.is_not_empty(request.body): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest( "Le JSON dans le corps de votre requête est mal formaté") fields = ["login", "mdp", "niveauAuth"] errors = Validators.keys_are_inside_arrays(data, fields) if Validators.is_type(errors, list): return HttpResponseBadRequest("Champs manquants : " + json.dumps(errors)) login = data["login"] mdp = data["mdp"] niveauAuth = data["niveauAuth"] user = User.objects.filter(login=login) if not Validators.is_not_empty(user): return HttpResponseBadRequest("Utilisateur non existant") user = user[0] if Validators.is_not_empty(login): user.login = login if Validators.is_not_empty(mdp): randomStr = random_generator() grainsel = hashlib.md5(randomStr.encode()) grainsel = grainsel.hexdigest() user.grainsel = grainsel mdpHashed = hashlib.md5(mdp.encode() + grainsel.encode()) user.mdp = mdpHashed.hexdigest() if Validators.is_not_empty(niveauAuth): try: int(niveauAuth) except ValueError: return HttpResponseBadRequest( "Niveau d'authentification doit être un entier") user.niveauAuth = niveauAuth user.save() return JsonResponse({'etat': "Utilisateur modifié"}) else: return HttpResponseBadRequest( "Vous n'avez pas mis de corps à votre requête") else: return HttpResponseForbidden("Accès refusé")
def editCategorieProduit(request): if (request.method == "PUT"): if Validators.is_not_empty(request.body): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest("Le JSON dans le corps de votre requête est mal formaté") fields = ["id", "nom", "colorGraph"] errors = Validators.keys_are_inside_arrays(data, fields) if Validators.is_type(errors, list): return HttpResponseBadRequest("Champs manquants : " + json.dumps(errors)) categorie = CategorieProduit() id = data["id"] nom = data["nom"] colorGraph = data["colorGraph"] categorie = CategorieProduit.objects.filter(pk=id) if not Validators.is_not_empty(categorie): return HttpResponseBadRequest("Categorie non existante") categorie = categorie[0] if Validators.is_not_empty(nom) & Validators.is_not_empty(colorGraph): categorie.nom = nom categorie.colorGraph = colorGraph else: return HttpResponseBadRequest("Un des champs est vide") categorie.save() return JsonResponse({'etat' : "Categorie modifiée"}) else: return HttpResponseBadRequest("Vous n'avez pas mis de corps à votre requête") else: return HttpResponseForbidden("Accès refusé")
def editProduit(request): if (request.method == "PUT"): if Validators.is_not_empty(request.body): data = Validators.is_valid_json(request.body) if data == False: return HttpResponseBadRequest("Le JSON dans le corps de votre requête est mal formaté") fields = ["id", "categorieProduit", "nom", "prixAchat", "prixVente", "disponible"] errors = Validators.keys_are_inside_arrays(data, fields) if Validators.is_type(errors, list): return HttpResponseBadRequest("Champs manquants : " + json.dumps(errors)) produit = Produit() categorieProduit = data["categorieProduit"] id = data["id"] nom = data["nom"] prixAchat = data["prixAchat"] prixVente = data["prixVente"] disponible = data["disponible"] quantite = data["quantite"] produit = Produit.objects.filter(pk=id) if not Validators.is_not_empty(produit): return HttpResponseBadRequest("Produit non existant") produit = produit[0] if Validators.is_not_empty(categorieProduit): categorieProduitExist = CategorieProduit.objects.filter(nom=categorieProduit) if Validators.is_not_empty(categorieProduitExist) == False: return HttpResponseBadRequest("Catégorie de produit non existante") produit.idCategorieProduit = categorieProduitExist[0] else: return HttpResponseBadRequest("Champ catégorie produit vide") if Validators.is_not_empty(nom) & Validators.is_not_empty(prixAchat) & Validators.is_not_empty(prixVente) & Validators.is_not_empty(disponible) & Validators.is_not_empty(quantite): produit.nom = nom produit.prixAchat = prixAchat produit.prixVente = prixVente produit.quantite = quantite produit.alt = nom.lower() if (disponible.lower() == "false"): produit.disponible = False elif (disponible.lower() == "true"): produit.disponible = True else: produit.disponible = True else: return HttpResponseBadRequest("Un des champs est vide") produit.save() return JsonResponse({'etat' : "Produit modifié"}) else: return HttpResponseBadRequest("Vous n'avez pas mis de corps à votre requête") else: return HttpResponseForbidden("Accès refusé")