半成品/成品入库:BOM 编号下拉按父件规格联动过滤(前后端双端改造)

- 后端 /inbound/{semi,product}/search-bom 增加 parent_spec 可选参数,Service 层在 MaterialBase.spec_model 上加等值过滤
This commit is contained in:
DXC
2026-06-04 16:01:48 +08:00
parent 332ae3c4cf
commit 8a2da1ac1e
8 changed files with 36 additions and 18 deletions

View File

@ -66,7 +66,7 @@ class ProductInboundService:
return {"items": [], "total": 0, "page": 1, "has_next": False}
@staticmethod
def search_bom_options(keyword):
def search_bom_options(keyword, parent_spec=None):
from app.models.bom import BomTable
try:
query = db.session.query(
@ -79,6 +79,9 @@ class ProductInboundService:
if hasattr(BomTable, 'is_enabled'):
query = query.filter(BomTable.is_enabled == True)
if parent_spec:
query = query.filter(MaterialBase.spec_model == parent_spec)
if keyword:
kw = f'%{keyword}%'
query = query.filter(

View File

@ -71,7 +71,7 @@ class SemiInboundService:
return {"items": [], "total": 0, "page": 1, "has_next": False}
@staticmethod
def search_bom_options(keyword):
def search_bom_options(keyword, parent_spec=None):
from app.models.bom import BomTable
try:
query = db.session.query(
@ -84,6 +84,9 @@ class SemiInboundService:
if hasattr(BomTable, 'is_enabled'):
query = query.filter(BomTable.is_enabled == True)
if parent_spec:
query = query.filter(MaterialBase.spec_model == parent_spec)
if keyword:
kw = f'%{keyword}%'
query = query.filter(