Spaces:
Sleeping
Sleeping
from fastapi import APIRouter | |
import sqlite3 | |
from passlib.context import CryptContext | |
from shutil import rmtree | |
from os.path import exists | |
from pydantic import BaseModel | |
class DataType(BaseModel): | |
Email:str | |
Name:str | |
Password:str | |
UserItemDeleteRouter=APIRouter(prefix="/Users") | |
def adduser(Dat:DataType): | |
try: | |
State=False | |
connect=sqlite3.connect("DataBase/DataBase.bd") | |
cursor=connect.execute(f''' | |
SELECT UserId,Password FROM Users where Email='{Dat.Email}' | |
''') | |
Data=cursor.fetchall() | |
if len(Data) !=0 : | |
if Data[0][0]==None: | |
return {"Status":False,"Message":"Email or Password Is Incorrect"} | |
HasedPassword=Data[0][1] | |
UserId=Data[0][0] | |
State=Dat.Password==HasedPassword | |
if not State: | |
return {"Status":False,"Message":"Email or Password is not correct"} | |
Name=Dat.Name | |
connect.execute(f''' | |
DELETE FROM UserItems WHERE UserId={UserId} AND UserItemName='{Name}' | |
''') | |
connect.commit() | |
if exists(f"./FaceRecognition/ExtactedFaces/{UserId}/Test/{Name}"): | |
rmtree(f"./FaceRecognition/ExtactedFaces/{UserId}/Test/{Name}") | |
if exists(f"./FaceRecognition/ExtactedFaces/{UserId}/Train/{Name}"): | |
rmtree(f"./FaceRecognition/ExtactedFaces/{UserId}/Train/{Name}") | |
else: | |
return {"Status":False,"Message":"User Is Not Founded"} | |
return {"Status":True,"Message":"User Is Deleted Correctly"} | |
except sqlite3.Error as e: | |
return {"Status":False,"Message":e} |