Files
py-ailbl-user-profile/apps/crud.py
QuangMinh_123 a246e3d778
Some checks failed
K8S Fission Deployment / Deployment fission functions (push) Failing after 21s
CRUD_UserProfile
2025-12-08 07:50:09 +00:00

110 lines
3.3 KiB
Python

import io
from flask import Response
from helpers import init_db_connection, CORS_HEADERS
from PIL import Image
def get_profile(user_id):
try:
conn = init_db_connection()
cursor = conn.cursor()
# Truy van thong tin nguoi dung tu bang ailbl_user_profiles
query = "SELECT * FROM ailbl_user_profiles WHERE user_id = %s"
cursor.execute(query, (user_id,))
profile = cursor.fetchone() # fetchone la gi ?
if profile:
return {
"user_id": profile[0],
"first_name": profile[1],
"last_name": profile[2],
"dob": profile[3],
"gender": profile[4],
"address": profile[5],
"phone": profile[6],
"created": profile[7],
"modified": profile[8]
}, 200, CORS_HEADERS
else:
return {"error": "Profile not found"}, 404, CORS_HEADERS
except Exception as e:
return {"error": str(e)}, 500, CORS_HEADERS
finally:
if conn:
conn.close()
def update_profile(user_id, data):
try:
conn = init_db_connection()
cursor = conn.cursor()
# Cap nhat thong tin nguoi dung trong bang ailbl_user_profiles
query = """
UPDATE ailbl_user_profiles
SET first_name = %s, last_name = %s, dob = %s, gender = %s, address = %s, phone = %s, modified = NOW()
WHERE user_id = %s
"""
cursor.execute(query, (
data.get("first_name"),
data.get("last_name"),
data.get("dob"),
data.get("gender"),
data.get("address"),
data.get("phone"),
user_id
))
conn.commit()
return {"message": "Profile updated successfully"}, 200, CORS_HEADERS
except Exception as e:
return {"error": str(e)}, 500, CORS_HEADERS
finally:
if conn:
conn.close()
def insert_profile(user_id, data):
try:
conn = init_db_connection()
cursor = conn.cursor()
# Tao moi thong tin nguoi dung trong bang ailbl_user_profiles
query = """
INSERT INTO ailbl_user_profiles (user_id, first_name, last_name, dob, gender, address, phone, created, modified)
VALUES (%s, %s, %s, %s, %s, %s, %s, NOW(), NOW())
"""
cursor.execute(query, (
user_id,
data.get("first_name"),
data.get("last_name"),
data.get("dob"),
data.get("gender"),
data.get("address"),
data.get("phone")
))
conn.commit()
return {"message": "Profile created successfully"}, 201, CORS_HEADERS
except Exception as e:
return {"error": str(e)}, 500, CORS_HEADERS
finally:
if conn:
conn.close()
def delete_profile(user_id):
try:
conn = init_db_connection()
cursor = conn.cursor()
# Xoa thong tin nguoi dung trong bang ailbl_user_profiles
query = "DELETE FROM ailbl_user_profiles WHERE user_id = %s"
cursor.execute(query, (user_id,))
conn.commit()
return {"message": "Profile deleted successfully"}, 200, CORS_HEADERS
except Exception as e:
return {"error": str(e)}, 500, CORS_HEADERS
finally:
if conn:
conn.close()