--- name: bill-stock-occupation description: 库存占用单据表 - 记录库存占用信息,如预留、冻结等 license: MIT compatibility: opencode metadata: category: database domain: retail-erp table_type: transaction business_type: stock_occupation --- # 库存占用单据表 (bill_stock_occupation) ## 表信息 - **表名**: bill_stock_occupation - **主键**: id - **时间字段**: created_at, updated_at, sure_date - **查询日期字段**: sure_date (默认查询日期字段) ## 关键字段 | 字段名 | 数据类型 | 查询用途 | |--------|----------|----------| | id | varchar(50) | 主键ID | | tenant_id | varchar(50) | 租户ID,必须包含在查询条件中 | | bill_id | varchar(50) | 单据编号 | | bill_type | varchar(20) | 单据类型:STOCK_OCCUPATION库存占用 | | bill_status | varchar(20) | 单据状态:DRAFT/APPROVED/ACTIVE/RELEASED/CANCELLED | | from_store_id | varchar(50) | 发货门店ID,关联master_store | | to_store_id | varchar(50) | 收货门店ID(可选),关联master_store | | from_company_id | varchar(50) | 发货方公司ID,关联master_company | | to_company_id | varchar(50) | 收货方公司ID,关联master_company | | product_id | varchar(50) | 商品ID,关联master_product | | settlement_qty | decimal(12,4) | 结算数量,占用数量 | | settlement_price | decimal(12,2) | 结算单价 | | discount_rate | decimal(5,4) | 折扣率 | | settlement_amount | decimal(12,2) | 结算金额 = qty × price × (1 - discount_rate) | | sure_status | int | 登账标识:0草稿/1已登账,查询必须为1 | | sure_date | date | 登账日期,默认查询日期字段 | | created_at | datetime | 创建时间 | ## 关联关系 - **父表关联**: - from_store_id → master_store.stor_id (占用门店) - to_store_id → master_store.stor_id (目标门店,可选) - from_company_id → master_company.id (占用方公司) - to_company_id → master_company.id (目标公司,可选) - product_id → master_product.product_id (占用商品) ## 在查询拆解中的角色 - **查询部分**:可查询占用数量、占用金额、折扣率等业务指标 - **where部分**:可通过关联的店铺、商品、公司字段进行筛选,时间条件默认使用sure_date - **from部分**:作为库存占用数据的主表,需关联档案表获取维度信息 - **汇总部分**:可按占用门店、商品、时间等维度汇总占用数据 - **排序部分**:通常按占用金额、占用数量或时间排序 ## 关键查询规则 1. **租户隔离**: 必须包含tenant_id条件 2. **单据状态**: 必须检查sure_status=1 (已登账数据) 3. **时间字段**: 查询日期默认使用sure_date字段 4. **关联完整性**: 必须正确关联店铺、商品、公司档案表 5. **占用性质**: 此为库存占用表,用于记录库存预留、冻结等状态,非实际出入库 ## 多步骤查询支持 - 可作为数据源表,创建中间表保存库存占用明细数据 - 支持创建中间表格式:{user_id}_{datetime}_step{n}_stock_occupation - 中间表关键字段:id, bill_id, from_store_id, product_id, settlement_qty, settlement_amount, sure_date - 通常作为查询的最后几步,先筛选档案数据再关联本表