feat: 初始化工程
This commit is contained in:
43
service/user_service.py
Normal file
43
service/user_service.py
Normal file
@@ -0,0 +1,43 @@
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from models.family import Users
|
||||
from schemas.user import UserCreate, UserUpdate
|
||||
|
||||
|
||||
def get_user_by_id(db: Session, user_id: int) -> Users | None:
|
||||
result = db.execute(select(Users).where(Users.id == user_id))
|
||||
return result.scalar_one_or_none()
|
||||
|
||||
|
||||
def create_user(db: Session, user: UserCreate) -> Users:
|
||||
user = Users(**user.model_dump())
|
||||
db.add(user)
|
||||
db.commit()
|
||||
db.refresh(user)
|
||||
|
||||
return user
|
||||
|
||||
|
||||
def update_user(db: Session, user_id: int, obj_in: UserUpdate) -> Users:
|
||||
user = get_user_by_id(db, user_id)
|
||||
if not user:
|
||||
return False
|
||||
|
||||
for field, value in obj_in.model_dump(exclude_unset=True).items():
|
||||
setattr(user, field, value)
|
||||
db.commit()
|
||||
db.refresh(user)
|
||||
|
||||
return user
|
||||
|
||||
|
||||
def delete_user(db: Session, user_id: int) -> bool:
|
||||
user = get_user_by_id(db, user_id)
|
||||
if not user:
|
||||
return False
|
||||
|
||||
db.delete(user)
|
||||
db.commit()
|
||||
|
||||
return True
|
||||
Reference in New Issue
Block a user