# 03-推进台账

## 2026-06-29 第 1 轮：新增及时齐套跟踪结果页面

### 做了什么

- 解析 `doc/新增及时齐套跟踪结果.docx`，确认页面名称、字段来源和数据口径。
- 查找现有“计划用表”和“生产计划跟踪”页面，复用过滤条件、一级字段和当前序/工艺路线表达。
- 确认 SAP 缺件视图为 `[SAP].[SBO_YL].[dbo].[VIEW_Jijiankukc]`，并读取字段列表。
- 新增查询过程 `dbo.生产管理_及时齐套跟踪结果_查询`。
- 新增菜单脚本，把“及时齐套跟踪结果”挂到计划排产模块，并复制“计划用表”的角色授权。
- 新增 Vue 页面 `src/views/PlanManagement/TimelyKitTrackingResult/index.vue`。
- 创建 `work/PlanManagement/TimelyKitTrackingResult`，复制原始需求文档并补齐 README、01-06 文档。
- 将完整执行过程追加到 `/gptlog-process/gpdlog.md`。

### 改了哪些文件

- `src/views/PlanManagement/TimelyKitTrackingResult/index.vue`
- `db_backups/create_timely_kit_tracking_result_20260629.sql`
- `db_backups/add_timely_kit_tracking_result_menu_20260629.sql`
- `work/PlanManagement/TimelyKitTrackingResult/新增及时齐套跟踪结果.docx`
- `work/PlanManagement/TimelyKitTrackingResult/README.md`
- `work/PlanManagement/TimelyKitTrackingResult/01-项目功能内容.md`
- `work/PlanManagement/TimelyKitTrackingResult/02-项目程序开发详细步骤.md`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- SQL 查询过程脚本执行成功。
- 菜单脚本执行成功，生成 4 条角色菜单记录。
- 直接执行 `dbo.生产管理_及时齐套跟踪结果_查询` 可返回 SAP 缺件和 MES 计划组合数据。
- 执行 `npm run build` 通过，仅有项目既有资源体积和 Browserslist/caniuse-lite 过期警告。

### 下一步

- 登录系统，在计划排产模块打开“及时齐套跟踪结果”，确认菜单可见、页面可查、展开行字段符合业务预期。

## 2026-06-29 第 2 轮：修正工艺路线、重复明细和外购一级数据

### 做了什么

- 根据反馈修正二级工艺路线展示，增加日期行、工序行、合格行和颜色。
- 查询过程新增 `工艺路线明细` JSON，返回每道工序的计划日期、工序名称、指派对象、进度、完成数量、收检合格数和加工状态。
- 前端将自制件二级“工艺路线/采购状态”列从纯文本改为三行彩色工艺路线；外购仍显示采购状态文本。
- SQL 增加两层去重：
  - SAP 原始缺件按 `DocEntry + Project + ItemCode + 属性` 取一条。
  - 最终结果按 `订单号 + 缺件生产订单号` 取一条，避免同一生产订单号重复出现在二级数据。
- 修正外购一级数据口径：属性为空时使用 `SAP.DocEntry` 作为订单编号去匹配计划用表/MES 计划数据，而不是使用 `在制采购`。

### 改了哪些文件

- `src/views/PlanManagement/TimelyKitTrackingResult/index.vue`
- `db_backups/create_timely_kit_tracking_result_20260629.sql`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- 重新发布 `dbo.生产管理_及时齐套跟踪结果_查询` 成功。
- 查询 `@订单号=7134` 时，同一生产订单号二级明细只返回 1 条。
- 查询 `@订单号=7335` 时，外购件已按 `SAP.DocEntry=7335` 匹配出计划用表一级数据。
- 执行 `npm run build` 通过，仅有项目既有资源体积和 Browserslist/caniuse-lite 过期警告。

### 下一步

- 登录页面人工检查展开行的三行工艺路线显示效果，确认颜色和计划用表页面一致。

## 2026-06-29 第 3 轮：修正外购质检状态和主数据匹配

### 做了什么

- 根据反馈重新拆分一级主数据和二级缺件数据的匹配职责。
- 一级主数据只按 `SAP.DocEntry = View_生产订单_MES.订单编号` 读取计划用表主订单，不再允许 SAP 缺件数据兜底生成主数据。
- 自制缺件单独通过缺件物料编码和合同号匹配二级生产订单，用于工艺路线、进度和缺件生产订单号。
- 外购缺件不再把主生产订单号作为缺件生产订单号；有到货草稿时显示到货草稿对应的采购入库检生产订单。
- 外购质检状态改为按采购入库检页面口径读取：根据 `SAP.到货草稿` 匹配 `质量检验_质检任务_SAP.订单编号`，再用入库数量和来料检验记录判断未完成/已完成。
- 非外购缺件的质检状态保持为空，避免误显示采购入库检状态。

