File size: 4,070 Bytes
ff72db3 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 |
# from fastapi import APIRouter, Depends, HTTPException
# from sqlalchemy.orm import Session
# from models.user_info import UserInfo
# from config.database import get_db
# from typing import Optional
# from datetime import datetime
# router = APIRouter()
# # μ¬μ©μ μ‘°ν
# @router.get("/users/{user_id}")
# async def get_user(user_id: str, db: Session = Depends(get_db)):
# user = db.query(UserInfo).filter(UserInfo.id == user_id).first()
# if not user:
# raise HTTPException(status_code=404, detail="User not found")
# return user
# # μ¬μ©μ μμ±
# @router.post("/users")
# async def create_user(
# id: str,
# preferred_username: Optional[str] = None,
# mobile: Optional[str] = None,
# business_cd: Optional[str] = None,
# role_seq: Optional[int] = None,
# name: Optional[str] = None,
# email: Optional[str] = None,
# profile: Optional[str] = None,
# school_code: Optional[str] = None,
# grade: Optional[int] = None,
# class_name: Optional[str] = None,
# student_no: Optional[int] = None,
# creator_id: Optional[str] = None,
# creator_ip: Optional[str] = None,
# db: Session = Depends(get_db)
# ):
# new_user = UserInfo(
# id=id,
# preferred_username=preferred_username,
# mobile=mobile,
# business_cd=business_cd,
# role_seq=role_seq,
# name=name,
# email=email,
# profile=profile,
# school_code=school_code,
# grade=grade,
# class_name=class_name,
# student_no=student_no,
# created_at=datetime.now(),
# creator_id=creator_id,
# creator_ip=creator_ip,
# )
# db.add(new_user)
# db.commit()
# db.refresh(new_user)
# return new_user
# # μ¬μ©μ λͺ©λ‘ μ‘°ν
# @router.get("/users")
# async def list_users(db: Session = Depends(get_db)):
# return db.query(UserInfo).all()
# # μ¬μ©μ μ
λ°μ΄νΈ
# @router.put("/users/{user_id}")
# async def update_user(
# user_id: str,
# preferred_username: Optional[str] = None,
# mobile: Optional[str] = None,
# business_cd: Optional[str] = None,
# role_seq: Optional[int] = None,
# name: Optional[str] = None,
# email: Optional[str] = None,
# profile: Optional[str] = None,
# school_code: Optional[str] = None,
# grade: Optional[int] = None,
# class_name: Optional[str] = None,
# student_no: Optional[int] = None,
# updater_id: Optional[str] = None,
# updater_ip: Optional[str] = None,
# db: Session = Depends(get_db)
# ):
# user = db.query(UserInfo).filter(UserInfo.id == user_id).first()
# if not user:
# raise HTTPException(status_code=404, detail="User not found")
# # νλ μ
λ°μ΄νΈ
# if preferred_username is not None:
# user.preferred_username = preferred_username
# if mobile is not None:
# user.mobile = mobile
# if business_cd is not None:
# user.business_cd = business_cd
# if role_seq is not None:
# user.role_seq = role_seq
# if name is not None:
# user.name = name
# if email is not None:
# user.email = email
# if profile is not None:
# user.profile = profile
# if school_code is not None:
# user.school_code = school_code
# if grade is not None:
# user.grade = grade
# if class_name is not None:
# user.class_name = class_name
# if student_no is not None:
# user.student_no = student_no
# user.updated_at = datetime.now()
# user.updater_id = updater_id
# user.updater_ip = updater_ip
# db.commit()
# db.refresh(user)
# return user
# # μ¬μ©μ μμ
# @router.delete("/users/{user_id}")
# async def delete_user(user_id: str, db: Session = Depends(get_db)):
# user = db.query(UserInfo).filter(UserInfo.id == user_id).first()
# if not user:
# raise HTTPException(status_code=404, detail="User not found")
# db.delete(user)
# db.commit()
# return {"message": "User deleted successfully"}
|