项目基础模块代码

This commit is contained in:
2025-02-19 11:47:33 +08:00
parent 3cb2a4c507
commit 31302bcd17
30 changed files with 588 additions and 74 deletions

View File

@ -0,0 +1,72 @@
from sqlalchemy.orm import Session
from app.model.bussiness_model import ProjectLabel as plModel
from app.model.schemas.project_label_schemas import ProjectLabel
def get_label_list(project_id: int, session: Session):
"""
根绝项目id获取标签列表
:param project_id: 项目id
:param session:
:return:
"""
label_list = session.query(plModel).filter(plModel.project_id == project_id).all()
label_list = [ProjectLabel.from_orm(label) for label in label_list]
return label_list
def add_label(label: plModel, session: Session):
"""
新增标签
:param label:
:param session:
:return:
"""
session.add(label)
session.commit()
return label.id
def check_label_name(project_id: int, label_name: str, session: Session, label_id: int = None):
"""
检验标签名称是否存在
:param label_id:
:param project_id: 项目id
:param label_name: 标签名称
:param session:
:return:
"""
query = session.query(plModel)
filters = [plModel.project_id == project_id, plModel.label_name == label_name]
if label_id is not None:
filters.append(plModel.id != label_id)
query.filter(*filters)
if query.count() > 0:
return False
else:
return True
def update_label(label: plModel, session: Session):
"""
修改标签名称
:param label:
:param session:
:return:
"""
session.query(plModel).filter_by(id=label.id).update({
"label_name": label.label_name
})
session.commit()
def del_label(id: str, session: Session):
"""
根据标签id删除标签
:param id: 标签id
:param session:
:return:
"""
row_del = session.query(plModel).filter_by(id=id).delete()
return row_del