45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
|
from typing import List
|
||
|
from sqlalchemy.orm import Session
|
||
|
from Model.PostModel import Post
|
||
|
from Model.UserModel import User
|
||
|
|
||
|
|
||
|
def get_post_list(db: Session):
|
||
|
return db.query(Post).all()
|
||
|
|
||
|
|
||
|
def is_post_created(db: Session, name: str):
|
||
|
if db.query(Post).filter_by(name=name):
|
||
|
return True
|
||
|
else:
|
||
|
return False
|
||
|
|
||
|
|
||
|
def add_post(db: Session, name: str):
|
||
|
if not is_post_created(db, name):
|
||
|
db.add(Post(name=name))
|
||
|
db.commit()
|
||
|
else:
|
||
|
raise Exception("部门已经存在")
|
||
|
|
||
|
|
||
|
def change_post(db: Session, post_id: int, name: str):
|
||
|
db.query(Post).filter_by(id=post_id).update({"name": name})
|
||
|
db.commit()
|
||
|
|
||
|
|
||
|
def delete_post(db: Session, name: str):
|
||
|
if not is_post_created(db, name):
|
||
|
db.add(Post(name=name))
|
||
|
db.commit()
|
||
|
else:
|
||
|
raise Exception("部门已经存在")
|
||
|
|
||
|
|
||
|
def set_user_post(db: Session, user_id: str, post_id_list: List[int]):
|
||
|
post_info = "".join([str(item) for item in post_id_list])
|
||
|
db.query(User).filter_by(id=user_id).update({"post": post_info})
|
||
|
db.commit()
|
||
|
db.refresh(User)
|
||
|
return User.post
|