22 lines
609 B
TypeScript
22 lines
609 B
TypeScript
import type { MoldInfo } from '../types/mold'
|
|
|
|
/**
|
|
* 在版房数据集中按关键词搜索
|
|
* 匹配字段:名称(name)、款号(styleNo)、条码号(barcodeNo)、款式(style)
|
|
* 关键词为空时返回全部数据
|
|
*/
|
|
export function searchMolds(molds: MoldInfo[], keyword: string): MoldInfo[] {
|
|
const trimmed = keyword.trim().toLowerCase()
|
|
if (!trimmed) return molds
|
|
|
|
return molds.filter((mold) => {
|
|
const fields = [
|
|
mold.name,
|
|
mold.styleNo ?? '',
|
|
mold.barcodeNo ?? '',
|
|
mold.style ?? '',
|
|
]
|
|
return fields.some((f) => f.toLowerCase().includes(trimmed))
|
|
})
|
|
}
|