perf: 为库存三表/BOM/物料基础表补全高频查询列索引,防止全表扫描
This commit is contained in:
@ -13,19 +13,19 @@ class StockBuy(db.Model):
|
||||
__tablename__ = 'stock_buy'
|
||||
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
base_id = db.Column(db.Integer, db.ForeignKey('material_base.id'), nullable=False)
|
||||
base_id = db.Column(db.Integer, db.ForeignKey('material_base.id'), nullable=False, index=True) # ★ 批量 IN 查询高频列
|
||||
|
||||
# 身份标识
|
||||
sku = db.Column(db.String(100))
|
||||
sku = db.Column(db.String(100), index=True) # ★ 条码/SKU 快速定位
|
||||
in_date = db.Column(db.DateTime)
|
||||
barcode = db.Column(db.String(100))
|
||||
barcode = db.Column(db.String(100), index=True) # ★ 条码扫码查询高频列
|
||||
serial_number = db.Column(db.String(100))
|
||||
batch_number = db.Column(db.String(100))
|
||||
|
||||
# 状态
|
||||
status = db.Column(db.String(50), default='在库')
|
||||
status = db.Column(db.String(50), index=True) # ★ 在库/锁定 过滤条件
|
||||
inspection_status = db.Column(db.String(50))
|
||||
warehouse_location = db.Column(db.String(100))
|
||||
warehouse_location = db.Column(db.String(100), index=True) # ★ 按库位分组/过滤
|
||||
|
||||
# 数量
|
||||
in_quantity = db.Column(db.Numeric(19, 4), default=0)
|
||||
|
||||
Reference in New Issue
Block a user