import json from pathlib import Path P=Path(__file__).parent plan=json.loads((P/'route-plan-with-ids.json').read_text(encoding='utf8')) result=json.loads((P/'route-import-result.json').read_text(encoding='utf8')) lines=['# 工序去重和工艺路线生成结果','', '已同步至 36.213.150.237:10000 / mom-hm,并在事务提交后核对路线工序顺序、后继工序及全部标记。', '',f"26 份附件去重后为 24 份规程;新增 {result['new_processes']} 个工序、{result['new_process_contents']} 条带来源的工序操作说明、{result['new_routes']} 条路线和 {result['new_route_steps']} 条路线工序。",'', '## 质检与领料设置','', '- 原文流程图中的全部 90 个星号控制点已设置 `check_flag=1`(需要质检),并在备注保留 `*原文关键控制点`。', '- 成品检验和金属探测也设置需要质检,共 122 个路线工序。', '- 全部 421 个路线工序均为 `backflush_flag=0`:非倒冲、手动领料。', '- 系统 `key_flag` 是唯一产出工序,用于累计工单产量和生成产出单,并非原文多处关键控制点字段。每条路线仅选内包装或热灌装为产出关键工序;所有星号控制点独立标记需要质检。这样避免多个工序重复累计成品产量。', '', '## 路线状态与范围','', '28 条路线均按系统新建规则保存为未启用(status=1),可在生产管理的工艺路线中查看、编辑。工序主数据为启用状态。', '', '袋装与瓶装的后处理不同,沙棘原浆罐头、黑果枸杞原浆罐头、桑葚原浆及燕窝肽饮品分别生成两条路线;两份黑果枸杞规程类别/版本不同,分别保留。', '', '未绑定产品或新建物料:产品名称、规格、包装及物料类型存在多候选,系统还限制每个产品只能绑定一条路线。候选产品列在 `产品候选及待核实事项.csv`,没有沿用质检任务中的随机选择规则。BOM 用量、批次产量及生产总用时未填造。', '', '原有测试路线及其产品关系保持原样;未生成生产工单或过程检验单,未修改此前来料、出货检验数据。', '', '## 已保留的差异','', '- 即食藜麦粉 R 型:流程图及质量监控表混合40min,正文混合30min;保留冲突,未替用户选定生产设定值。', '- 即食藜麦粉 B 型:流程图有浸泡、沥干、高温杀菌、粉碎、过筛和金属探测,正文未完整展开前处理;按图保留步骤并标注待核实。', '- 红黑枸杞原浆:红枸杞、黑果枸杞各自制浆后合流。系统只支持一条后继工序链,采用两项复合工序保存各支线说明;显示顺序不表示将红枸杞半成品投到黑枸杞前处理线上。', '- 黑果枸杞玫瑰果膏:图中预热后过40目筛,正文未单列,已保留过滤步骤。', '- 冻干枸杞文件从已冻干原料的包装开始,未虚构冻干加工步骤。', '- 人参葛根枳椇子玉米低聚肽饮品原文未列冷却风干,未从其他产品复制补入。', '', '## 系统生成清单','', '| 路线ID | 来源编号 | 产品及包装 | 工序数 | 星号质检数 |', '| ---: | --- | --- | ---: | ---: |'] for r in plan['routes']: lines.append(f"| {r['id']} | {r['document_code']} | {r['product']}{'('+r['variant']+')' if r['variant'] else ''} | {len(r['steps'])} | {sum(st['starred'] for st in r['steps'])} |") lines+=['','## 明细和审计','', '- [去重工序清单](去重工序清单.csv)', '- [工艺路线生成结果](工艺路线生成结果.csv)', '- [路线与工序明细](工艺路线与工序明细.csv)', '- [产品候选和待核实事项](产品候选及待核实事项.csv)', '- `documents.json`:原文件路径、SHA256 及正文。各 `提取文本.txt`、XML 和流程图 PNG 为核对中间文件。', '- `route-plan-with-ids.json`:路线、工序、原文证据、标记与系统ID。', '- `before-route-import.json`:同步前相关系统数据快照。', '- `route-import-executed.sql`:实际执行的 SQL。', '- `route-import-result.json`:提交后验证结果。',''] (P/'工艺路线生成说明.md').write_text('\n'.join(lines),encoding='utf8')