f
zhaoqingang
2024-12-31 181aa6b29c7bba447107941051eebfaac9e7d7ea
app/service/label.py
@@ -1,18 +1,19 @@
import uuid
from streamlit.time_util import adjust_years
from Log import logger
from app.models.label_model import LabelModel, LabelWorkerModel
from app.models.role_model import RoleModel
async def label_list_service(db, keyword: str, label_type):
async def label_list_service(db, keyword: str, label_type, object_id):
    query = db.query(LabelModel)
    if keyword:
        query = query.filter(LabelModel.name.like('%{}%'.format(keyword)))
    if label_type:
        query = query.filter(LabelModel.label_type==label_type)
    if object_id:
        label_id = [i.label_id for i in db.query(LabelWorkerModel).filter(LabelWorkerModel.object_id==object_id).all()]
        query = query.filter(LabelModel.id.in_(label_id))
    labels = query.order_by(LabelModel.id.desc()).all()
    return {"total": query.count(), "rows":  [label.to_json() for label in labels]}
@@ -61,4 +62,10 @@
            logger.error(e)
            db.rollback()
            # return False
    for label_id in delete_list:
        try:
            LabelWorkerModel(id=label_id).delete()
        except Exception as e:
            logger.error(e)
            db.rollback()
    return True