### 改了哪些文件

- `db_backups/create_timely_kit_tracking_result_20260629.sql`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- 重新发布 `dbo.生产管理_及时齐套跟踪结果_查询` 成功。
- 查询 `@订单号=2007`，一级主数据字段完整，外购缺件生产订单号不再显示为主订单号 `2007`。
- 查询 `@订单号=7321`，外购缺件根据 `到货草稿=11209` 显示二级生产订单号 `11209`，质检状态为采购入库检口径的未完成。
- 默认查询统计：总行数 198，产品编码/产品名称为空行数 0，缺件生产订单号等于主订单号行数 0，非外购质检状态非空行数 0。
- 执行 `npm run build` 通过，仅有项目既有资源体积和 Browserslist/caniuse-lite 过期警告。

### 下一步

- 在页面刷新后检查前 1-10 行和第 32 行 `2007`，确认主数据、二级缺件、外购采购状态展示符合业务预期。

## 2026-06-30 第 4 轮：补库存数量并调整采购员和工艺路线展示

### 做了什么

- 根据反馈在二级缺件明细“缺件数量”后增加“库存数量”字段。
- 连接 `YL_MESDB`，确认 `[SAP].[SBO_YL].[dbo].[VIEW_Jijiankukc]` 已存在 `库存量` 字段。
- 新增 `db_backups/update_timely_kit_tracking_result_inventory_20260630.sql`，从 SAP `库存量` 输出为过程字段 `库存数量`。
- 去掉页面二级明细“采购员”列，并从前端合并数据中移除 `采购员` 映射。
- 修改存储过程外购采购状态文本，去掉 `采购员:` 拼接，保留未清数量、到货草稿、质检状态。
- 二级工艺路线参考生产计划跟踪页面调整为左对齐、缩小间距、红/蓝/绿三色，删除橙色逻辑和样式。
- 更新 README、01-06 文档，并将完整执行过程追加到总日志。

### 改了哪些文件

- `src/views/PlanManagement/TimelyKitTrackingResult/index.vue`
- `db_backups/update_timely_kit_tracking_result_inventory_20260630.sql`
- `work/PlanManagement/TimelyKitTrackingResult/README.md`
- `work/PlanManagement/TimelyKitTrackingResult/01-项目功能内容.md`
- `work/PlanManagement/TimelyKitTrackingResult/02-项目程序开发详细步骤.md`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- `VIEW_Jijiankukc` 字段列表包含 `库存量`。
- SAP 视图取样：`DocEntry=2007`、`ItemCode=24112-011-HY-WF50L` 的 `库存量=27`。
- 发布 `dbo.生产管理_及时齐套跟踪结果_查询` 成功。
- 查询 `@订单号=2007`，结果返回 `库存数量=27`，且结果列不再包含 `采购员`。
- 查询 `@订单号=7321`，结果返回 `库存数量=2`，外购采购状态文本不再包含采购员。
- 线上过程定义检查显示：包含 `库存数量`，未拼接 `采购员:`。
- `npm run build` 通过，仅有项目既有资源体积和 Browserslist/caniuse-lite 过期警告。

### 下一步

- 登录页面人工验收展开明细，确认“库存数量”位置、外购采购状态文本、工艺路线颜色和左对齐效果符合现场使用预期。

## 2026-06-30 第 5 轮：修正 7134 工艺路线判色口径

### 做了什么

- 根据反馈核对二级数据 `7134` 的工艺路线颜色差异。
- 查询 `View_生产订单_MES` 和 `YL_质量检验_质检记录`，确认 `7134` 三道工序为：
  - 打磨：加工状态 `6`，收检合格数 `6`。
  - 打压检测：加工状态为空，收检合格数 `6`。
  - 喷塑：外协，收检合格数 `0`。
- 对比生产计划跟踪页面判色逻辑，确认其蓝色口径为：加工状态 `6` 或 `3`，或 `收检合格数 > 0`。
- 将当前页二级工艺路线判色逻辑改为与生产计划跟踪一致。
- 保留外协连续分组逻辑，外协工序按生产计划跟踪的 `getOutsourceGroupClassState` 口径继承同组末道工序颜色。

