Graduation / Logic /FUsers /AddUserItem.py
Mohammedallyl's picture
Update Logic/FUsers/AddUserItem.py
2647087 verified
raw
history blame
2.41 kB
from fastapi import APIRouter,File,Form,UploadFile
import sqlite3
from os.path import exists
from os import makedirs,chmod
from PIL import Image
from io import BytesIO
UserItemAddRouter=APIRouter(prefix="/Users")
@UserItemAddRouter.post("/AddUserItem")
def adduser(Email:str=Form(...),Name:str=Form(...),Password:str=Form(...),Images:UploadFile=File(...)):
try:
State=False
connect=sqlite3.connect("DataBase/DataBase.bd")
cursor=connect.execute(f'''
SELECT UserId,Password FROM Users where Email='{ Email}'
''')
FData=cursor.fetchall()
if len(FData) !=0 :
if FData[0][0]==None:
return {"Status":False,"Message":"Email or Password Is Incorrect "}
HasedPassword=FData[0][1]
UserId=FData[0][0]
State= Password==HasedPassword
Name= Name
if not State:
return {"Status":False,"Message":"Email or Password is not correct"}
if not exists(f"./FaceRecognition/ExtactedFaces/{UserId}/Train/{Name}"):
connect.execute(f'''
INSERT INTO UserItems (UserId ,UserItemName ) VALUES ({UserId},'{Name}')
''')
connect.commit()
if not exists(f"./FaceRecognition/ExtactedFaces/{UserId}/Train/{Name}"):
makedirs(f"./FaceRecognition/ExtactedFaces/{UserId}/Train/{Name}")
chmod(f"./FaceRecognition/ExtactedFaces/{UserId}/Train/{Name}",0o777)
if not exists(f"./FaceRecognition/ExtactedFaces/{UserId}/Test/{Name}"):
makedirs(f"./FaceRecognition/ExtactedFaces/{UserId}/Test/{Name}")
chmod(f"./FaceRecognition/ExtactedFaces/{UserId}/Test/{Name}",0o777)
if not exists(f"./static/{UserId}/{Name}"):
makedirs(f"./static/{UserId}/{Name}")
chmod(f"./static/{UserId}/{Name}",0o777)
Image.open(BytesIO(Images.file.read())).save(f"./static/{UserId}/{Name}/user.png","PNG")
chmod(f"./static/{UserId}/{Name}/user.png",0o777)
return {"Status":True,"Message":"User Is Added Correctly"}
else:
return {"Status":False,"Message":"Name Is Already Exist"}
except Exception as e:
return {"Status":False,"Message":e}