diff --git a/README.md b/README.md index c3491b9..ff2a069 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,8 @@ | `bid_scores` | 标书评分明细 | project_id, review_id, scoring_item_id, item_name, score, max_score, reason | | `bid_documents` | 合成标书 | project_id, version, doc_name, file_path, page_count, chapter_count, total_score | | `bid_qc_reviews` | 解析产出 QC 审核记录 | project_id, qc_type, round, reviewer, review_type, fit_score, pass_score | +| `bid_analysis_history` | QC 分析历史快照(每轮 QC 逐审核记录归档;2026-09-10 归籍补 models 定义,此前是孤儿表) | project_id, qc_type, round, task_id, fit_score, improvement, payload | +| `bid_cost_benefit` | 成本收益分析(分析维度4,单项+summary 结论行;m0006 建表未进 models,2026-09-10 归籍) | project_id, kind, category, item_name, amount, confidence | | `bid_kb_docs` | 公司投标知识库 | org_id, doc_type(sample_bid 等), doc_name, doc_no, tags, file_path, content_text | | `bid_members` | 投标项目参与人员 | project_id, user_id, user_name, member_role, duty, status | diff --git a/models/bid_analysis_history.json b/models/bid_analysis_history.json new file mode 100644 index 0000000..1c8d5b9 --- /dev/null +++ b/models/bid_analysis_history.json @@ -0,0 +1,24 @@ +{ + "summary": [ + { + "name": "bid_analysis_history", + "title": "投标QC分析历史记录表(2026-09-10归籍:bid_qc_capability.py快照写入,96行活表;定义逐列对齐活表,decimal/raw类型如实呈现)", + "primary": ["id"], + "catelog": "entity" + } + ], + "fields": [ + {"name": "id", "title": "主键ID", "type": "str", "length": 32, "nullable": "no"}, + {"name": "project_id", "title": "项目ID", "type": "str", "length": 32, "nullable": "no"}, + {"name": "qc_type", "title": "审核对象类型", "type": "str", "length": 32, "nullable": "no"}, + {"name": "round", "title": "QC轮次", "type": "int", "nullable": "no", "default": "0"}, + {"name": "task_id", "title": "关联任务ID(空串=无)", "type": "str", "length": 32, "nullable": "no", "default": ""}, + {"name": "fit_score", "title": "契合度得分", "type": "decimal(5,2)", "nullable": "no", "default": "0.00"}, + {"name": "improvement", "title": "改进意见", "type": "text", "nullable": "yes"}, + {"name": "payload", "title": "完整审核记录JSON快照", "type": "text", "nullable": "yes"}, + {"name": "created_at", "title": "创建时间(写入方显式NOW())", "type": "datetime", "nullable": "no"} + ], + "indexes": [ + {"name": "idx_bah_project", "idxtype": "index", "idxfields": ["project_id", "qc_type", "round"]} + ] +} diff --git a/models/bid_cost_benefit.json b/models/bid_cost_benefit.json new file mode 100644 index 0000000..a16344b --- /dev/null +++ b/models/bid_cost_benefit.json @@ -0,0 +1,28 @@ +{ + "summary": [ + { + "name": "bid_cost_benefit", + "title": "投标成本收益分析表(分析维度4;m0006建表未进models,2026-09-10归籍;写入方bid_analysis_capability.py;定义逐列对齐活表)", + "primary": ["id"], + "catelog": "entity" + } + ], + "fields": [ + {"name": "id", "title": "主键ID", "type": "str", "length": 32, "nullable": "no"}, + {"name": "project_id", "title": "项目ID", "type": "str", "length": 32, "nullable": "no"}, + {"name": "kind", "title": "行类型(item=单项/summary=结论)", "type": "str", "length": 16, "nullable": "no", "default": "item"}, + {"name": "category", "title": "类别(cost/benefit)", "type": "str", "length": 16, "nullable": "no", "default": "cost"}, + {"name": "item_name", "title": "条目名称", "type": "str", "length": 250, "nullable": "no"}, + {"name": "amount", "title": "金额(万元)", "type": "double", "length": 14, "dec": 2, "nullable": "yes"}, + {"name": "amount_note", "title": "金额说明", "type": "str", "length": 200, "nullable": "yes"}, + {"name": "basis", "title": "计算依据", "type": "text", "nullable": "yes"}, + {"name": "confidence", "title": "置信度(high/medium/low)", "type": "str", "length": 16, "nullable": "yes", "default": "medium"}, + {"name": "source_ref", "title": "数据来源引用", "type": "str", "length": 480, "nullable": "yes"}, + {"name": "order_no", "title": "显示排序", "type": "int", "nullable": "yes", "default": "0"}, + {"name": "created_at", "title": "创建时间", "type": "timestamp", "nullable": "no"}, + {"name": "updated_at", "title": "更新时间(写入方显式NOW();新机无ON UPDATE,平台约定)", "type": "timestamp", "nullable": "no"} + ], + "indexes": [ + {"name": "idx_project", "idxtype": "index", "idxfields": ["project_id"]} + ] +}