### 改了哪些文件

- `src/views/PlanManagement/TimelyKitTrackingResult/index.vue`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- SQL 验证 `7134`：
  - 打磨：`收检合格数=6`。
  - 打压检测：`收检合格数=6`。
  - 喷塑：`收检合格数=0`。
- 本地判色模拟结果：`step1:process-route-blue,step2:process-route-blue,step3:process-route-red`。
- `rg` 检查当前页无 `process-route-orange`。
- `npm run build` 通过，仅有项目既有资源体积和 Browserslist/caniuse-lite 过期警告。

### 下一步

- 登录页面展开 `7134`，确认当前页显示两个蓝色、一个红色，与生产计划跟踪一致。

## 2026-06-30 第 6 轮：恢复外购采购员拼接但不恢复采购员列

### 做了什么

- 根据最新反馈恢复外购 `工艺路线/采购状态` 中的采购员拼接。
- 保持页面二级明细不增加单独“采购员”列。
- 在最新过程脚本 `db_backups/update_timely_kit_tracking_result_purchase_order_20260630.sql` 中读取 SAP `采购员`，仅用于拼接外购采购状态文本。
- 外购采购状态格式恢复为：`采购员:xxx / 未清数量:xxx / 到货草稿:xxx / 质检状态:xxx`。
- 继续保留外购缺件生产订单号按 SAP `在制采购` 取值、预计完成时间按 SAP `采购预计交货日期` 取值。

### 改了哪些文件

- `db_backups/update_timely_kit_tracking_result_purchase_order_20260630.sql`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- 发布 `dbo.生产管理_及时齐套跟踪结果_查询` 成功。
- 查询 `@订单号=7321`，外购采购状态显示：`采购员:张丹 / 未清数量:50 / 到货草稿:11209 / 质检状态:未完成`。
- 查询 `@订单号=7321`，二级缺件生产订单号为 SAP `在制采购=4111`，预计完成时间为 SAP `采购预计交货日期=2026-06-25`。
- 结果集元数据检查：无单独 `采购员` 结果列。
- 前端页面检查：无 `label="采购员"` 或 `prop="采购员"`。
- `npm run build` 通过，仅有项目既有资源体积和 Browserslist/caniuse-lite 过期警告。

### 下一步

- 登录页面确认外购采购状态中可见采购员，同时二级表没有单独采购员列。

## 2026-06-30 第 7 轮：自制缺件显示所有匹配生产订单

### 做了什么

- 根据反馈调整自制缺件二级匹配口径：同一缺件物料匹配到的所有生产订单都显示，同一个生产订单号不重复。
- 排查 `4222`：
  - SAP 缺件物料为 `22-103-060-YDZF-20V1.0-4.1`。
  - SAP 视图 `DocNum=5960`。
  - MES 中同物料存在生产订单 `5960` 和 `7142`。
  - 旧过程在 `detail_order` 中使用 `TOP (1)`，只能显示其中一个。
- 新增 `db_backups/update_timely_kit_tracking_result_multi_detail_orders_20260630.sql`。
- 将自制件 `detail_order` 从 `TOP (1)` 改为按 `订单编号` 分组去重后返回多条。
- 保留 SQL 最终层按 `订单号 + 缺件生产订单号` 去重，避免同一生产订单号重复。

### 改了哪些文件

- `db_backups/update_timely_kit_tracking_result_multi_detail_orders_20260630.sql`
- `work/PlanManagement/TimelyKitTrackingResult/README.md`
- `work/PlanManagement/TimelyKitTrackingResult/03-推进台账.md`
- `work/PlanManagement/TimelyKitTrackingResult/04-任务矩阵.md`
- `work/PlanManagement/TimelyKitTrackingResult/05-验收证据.md`
- `work/PlanManagement/TimelyKitTrackingResult/06-决策记录.md`
- `gptlog-process/gpdlog.md`

### 验证了什么

- 发布 `dbo.生产管理_及时齐套跟踪结果_查询` 成功。
- 查询 `@订单号=4222`，二级数据返回 `5960` 和 `7142` 两条生产订单。
- `5960` 使用完整的 13 道工艺路线。
- `7142` 仍显示其 4 道工艺路线。
- 同一生产订单号没有重复出现。

### 下一步

- 登录页面展开 `4222`，确认二级数据同时显示 `5960` 和 `7142`，且没有重复生产订单号。
