feat: add material search filters to semi, product, service modules

Co-authored-by: aider (openai/DeepSeek-V3.2-Thinking) <aider@aider.chat>
This commit is contained in:
dxc
2026-02-11 14:42:16 +08:00
parent b3fdc65d33
commit 9f0134b2e4
10 changed files with 195 additions and 14 deletions

View File

@ -204,3 +204,25 @@ class ServiceService:
return users
except Exception:
return []
# ============================================================
# 获取筛选选项(类别、类型)
# ============================================================
@classmethod
def get_filter_options(cls):
try:
from app.models.base import MaterialBase
categories = db.session.query(MaterialBase.category) \
.filter(MaterialBase.category != None, MaterialBase.category != '') \
.distinct().all()
types = db.session.query(MaterialBase.material_type) \
.filter(MaterialBase.material_type != None, MaterialBase.material_type != '') \
.distinct().all()
return {
"categories": [r[0] for r in categories],
"types": [r[0] for r in types]
}
except Exception:
import traceback
traceback.print_exc()
return {"categories": [], "types": []}