feat: update MES tracking and reporting workflows
This commit is contained in:
27
work/ProductionManagement/AGVtask/01-项目功能内容.md
Normal file
27
work/ProductionManagement/AGVtask/01-项目功能内容.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# 01-项目功能内容
|
||||
|
||||
## 页面
|
||||
|
||||
- 页面路径:`src/views/ProductionManagement/AGVtask/index.vue`
|
||||
- 页面模块:生产管理
|
||||
- 页面功能:AGV 任务创建、实时任务查看、历史记录、点位管理。
|
||||
|
||||
## 数据来源
|
||||
|
||||
- 实时列表:`dbo.生产管理_物料机器人_查询实时数据`
|
||||
- 实时表:`dbo.AGV_实时数据`
|
||||
- 历史列表:`dbo.生产管理_物料机器人_查询历史数据`
|
||||
- 历史表:`dbo.AGV_历史数据`
|
||||
|
||||
## 状态口径
|
||||
|
||||
- `PENDING`:待执行
|
||||
- `RUNNING`:执行中
|
||||
- `FINISHED`:已完成
|
||||
- `CANCELED`:已取消
|
||||
|
||||
## 2026-06-30 处理内容
|
||||
|
||||
- 将页面中实时任务状态为 `RUNNING` 的任务全部改为已完成。
|
||||
- 处理方式不是前端显示替换,而是按现有完成任务口径,将实时任务转入历史表,状态写为 `FINISHED`,并从实时表删除。
|
||||
|
||||
32
work/ProductionManagement/AGVtask/02-项目程序开发详细步骤.md
Normal file
32
work/ProductionManagement/AGVtask/02-项目程序开发详细步骤.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# 02-项目程序开发详细步骤
|
||||
|
||||
## 1. 排查页面
|
||||
|
||||
1. 读取 `src/views/ProductionManagement/AGVtask/index.vue`。
|
||||
2. 确认实时任务调用 `生产管理_物料机器人_查询实时数据`。
|
||||
3. 确认页面状态映射:`RUNNING` 显示为“执行中”,`FINISHED` 显示为“已完成”。
|
||||
|
||||
## 2. 排查数据库
|
||||
|
||||
1. 查询 AGV 相关对象。
|
||||
2. 确认实时表为 `dbo.AGV_实时数据`。
|
||||
3. 确认历史表为 `dbo.AGV_历史数据`。
|
||||
4. 确认完成任务过程 `dbo.生产管理_物料机器人_完成任务` 的逻辑为:
|
||||
- 插入历史表。
|
||||
- 从实时表删除。
|
||||
|
||||
## 3. 数据处理
|
||||
|
||||
1. 查询处理前实时任务状态分布:
|
||||
- `PENDING`:1 条
|
||||
- `RUNNING`:35 条
|
||||
2. 使用事务将 `RUNNING` 任务写入 `AGV_历史数据`,状态为 `FINISHED`。
|
||||
3. 从 `AGV_实时数据` 删除这些 `RUNNING` 任务。
|
||||
4. 不处理 `PENDING` 待执行任务。
|
||||
|
||||
## 4. 验证
|
||||
|
||||
1. 执行 `生产管理_物料机器人_查询实时数据 @状态='RUNNING'`,结果为空。
|
||||
2. 执行 `生产管理_物料机器人_查询实时数据 @状态=''`,实时表只剩 1 条 `PENDING`。
|
||||
3. 查询最近 5 分钟历史记录,确认新增 `FINISHED` 35 条。
|
||||
|
||||
44
work/ProductionManagement/AGVtask/03-推进台账.md
Normal file
44
work/ProductionManagement/AGVtask/03-推进台账.md
Normal file
@@ -0,0 +1,44 @@
|
||||
# 03-推进台账
|
||||
|
||||
## 第1轮:执行中任务改为已完成
|
||||
|
||||
### 用户反馈
|
||||
|
||||
- 处理页面 `ProductionManagement/AGVtask/index` 里面任务状态为执行中的数据。
|
||||
- 都改为已完成。
|
||||
|
||||
### 执行过程
|
||||
|
||||
1. 读取 `src/views/ProductionManagement/AGVtask/index.vue`。
|
||||
2. 确认实时查询过程为 `dbo.生产管理_物料机器人_查询实时数据`。
|
||||
3. 确认实时表为 `dbo.AGV_实时数据`,历史表为 `dbo.AGV_历史数据`。
|
||||
4. 查询处理前状态分布:`RUNNING` 35 条,`PENDING` 1 条。
|
||||
5. 使用事务将 `RUNNING` 任务插入 `AGV_历史数据`,状态设为 `FINISHED`。
|
||||
6. 删除实时表中的 `RUNNING` 任务。
|
||||
7. 验证实时查询 `RUNNING` 为空。
|
||||
8. 验证实时表仅剩 1 条 `PENDING`。
|
||||
9. 验证历史表最近 5 分钟新增 `FINISHED` 35 条。
|
||||
|
||||
### 修改文件
|
||||
|
||||
- `work/ProductionManagement/AGVtask/README.md`
|
||||
- `work/ProductionManagement/AGVtask/01-项目功能内容.md`
|
||||
- `work/ProductionManagement/AGVtask/02-项目程序开发详细步骤.md`
|
||||
- `work/ProductionManagement/AGVtask/03-推进台账.md`
|
||||
- `work/ProductionManagement/AGVtask/04-任务矩阵.md`
|
||||
- `work/ProductionManagement/AGVtask/05-验收证据.md`
|
||||
- `work/ProductionManagement/AGVtask/06-决策记录.md`
|
||||
- `gptlog-process/gpdlog.md`
|
||||
- `C:\gptlog-process\gpdlog.md`
|
||||
|
||||
### 验证结果
|
||||
|
||||
- 已转历史数量:35。
|
||||
- `RUNNING` 实时任务:0。
|
||||
- 实时表剩余:`PENDING` 1 条。
|
||||
- 历史表最近 5 分钟 `FINISHED`:35 条。
|
||||
|
||||
### 下一步
|
||||
|
||||
- 页面刷新实时任务,确认执行中列表为空。
|
||||
|
||||
11
work/ProductionManagement/AGVtask/04-任务矩阵.md
Normal file
11
work/ProductionManagement/AGVtask/04-任务矩阵.md
Normal file
@@ -0,0 +1,11 @@
|
||||
# 04-任务矩阵
|
||||
|
||||
| 任务编号 | 任务名称 | 状态 | 验收标准 |
|
||||
| --- | --- | --- | --- |
|
||||
| AGV-001 | 定位页面数据来源 | 已完成 | 确认实时列表使用 `生产管理_物料机器人_查询实时数据` |
|
||||
| AGV-002 | 定位状态表 | 已完成 | 确认实时表 `AGV_实时数据`、历史表 `AGV_历史数据` |
|
||||
| AGV-003 | 执行中转已完成 | 已完成 | 35 条 `RUNNING` 任务转为历史 `FINISHED` |
|
||||
| AGV-004 | 保留待执行 | 已完成 | `PENDING` 任务未处理,实时表仍保留 1 条 |
|
||||
| AGV-005 | 验证实时列表 | 已完成 | 查询 `RUNNING` 为空 |
|
||||
| AGV-006 | 文档和日志 | 已完成 | README、01-06 文档和两处 `gpdlog.md` 已更新 |
|
||||
|
||||
58
work/ProductionManagement/AGVtask/05-验收证据.md
Normal file
58
work/ProductionManagement/AGVtask/05-验收证据.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# 05-验收证据
|
||||
|
||||
## 处理前状态
|
||||
|
||||
```sql
|
||||
SELECT TaskStatus, COUNT(*) AS 数量
|
||||
FROM dbo.AGV_实时数据
|
||||
GROUP BY TaskStatus;
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
PENDING 1
|
||||
RUNNING 35
|
||||
```
|
||||
|
||||
## 执行处理
|
||||
|
||||
处理方式:
|
||||
|
||||
```text
|
||||
将 dbo.AGV_实时数据 中 TaskStatus='RUNNING' 的任务插入 dbo.AGV_历史数据,TaskStatus 写为 FINISHED;
|
||||
随后删除实时表中的 RUNNING 任务。
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
已转历史数量 = 35
|
||||
```
|
||||
|
||||
## 处理后验证
|
||||
|
||||
实时查询:
|
||||
|
||||
```sql
|
||||
EXEC dbo.[生产管理_物料机器人_查询实时数据] @AGV编号=N'', @状态=N'RUNNING';
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
无 RUNNING 数据。
|
||||
```
|
||||
|
||||
实时表剩余:
|
||||
|
||||
```text
|
||||
PENDING 1
|
||||
```
|
||||
|
||||
历史表最近 5 分钟:
|
||||
|
||||
```text
|
||||
FINISHED 35
|
||||
```
|
||||
|
||||
14
work/ProductionManagement/AGVtask/06-决策记录.md
Normal file
14
work/ProductionManagement/AGVtask/06-决策记录.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# 06-决策记录
|
||||
|
||||
## DR-001 执行中任务按完成流程转入历史表
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:将 `AGV_实时数据.TaskStatus='RUNNING'` 的任务插入 `AGV_历史数据`,状态写为 `FINISHED`,然后从实时表删除。
|
||||
- 原因:页面已有完成任务过程也是“写历史表 + 删除实时表”的口径,直接把实时表状态改成 `FINISHED` 会让已完成任务继续出现在实时列表中,不符合页面现有设计。
|
||||
|
||||
## DR-002 不处理待执行任务
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:只处理 `RUNNING`,不处理 `PENDING`。
|
||||
- 原因:用户要求处理“执行中”的数据,待执行任务不属于本次范围。
|
||||
|
||||
19
work/ProductionManagement/AGVtask/README.md
Normal file
19
work/ProductionManagement/AGVtask/README.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# AGV任务 README 索引
|
||||
|
||||
## 文档清单
|
||||
|
||||
- `01-项目功能内容.md`:记录页面、数据来源和状态口径。
|
||||
- `02-项目程序开发详细步骤.md`:记录本次数据处理步骤。
|
||||
- `03-推进台账.md`:记录每轮做了什么、改了哪些文件、验证了什么、下一步是什么。
|
||||
- `04-任务矩阵.md`:记录任务编号、状态、验收标准。
|
||||
- `05-验收证据.md`:记录命令、表、过程和结果证据。
|
||||
- `06-决策记录.md`:记录关键处理口径。
|
||||
|
||||
## 当前状态
|
||||
|
||||
- 页面路径:`src/views/ProductionManagement/AGVtask/index.vue`
|
||||
- 实时数据过程:`dbo.生产管理_物料机器人_查询实时数据`
|
||||
- 实时表:`dbo.AGV_实时数据`
|
||||
- 历史表:`dbo.AGV_历史数据`
|
||||
- 本次处理:将实时表中 `TaskStatus='RUNNING'` 的 35 条任务转入历史表,状态改为 `FINISHED`。
|
||||
|
||||
154
work/ProductionManagement/DesignReportTask/01-项目功能内容.md
Normal file
154
work/ProductionManagement/DesignReportTask/01-项目功能内容.md
Normal file
@@ -0,0 +1,154 @@
|
||||
# 01-项目功能内容
|
||||
|
||||
## 一、模块目标
|
||||
|
||||
新增一套独立的设计报工任务模块,用于记录研发/设计类任务、人员报工、工时校验和工时报表。
|
||||
|
||||
该模块不参与现有生产报工体系,不上传 SAP,不影响现有工时校验、生产计划、装配中心、机加工、作业者工时等既有功能。
|
||||
|
||||
## 二、页面范围
|
||||
|
||||
### 1. 设计任务页面
|
||||
|
||||
功能:
|
||||
- 查询过滤。
|
||||
- 新建任务。
|
||||
- 编辑任务。
|
||||
- 删除任务。
|
||||
|
||||
查询条件:
|
||||
- 任务ID。
|
||||
- 项目号。
|
||||
- 物料编码。
|
||||
- 图号。
|
||||
- 关联父件物料编码。
|
||||
- 预计开始时间。
|
||||
- 预计结束时间。
|
||||
- 单据状态。
|
||||
|
||||
字段:
|
||||
- DID:唯一序号,自增;新建时不可见,编辑时不可修改。
|
||||
- 项目号:下拉选择,可搜索;具体 SAP 视图字段后续提供。
|
||||
- 物料编码:下拉选择,可搜索,参考 `ProcessManagement/PartDrawlook/index.vue` 的物料编码过滤。
|
||||
- 图号:文本框输入。
|
||||
- 任务描述:文本框输入。
|
||||
- 关联父件物料编码:下拉选择,可搜索,参考 `ProcessManagement/PartDrawlook/index.vue` 的物料编码过滤。
|
||||
- 设计要求:文本框输入。
|
||||
- 研发立项号:文本框输入。
|
||||
- 研发目的:文本框输入。
|
||||
- 指派对象:按二次派工口径支持多人员选择,参考 `PlanManagement/SelfMakePlando/index.vue`;落库保存人员ID列表和人员名称列表。
|
||||
- 预计开始时间:日期选择器。
|
||||
- 预计结束时间:日期选择器。
|
||||
- 创建日期:系统创建时间;新建时不可见,编辑时不可修改。
|
||||
- 单据状态:待开始、执行中、已结束、已完成。
|
||||
|
||||
删除约束:
|
||||
- 如果任务已经存在设计报工记录,不能删除。
|
||||
- 如果任务没有报工记录,允许删除。
|
||||
|
||||
### 2. 设计报工页面
|
||||
|
||||
字段显示和设计任务页面基本一致。
|
||||
|
||||
过滤条件和设计任务页面基本一致。
|
||||
|
||||
页面功能:
|
||||
- 开始。
|
||||
- 结束。
|
||||
- 完成。
|
||||
|
||||
业务规则:
|
||||
- 开始:生成设计报工记录,记录开始时间、操作人和任务状态。
|
||||
- 结束:补写结束时间,计算本次设计工时。
|
||||
- 完成:必须已有结束时间;未结束不能完成。
|
||||
- 完成后代表设计任务完成,任务状态变更为已完成。
|
||||
- 已完成任务不允许再次开始或结束。
|
||||
|
||||
### 3. 设计工时校验页面
|
||||
|
||||
参考页面:`ProductionManagement/WorkHoursCheck/index.vue`。
|
||||
|
||||
业务规则:
|
||||
- 数据来源只取设计报工记录。
|
||||
- 校验后只写入设计报工独立表或独立校验记录表。
|
||||
- 不上传 SAP。
|
||||
- 不调用现有生产工时校验的 SAP 上传逻辑。
|
||||
|
||||
### 4. 设计工时报表页面
|
||||
|
||||
参考页面:`ProductionManagement/Workhours/index.vue` 的作业者工时/工序工时展示方式。
|
||||
|
||||
业务规则:
|
||||
- 数据来源只取设计报工记录。
|
||||
- 可按人员、任务、项目号、物料编码、日期汇总设计工时。
|
||||
- 不合并到现有作业者工时统计。
|
||||
|
||||
## 三、建议数据表
|
||||
|
||||
### 1. `MES_设计报工_任务`
|
||||
|
||||
用途:存储设计任务主数据。
|
||||
|
||||
建议字段:
|
||||
- DID。
|
||||
- 项目号。
|
||||
- 物料编码。
|
||||
- 图号。
|
||||
- 任务描述。
|
||||
- 关联父件物料编码。
|
||||
- 设计要求。
|
||||
- 研发立项号。
|
||||
- 研发目的。
|
||||
- 指派对象ID。
|
||||
- 指派对象。
|
||||
- 预计开始时间。
|
||||
- 预计结束时间。
|
||||
- 单据状态。
|
||||
- 创建日期。
|
||||
- 创建人。
|
||||
- 最后编辑人。
|
||||
- 最后编辑时间。
|
||||
|
||||
### 2. `MES_设计报工_记录`
|
||||
|
||||
用途:存储设计报工开始、结束和工时数据。
|
||||
|
||||
建议字段:
|
||||
- RID。
|
||||
- DID。
|
||||
- 操作人ID。
|
||||
- 操作人。
|
||||
- 开始时间。
|
||||
- 结束时间。
|
||||
- 工时秒数。
|
||||
- 报工状态。
|
||||
- 已校验。
|
||||
- 校验人。
|
||||
- 校验时间。
|
||||
- 创建时间。
|
||||
- 备注。
|
||||
|
||||
### 3. `MES_设计报工_校验记录`
|
||||
|
||||
用途:保留校验动作流水,便于审计。
|
||||
|
||||
建议字段:
|
||||
- VID。
|
||||
- RID。
|
||||
- DID。
|
||||
- 校验前开始时间。
|
||||
- 校验前结束时间。
|
||||
- 校验后开始时间。
|
||||
- 校验后结束时间。
|
||||
- 校验后工时秒数。
|
||||
- 校验人。
|
||||
- 校验时间。
|
||||
- 校验备注。
|
||||
|
||||
## 四、独立性要求
|
||||
|
||||
- 不写入现有生产报工表。
|
||||
- 不写入现有生产工时校验表。
|
||||
- 不上传 SAP。
|
||||
- 不参与现有生产工时报表。
|
||||
- 不影响装配中心、机加工、自制件排产、生产订单关闭逻辑。
|
||||
55
work/ProductionManagement/DesignReportTask/02-项目程序开发详细步骤.md
Normal file
55
work/ProductionManagement/DesignReportTask/02-项目程序开发详细步骤.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# 02-项目程序开发详细步骤
|
||||
|
||||
## 一、数据库开发
|
||||
|
||||
1. 新建独立数据表:
|
||||
- `MES_设计报工_任务`。
|
||||
- `MES_设计报工_记录`。
|
||||
- 可选 `MES_设计报工_校验记录`。
|
||||
2. 新建设计任务增删改查存储过程:
|
||||
- `设计报工_任务_查询`。
|
||||
- `设计报工_任务_新增`。
|
||||
- `设计报工_任务_编辑`。
|
||||
- `设计报工_任务_删除`。
|
||||
3. 删除过程增加约束:
|
||||
- 存在 `MES_设计报工_记录` 时禁止删除。
|
||||
4. 新建设计报工过程:
|
||||
- `设计报工_任务_开始`。
|
||||
- `设计报工_任务_结束`。
|
||||
- `设计报工_任务_完成`。
|
||||
5. 完成过程增加约束:
|
||||
- 必须存在结束时间。
|
||||
- 未结束不能完成。
|
||||
6. 新建设计工时校验过程:
|
||||
- `设计报工_工时校验_查询`。
|
||||
- `设计报工_工时校验_保存`。
|
||||
- `设计报工_工时校验_批量保存`。
|
||||
7. 新建设计工时报表过程:
|
||||
- `设计报工_工时报表_作业者工时_查询`。
|
||||
- 可按后续页面需要增加导出过程。
|
||||
|
||||
## 二、前端开发
|
||||
|
||||
1. 新建设计任务页面。
|
||||
2. 新建设计报工页面。
|
||||
3. 新建设计工时校验页面。
|
||||
4. 新建设计工时报表页面。
|
||||
5. 按系统菜单权限新增菜单记录。
|
||||
6. 物料编码、关联父件物料编码下拉查询参考 `ProcessManagement/PartDrawlook/index.vue`。
|
||||
7. 指派对象多人员选择参考 `PlanManagement/SelfMakePlando/index.vue` 的二次派工。
|
||||
8. 工时校验布局参考 `ProductionManagement/WorkHoursCheck/index.vue`,但移除 SAP 上传相关逻辑。
|
||||
9. 工时报表布局参考 `ProductionManagement/Workhours/index.vue`,但查询独立设计报工表。
|
||||
|
||||
## 三、验证步骤
|
||||
|
||||
1. 新建一条设计任务,确认 DID 和创建日期自动生成。
|
||||
2. 编辑设计任务,确认 DID 和创建日期不可修改。
|
||||
3. 未报工任务可删除。
|
||||
4. 已存在报工记录任务不可删除。
|
||||
5. 点击开始后生成报工记录。
|
||||
6. 未结束时点击完成,应提示不能完成。
|
||||
7. 点击结束后生成结束时间和工时秒数。
|
||||
8. 已结束后点击完成,任务变为已完成。
|
||||
9. 已完成任务不能再次开始或结束。
|
||||
10. 校验页面只更新设计报工数据,不触发 SAP 上传。
|
||||
11. 报表页面只展示设计报工工时,不混入现有生产报工数据。
|
||||
36
work/ProductionManagement/DesignReportTask/03-推进台账.md
Normal file
36
work/ProductionManagement/DesignReportTask/03-推进台账.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# 03-推进台账
|
||||
|
||||
## 2026-06-30 方案梳理
|
||||
|
||||
### 做了什么
|
||||
- 读取 `doc/设计报工任务模块.docx`。
|
||||
- 梳理设计任务、设计报工、设计工时校验、设计工时报表四个页面。
|
||||
- 对照参考页面:
|
||||
- `ProcessManagement/PartDrawlook/index.vue`
|
||||
- `PlanManagement/SelfMakePlando/index.vue`
|
||||
- `ProductionManagement/WorkHoursCheck/index.vue`
|
||||
- `ProductionManagement/Workhours/index.vue`
|
||||
|
||||
### 改了哪些文件
|
||||
- `doc/设计报工任务模块.docx`
|
||||
- `work/ProductionManagement/DesignReportTask/README.md`
|
||||
- `work/ProductionManagement/DesignReportTask/01-项目功能内容.md`
|
||||
- `work/ProductionManagement/DesignReportTask/02-项目程序开发详细步骤.md`
|
||||
- `work/ProductionManagement/DesignReportTask/03-推进台账.md`
|
||||
- `work/ProductionManagement/DesignReportTask/04-任务矩阵.md`
|
||||
- `work/ProductionManagement/DesignReportTask/05-验收证据.md`
|
||||
- `work/ProductionManagement/DesignReportTask/06-决策记录.md`
|
||||
- `gptlog-process/gpdlog.md`
|
||||
- `C:\gptlog-process\gpdlog.md`
|
||||
|
||||
### 验证了什么
|
||||
- 文档中明确要求新建独立设计报工体系。
|
||||
- 用户确认:
|
||||
- 项目号 SAP 视图字段后续提供。
|
||||
- 完成必须已有结束时间,未结束不能完成。
|
||||
- 已有报工记录的任务不能删除。
|
||||
- 不参与之前任何生产/SAP/工时报表流程,完全独立。
|
||||
|
||||
### 下一步
|
||||
- 等待项目号 SAP 视图字段。
|
||||
- 开始数据库脚本和页面开发。
|
||||
14
work/ProductionManagement/DesignReportTask/04-任务矩阵.md
Normal file
14
work/ProductionManagement/DesignReportTask/04-任务矩阵.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# 04-任务矩阵
|
||||
|
||||
| 任务编号 | 任务内容 | 状态 | 验收标准 |
|
||||
| --- | --- | --- | --- |
|
||||
| DRT-001 | 读取原始 Word 文档 | 已完成 | 已提取字段、页面和业务要求 |
|
||||
| DRT-002 | 梳理设计任务页面方案 | 已完成 | 字段、查询、新建、编辑、删除规则明确 |
|
||||
| DRT-003 | 梳理设计报工页面方案 | 已完成 | 开始、结束、完成规则明确 |
|
||||
| DRT-004 | 梳理设计工时校验方案 | 已完成 | 明确不上传 SAP,只校验独立数据 |
|
||||
| DRT-005 | 梳理设计工时报表方案 | 已完成 | 明确只查询设计报工数据 |
|
||||
| DRT-006 | 确认完成规则 | 已完成 | 必须已有结束时间,未结束不能完成 |
|
||||
| DRT-007 | 确认删除规则 | 已完成 | 有报工记录不能删除 |
|
||||
| DRT-008 | 确认独立性 | 已完成 | 不参与现有任何生产/SAP/工时报表流程 |
|
||||
| DRT-009 | 确认项目号来源 | 待确认 | 业务提供 SAP 视图和字段 |
|
||||
| DRT-010 | 数据库和页面开发 | 待开始 | 表、过程、页面、菜单发布并验证 |
|
||||
41
work/ProductionManagement/DesignReportTask/05-验收证据.md
Normal file
41
work/ProductionManagement/DesignReportTask/05-验收证据.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# 05-验收证据
|
||||
|
||||
## 文档读取
|
||||
|
||||
来源:
|
||||
```text
|
||||
doc/设计报工任务模块.docx
|
||||
```
|
||||
|
||||
读取结果摘要:
|
||||
```text
|
||||
新增设计任务页面。
|
||||
新建设计报工界面。
|
||||
新建设计工时校验。
|
||||
新建设计工时报表。
|
||||
新建表存储设计报工信息,和其他报工不产生影响。
|
||||
```
|
||||
|
||||
## 用户确认口径
|
||||
|
||||
```text
|
||||
项目号具体取哪个 SAP 视图字段后续提供。
|
||||
完成要求已有结束时间,未结束不能完成。
|
||||
删除任务时,如果已经有报工记录,不能删除。
|
||||
不参与之前的任何东西,独立的。
|
||||
```
|
||||
|
||||
## 参考页面
|
||||
|
||||
```text
|
||||
src/views/ProcessManagement/PartDrawlook/index.vue
|
||||
src/views/PlanManagement/SelfMakePlando/index.vue
|
||||
src/views/ProductionManagement/WorkHoursCheck/index.vue
|
||||
src/views/ProductionManagement/Workhours/index.vue
|
||||
```
|
||||
|
||||
## 验收结论
|
||||
|
||||
当前为方案文档阶段,尚未开发代码和数据库脚本。
|
||||
|
||||
方案可进入开发,但需要先补齐项目号 SAP 视图字段来源。
|
||||
54
work/ProductionManagement/DesignReportTask/06-决策记录.md
Normal file
54
work/ProductionManagement/DesignReportTask/06-决策记录.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# 06-决策记录
|
||||
|
||||
## DDR-001 独立设计报工体系
|
||||
|
||||
决策:设计任务、设计报工记录、设计工时校验、设计工时报表全部使用独立表和独立存储过程。
|
||||
|
||||
原因:用户明确要求“和其他报工不产生影响”“不参与之前的任何东西,独立的”。
|
||||
|
||||
影响:
|
||||
- 不写入现有生产报工表。
|
||||
- 不上传 SAP。
|
||||
- 不参与现有工时报表。
|
||||
- 不影响生产订单关闭、装配中心、机加工等既有逻辑。
|
||||
|
||||
## DDR-002 完成必须先结束
|
||||
|
||||
决策:设计任务点击完成前,必须已有结束时间。
|
||||
|
||||
原因:完成代表任务闭环,未结束时无法计算完整工时。
|
||||
|
||||
影响:
|
||||
- 未结束点击完成时,页面提示不能完成。
|
||||
- 后端过程也必须校验,不能只依赖前端。
|
||||
|
||||
## DDR-003 有报工记录不能删除任务
|
||||
|
||||
决策:设计任务如果已经有报工记录,禁止删除。
|
||||
|
||||
原因:避免删除主任务造成工时记录失去归属。
|
||||
|
||||
影响:
|
||||
- 删除过程需要先检查设计报工记录表。
|
||||
- 后续如需撤销,只能增加作废状态,不做物理删除。
|
||||
|
||||
## DDR-004 项目号来源待业务提供
|
||||
|
||||
决策:项目号字段暂保留为可搜索下拉,SAP 视图和字段来源后续补充。
|
||||
|
||||
原因:用户确认项目号具体 SAP 视图字段后续提供。
|
||||
|
||||
影响:
|
||||
- 开发时可先预留过程参数和前端控件。
|
||||
- 项目号下拉过程需等字段来源明确后实现。
|
||||
|
||||
## DDR-005 指派对象按多人派工预留
|
||||
|
||||
决策:指派对象按 `PlanManagement/SelfMakePlando/index.vue` 二次派工口径支持多人员选择,保存人员ID列表和名称列表。
|
||||
|
||||
原因:原文要求参考二次派工,且设计任务常见多人协作。
|
||||
|
||||
影响:
|
||||
- 前端使用多选人员下拉。
|
||||
- 数据库建议同时保存人员ID列表和人员名称列表。
|
||||
- 如果后续业务确认只允许单人,可收窄为单选,不影响表结构扩展。
|
||||
17
work/ProductionManagement/DesignReportTask/README.md
Normal file
17
work/ProductionManagement/DesignReportTask/README.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# 设计报工任务模块 README 索引
|
||||
|
||||
## 文档清单
|
||||
|
||||
- `01-项目功能内容.md`:记录模块目标、页面范围、字段和业务口径。
|
||||
- `02-项目程序开发详细步骤.md`:记录后续开发落地步骤。
|
||||
- `03-推进台账.md`:记录每轮做了什么、改了哪些文件、验证了什么、下一步是什么。
|
||||
- `04-任务矩阵.md`:记录任务编号、状态和验收标准。
|
||||
- `05-验收证据.md`:记录文档读取、方案确认和后续开发验证证据。
|
||||
- `06-决策记录.md`:记录已确认的关键设计决策。
|
||||
|
||||
## 当前状态
|
||||
|
||||
- 来源文档:`doc/设计报工任务模块.docx`
|
||||
- 当前阶段:方案梳理与文档修订。
|
||||
- 核心原则:设计报工任务、设计报工记录、设计工时校验、设计工时报表全部独立,不参与现有生产报工、SAP 上传、生产工时校验和既有工时报表。
|
||||
- 待确认项:`项目号` 的 SAP 视图和字段来源由业务后续提供。
|
||||
@@ -0,0 +1,55 @@
|
||||
# 01-项目功能内容
|
||||
|
||||
## 页面
|
||||
|
||||
- 页面名称:产品合格率(工位)
|
||||
- 页面路径:`src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`
|
||||
- 菜单模块:生产管理
|
||||
|
||||
## 数据范围
|
||||
|
||||
1. 只统计生产订单已关闭的数据。
|
||||
2. 已关闭判断来自 SAP 视图 `[SAP].[SBO_YL].[dbo].[UBT_OWOR]` 的 `单据状态 IS NOT NULL`。
|
||||
3. 关闭日期取 `[SAP].[SBO_YL].[dbo].[UBT_OWOR].[实际结算日期]`。
|
||||
4. 生产过程质检明细取 `dbo.YL_质量检验_质检记录`。
|
||||
5. 二级明细按生产订单、工序号、工序、工位汇总。
|
||||
|
||||
## 一级字段
|
||||
|
||||
- 关闭日期
|
||||
- 生产订单号
|
||||
- 物料名称
|
||||
- 物料编码
|
||||
- 计划数量
|
||||
- 完成数量:二级完成数量合计
|
||||
- 不良数量:二级不良数量合计
|
||||
- 合格率:按截图口径计算为 `(完成数量 - 不良数量) / 完成数量`
|
||||
|
||||
## 二级字段
|
||||
|
||||
- 工序
|
||||
- 工序号:`dbo.MES_接口_生产计划_生产任务.订单行号`
|
||||
- 工位:质检记录 `工位名称`,为空时补 `View_生产订单_MES.指派对象`,仍为空显示 `空白`
|
||||
- 完成数量:按订单行号、工序、工位汇总 `检验数量`
|
||||
- 不良数量:按订单行号、工序、工位汇总 `不合格数`
|
||||
- 合格率:`(完成数量 - 不良数量) / 完成数量`
|
||||
- 检验说明:同组多条说明用 `;` 并列显示
|
||||
|
||||
## 查询条件
|
||||
|
||||
- 关闭日期范围,页面默认近 30 天
|
||||
- 生产订单号
|
||||
- 物料编码
|
||||
- 物料名称
|
||||
- 工序
|
||||
- 工位
|
||||
- 合格状态:不合格、合格、全部;页面默认不合格
|
||||
|
||||
## 2026-06-30 补充口径
|
||||
|
||||
1. 页面进入时默认不查询数据,避免打开页面直接加载报表。
|
||||
2. 查询条件新增“合格状态”。
|
||||
3. 合格状态默认值为“不合格”。
|
||||
4. 主数据合格率小于 `100` 判定为“不合格”,大于等于 `100` 判定为“合格”。
|
||||
5. 关闭日期筛选拆成“关闭日期起”和“关闭日期止”两个独立日期框,降低误操作。
|
||||
6. 二级工序号固定从 `dbo.MES_接口_生产计划_生产任务.订单行号` 读取,关联关系为 `YL_质量检验_质检记录.TaskAID = MES_接口_生产计划_生产任务.AID`。
|
||||
@@ -0,0 +1,51 @@
|
||||
# 02-项目程序开发详细步骤
|
||||
|
||||
## 1. 需求解析
|
||||
|
||||
1. 解包并读取 `doc/新增产品合格率.docx`。
|
||||
2. 确认新增页面为“产品合格率(工位)”,放在生产管理模块下。
|
||||
3. 确认一级数据只计算已关闭生产订单。
|
||||
4. 确认二级数据按订单行号、工序、工位汇总完成数量、不良数量和检验说明。
|
||||
|
||||
## 2. 数据库开发
|
||||
|
||||
1. 新增 `db_backups/create_product_pass_rate_workstation_20260630.sql`。
|
||||
2. 创建或更新查询过程 `dbo.生产管理_产品合格率工位_查询`。
|
||||
3. 参数包括生产订单号、物料编码、物料名称、关闭日期起止、工序、工位。
|
||||
4. 使用 `OPENQUERY([SAP], ...)` 读取 `SBO_YL.dbo.UBT_OWOR`,将 SAP 已关闭订单先写入本地临时表。
|
||||
5. 使用 `YL_质量检验_质检记录` 汇总生产过程质检数据。
|
||||
6. 使用 `View_生产订单_MES` 补齐订单行号、工序和指派对象。
|
||||
7. 输出一级汇总和 `明细JSON`,前端展开行解析 JSON 展示二级数据。
|
||||
8. 空条件查询自动限定近 30 天,避免页面默认打开时全量扫描。
|
||||
9. 2026-06-30 按用户反馈修正工序号来源:改为连接 `dbo.MES_接口_生产计划_生产任务`,通过 `YL_质量检验_质检记录.TaskAID = MES_接口_生产计划_生产任务.AID` 读取 `订单行号`。
|
||||
|
||||
## 3. 菜单开发
|
||||
|
||||
1. 新增 `db_backups/add_product_pass_rate_workstation_menu_20260630.sql`。
|
||||
2. 菜单标题:`产品合格率(工位)`。
|
||||
3. 路由:`ProductPassRateWorkstation/index`。
|
||||
4. 组件:`/ProductionManagement/ProductPassRateWorkstation/index`。
|
||||
5. 权限来源参考已有“生产计划跟踪”,写入生产管理模块下。
|
||||
|
||||
## 4. 前端开发
|
||||
|
||||
1. 新增页面 `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`。
|
||||
2. 查询区提供关闭日期、生产订单、物料编码、物料名称、工序、工位。
|
||||
3. 主表展示一级汇总字段。
|
||||
4. 使用展开行展示二级明细。
|
||||
5. 合格率按 100%、90%-99.99%、低于 90% 显示不同颜色。
|
||||
6. 默认关闭日期范围为近 30 天。
|
||||
7. 2026-06-30 页面去掉 `created()` 自动查询,进入页面后先显示空表。
|
||||
8. 2026-06-30 查询区新增“合格状态”,默认 `不合格`,查询时传入存储过程参数 `合格状态`。
|
||||
9. 2026-06-30 将关闭日期范围控件拆成两个独立日期控件,分别传入 `关闭日期_Start` 和 `关闭日期_End`。
|
||||
|
||||
## 5. 验证
|
||||
|
||||
1. 发布查询过程成功。
|
||||
2. 发布菜单脚本成功,写入 `12` 条角色菜单记录。
|
||||
3. 验证 `@生产订单号=N'7649'` 能返回一级汇总和二级明细。
|
||||
4. 验证近 7 天查询返回 `175` 行,耗时约 `0.37` 秒。
|
||||
5. 验证空条件自动限定近 30 天,返回 `1420` 行,耗时约 `1.17` 秒。
|
||||
6. 执行 `npm run build`,构建通过,只有项目既有资源体积和 browserslist 警告。
|
||||
7. 2026-06-30 验证近 30 天 `不合格` 返回 `50` 行,最高合格率 `99.99`;`合格` 返回 `1370` 行;`全部` 返回 `1420` 行。
|
||||
8. 2026-06-30 拆分关闭日期控件后执行 `npm run build`,构建通过。
|
||||
176
work/ProductionManagement/ProductPassRateWorkstation/03-推进台账.md
Normal file
176
work/ProductionManagement/ProductPassRateWorkstation/03-推进台账.md
Normal file
@@ -0,0 +1,176 @@
|
||||
# 03-推进台账
|
||||
|
||||
## 第1轮:新增产品合格率(工位)页面
|
||||
|
||||
### 用户反馈
|
||||
|
||||
- 查看 `doc/新增产品合格率.docx`。
|
||||
- 根据文档新增页面“产品合格率(工位)”。
|
||||
|
||||
### 执行过程
|
||||
|
||||
1. 解包 `doc/新增产品合格率.docx`,读取文字和截图。
|
||||
2. 确认页面放在生产管理下面。
|
||||
3. 确认 SAP 关闭日期来源为 `SBO_YL.dbo.UBT_OWOR.实际结算日期`。
|
||||
4. 查询 `YL_质量检验_质检记录` 字段,确认生产订单号为 `计划号`,订单行号为 `行号`,工位字段为 `工位名称`。
|
||||
5. 新增查询过程脚本 `db_backups/create_product_pass_rate_workstation_20260630.sql`。
|
||||
6. 初版跨库四段名查询较慢,改为 `OPENQUERY([SAP], ...)` 先取 SAP 已关闭订单到本地临时表。
|
||||
7. 新增菜单脚本 `db_backups/add_product_pass_rate_workstation_menu_20260630.sql`。
|
||||
8. 新增前端页面 `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`。
|
||||
9. 发布查询过程和菜单脚本。
|
||||
10. 执行数据库样例验证和 `npm run build`。
|
||||
|
||||
### 修改文件
|
||||
|
||||
- `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`
|
||||
- `db_backups/create_product_pass_rate_workstation_20260630.sql`
|
||||
- `db_backups/add_product_pass_rate_workstation_menu_20260630.sql`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/README.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/01-项目功能内容.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/02-项目程序开发详细步骤.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/03-推进台账.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/04-任务矩阵.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/05-验收证据.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/06-决策记录.md`
|
||||
- `gptlog-process/gpdlog.md`
|
||||
- `C:\gptlog-process\gpdlog.md`
|
||||
|
||||
### 验证结果
|
||||
|
||||
- 查询过程发布成功。
|
||||
- 菜单脚本发布成功,生产管理下新增 `产品合格率(工位)`。
|
||||
- 样例 `7649` 返回一级汇总和二级明细。
|
||||
- `npm run build` 通过。
|
||||
|
||||
### 下一步
|
||||
|
||||
- 登录页面确认菜单可见,并检查展开行明细展示是否符合现场习惯。
|
||||
|
||||
## 第2轮:默认不查询并新增合格状态筛选
|
||||
|
||||
### 用户反馈
|
||||
|
||||
- 默认进来不查询数据。
|
||||
- 增加“合格”和“不合格”筛选。
|
||||
- 主数据合格率小于 `100` 的为不合格。
|
||||
- 默认不合格。
|
||||
|
||||
### 执行过程
|
||||
|
||||
1. 修改 `db_backups/create_product_pass_rate_workstation_20260630.sql`,新增参数 `@合格状态`,默认 `不合格`。
|
||||
2. 查询过程最终输出前按主数据合格率筛选:
|
||||
- `合格`:合格率大于等于 `100`。
|
||||
- `不合格`:合格率小于 `100`。
|
||||
- `全部`:不过滤。
|
||||
3. 修改 `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`:
|
||||
- 删除页面 `created()` 自动查询。
|
||||
- 查询区新增“合格状态”下拉。
|
||||
- 默认值设为 `不合格`。
|
||||
- 查询时传入 `合格状态` 参数。
|
||||
4. 发布查询过程成功。
|
||||
5. 验证近 30 天 `不合格`、`合格`、`全部` 三种筛选。
|
||||
6. 执行 `npm run build`,构建通过。
|
||||
|
||||
### 修改文件
|
||||
|
||||
- `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`
|
||||
- `db_backups/create_product_pass_rate_workstation_20260630.sql`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/README.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/01-项目功能内容.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/02-项目程序开发详细步骤.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/03-推进台账.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/04-任务矩阵.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/05-验收证据.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/06-决策记录.md`
|
||||
- `gptlog-process/gpdlog.md`
|
||||
- `C:\gptlog-process\gpdlog.md`
|
||||
|
||||
### 验证结果
|
||||
|
||||
- 近 30 天 `不合格` 返回 `50` 行,合格率范围 `66.67` 到 `99.99`。
|
||||
- 近 30 天 `合格` 返回 `1370` 行,合格率均为 `100.00`。
|
||||
- 近 30 天 `全部` 返回 `1420` 行。
|
||||
- `npm run build` 通过,仅有项目既有 warning。
|
||||
|
||||
### 下一步
|
||||
|
||||
- 登录页面确认初始为空表,点击查询后按默认不合格返回数据。
|
||||
|
||||
## 第3轮:关闭日期筛选拆分
|
||||
|
||||
### 用户反馈
|
||||
|
||||
- 关闭日期筛选拆成两个筛选。
|
||||
- 客户不习惯一次选两个日期。
|
||||
|
||||
### 执行过程
|
||||
|
||||
1. 修改 `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`。
|
||||
2. 将原 `daterange` 日期范围控件拆成两个 `date` 日期控件。
|
||||
3. 新增 `searchForm.closeDateStart` 和 `searchForm.closeDateEnd`。
|
||||
4. 查询时仍传入原有参数 `关闭日期_Start` 和 `关闭日期_End`,数据库过程无需修改。
|
||||
5. 执行 `npm run build`,构建通过。
|
||||
|
||||
### 修改文件
|
||||
|
||||
- `src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/01-项目功能内容.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/02-项目程序开发详细步骤.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/03-推进台账.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/04-任务矩阵.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/05-验收证据.md`
|
||||
- `gptlog-process/gpdlog.md`
|
||||
- `C:\gptlog-process\gpdlog.md`
|
||||
|
||||
### 验证结果
|
||||
|
||||
- `npm run build` 通过,仅有项目既有 warning。
|
||||
- 前端继续使用 `关闭日期_Start` 和 `关闭日期_End` 参数,数据库过程无需重新发布。
|
||||
|
||||
### 下一步
|
||||
|
||||
- 登录页面确认两个日期框更符合客户操作习惯。
|
||||
|
||||
## 第4轮:修正二级工序号来源
|
||||
|
||||
### 用户反馈
|
||||
|
||||
- 工序号为什么都是空。
|
||||
- 工序号应取表 `dbo.MES_接口_生产计划_生产任务.订单行号`。
|
||||
- 该表中订单行号肯定不会为空。
|
||||
|
||||
### 执行过程
|
||||
|
||||
1. 查询 `dbo.MES_接口_生产计划_生产任务` 字段,确认存在 `AID`、`订单编号`、`订单行号`、`工序名称`、`指派对象`。
|
||||
2. 查询样例 `7649`、`7002`、`7280`、`7410`,确认 `MES_接口_生产计划_生产任务.订单行号` 有值。
|
||||
3. 定位原脚本中工序号来源为 `COALESCE(View_生产订单_MES.订单行号, 质检记录.行号)`。
|
||||
4. 确认质检记录的 `TaskAID` 对应生产任务表的 `AID`。
|
||||
5. 修改 `db_backups/create_product_pass_rate_workstation_20260630.sql`:
|
||||
- 将明细补充表从 `View_生产订单_MES` 改为 `MES_接口_生产计划_生产任务`。
|
||||
- 关联条件改为 `q.TaskAID = t.AID`。
|
||||
- 工序号改为 `COALESCE(t.订单行号, q.行号)`。
|
||||
6. 发布查询过程成功。
|
||||
7. 验证 `7649` 二级工序号为 `1`、`2`、`3`。
|
||||
8. 验证近 30 天 `3281` 条二级明细中空工序号为 `0`。
|
||||
|
||||
### 修改文件
|
||||
|
||||
- `db_backups/create_product_pass_rate_workstation_20260630.sql`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/01-项目功能内容.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/02-项目程序开发详细步骤.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/03-推进台账.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/04-任务矩阵.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/05-验收证据.md`
|
||||
- `work/ProductionManagement/ProductPassRateWorkstation/06-决策记录.md`
|
||||
- `gptlog-process/gpdlog.md`
|
||||
- `C:\gptlog-process\gpdlog.md`
|
||||
|
||||
### 验证结果
|
||||
|
||||
- 过程 `dbo.生产管理_产品合格率工位_查询` 发布成功,修改时间 `2026-06-30 15:12:24.840`。
|
||||
- 样例 `7649` 返回:领料 1、数车 2、打磨 3。
|
||||
- 近 30 天二级明细空工序号行数为 `0`。
|
||||
|
||||
### 下一步
|
||||
|
||||
- 页面展开二级明细确认工序号列不再为空。
|
||||
@@ -0,0 +1,15 @@
|
||||
# 04-任务矩阵
|
||||
|
||||
| 任务编号 | 任务名称 | 状态 | 验收标准 |
|
||||
| --- | --- | --- | --- |
|
||||
| PPRW-001 | 需求文档解析 | 已完成 | 读取 docx 文字和截图,确认字段和数据源 |
|
||||
| PPRW-002 | 查询过程开发 | 已完成 | `dbo.生产管理_产品合格率工位_查询` 发布成功 |
|
||||
| PPRW-003 | 查询性能优化 | 已完成 | SAP 数据通过 `OPENQUERY` 下推过滤,近 7 天查询约 `0.37` 秒 |
|
||||
| PPRW-004 | 菜单脚本开发 | 已完成 | 生产管理下新增 `产品合格率(工位)`,写入 12 条角色菜单记录 |
|
||||
| PPRW-005 | 前端页面开发 | 已完成 | 页面新增主表、展开二级明细和查询条件 |
|
||||
| PPRW-006 | 构建验证 | 已完成 | `npm run build` 通过 |
|
||||
| PPRW-007 | 文档与日志 | 已完成 | README、01-06 文档和两处 `gpdlog.md` 已更新 |
|
||||
| PPRW-008 | 默认不自动查询 | 已完成 | 页面进入后不调用查询过程,表格初始为空 |
|
||||
| PPRW-009 | 合格状态筛选 | 已完成 | 默认不合格,合格率小于 `100` 为不合格,大于等于 `100` 为合格 |
|
||||
| PPRW-010 | 关闭日期拆分 | 已完成 | 页面使用“关闭日期起”和“关闭日期止”两个独立日期框 |
|
||||
| PPRW-011 | 修正工序号来源 | 已完成 | 二级工序号从 `MES_接口_生产计划_生产任务.订单行号` 读取,近 30 天空工序号为 0 |
|
||||
137
work/ProductionManagement/ProductPassRateWorkstation/05-验收证据.md
Normal file
137
work/ProductionManagement/ProductPassRateWorkstation/05-验收证据.md
Normal file
@@ -0,0 +1,137 @@
|
||||
# 05-验收证据
|
||||
|
||||
## 数据库发布
|
||||
|
||||
```powershell
|
||||
$env:SQLCMDPASSWORD='******'
|
||||
sqlcmd -S 192.168.2.92 -d YL_MESDB -U sa -C -l 30 -b -f 65001 -i 'db_backups\create_product_pass_rate_workstation_20260630.sql'
|
||||
sqlcmd -S 192.168.2.92 -d YL_MESDB -U sa -C -l 30 -b -f 65001 -i 'db_backups\add_product_pass_rate_workstation_menu_20260630.sql'
|
||||
Remove-Item Env:SQLCMDPASSWORD
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
已将数据库上下文更改为 "YL_MESDB"。
|
||||
```
|
||||
|
||||
## 存储过程验证
|
||||
|
||||
```sql
|
||||
SELECT OBJECT_NAME(object_id) AS procedure_name, modify_date
|
||||
FROM sys.objects
|
||||
WHERE object_id=OBJECT_ID(N'dbo.生产管理_产品合格率工位_查询');
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
生产管理_产品合格率工位_查询 2026-06-30 14:31:00.690
|
||||
```
|
||||
|
||||
## 样例订单
|
||||
|
||||
```sql
|
||||
EXEC dbo.[生产管理_产品合格率工位_查询] @生产订单号=N'7649';
|
||||
```
|
||||
|
||||
结果要点:
|
||||
|
||||
| 生产订单号 | 关闭日期 | 物料编码 | 计划数量 | 完成数量 | 不良数量 | 合格率 |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| 7649 | 2026-06-30 | 22-100-021-YQZF-20V2.0-8-08 | 10.0000 | 30.0000 | 0.0000 | 100.00 |
|
||||
|
||||
二级明细包括:
|
||||
|
||||
- 打磨 / 打磨 / 完成数量 10
|
||||
- 领料 / 空白 / 完成数量 10
|
||||
- 数车 / 空白 / 完成数量 10
|
||||
|
||||
## 性能验证
|
||||
|
||||
```text
|
||||
近 7 天查询:175 行,ElapsedSeconds=0.37。
|
||||
空条件查询:自动限定近 30 天,1420 行,ElapsedSeconds=1.17。
|
||||
```
|
||||
|
||||
## 前端构建
|
||||
|
||||
```powershell
|
||||
npm run build
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
webpack 5.103.0 compiled with 2 warnings
|
||||
```
|
||||
|
||||
说明:warnings 为项目既有资源体积和 browserslist/caniuse-lite 过期提示。
|
||||
|
||||
## 工序号来源修正验证
|
||||
|
||||
工序号来源:
|
||||
|
||||
```text
|
||||
dbo.YL_质量检验_质检记录.TaskAID = dbo.MES_接口_生产计划_生产任务.AID
|
||||
工序号 = dbo.MES_接口_生产计划_生产任务.订单行号
|
||||
```
|
||||
|
||||
样例 `7649`:
|
||||
|
||||
| 生产订单号 | 工序 | 工序号 | 工位 | 完成数量 | 不良数量 | 合格率 |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| 7649 | 领料 | 1 | 领料 | 10.0000 | 0.0000 | 100.00 |
|
||||
| 7649 | 数车 | 2 | 数2 | 10.0000 | 0.0000 | 100.00 |
|
||||
| 7649 | 打磨 | 3 | 打磨 | 10.0000 | 0.0000 | 100.00 |
|
||||
|
||||
近 30 天检查:
|
||||
|
||||
```text
|
||||
明细行数=3281,空工序号行数=0。
|
||||
```
|
||||
|
||||
## 合格状态筛选验证
|
||||
|
||||
```sql
|
||||
EXEC dbo.[生产管理_产品合格率工位_查询]
|
||||
@关闭日期_Start=N'2026-06-01',
|
||||
@关闭日期_End=N'2026-06-30',
|
||||
@合格状态=N'不合格';
|
||||
```
|
||||
|
||||
结果要点:
|
||||
|
||||
```text
|
||||
不合格:50 行,最低合格率 66.67,最高合格率 99.99。
|
||||
合格:1370 行,最低合格率 100.00,最高合格率 100.00。
|
||||
全部:1420 行,最低合格率 66.67,最高合格率 100.00。
|
||||
```
|
||||
|
||||
页面验证点:
|
||||
|
||||
- 页面进入时不自动调用查询,表格初始为空。
|
||||
- 合格状态下拉默认值为 `不合格`。
|
||||
|
||||
## 关闭日期拆分验证
|
||||
|
||||
页面调整:
|
||||
|
||||
```text
|
||||
关闭日期范围控件已拆成两个独立日期框:开始日期、结束日期。
|
||||
查询参数仍为 关闭日期_Start 和 关闭日期_End。
|
||||
```
|
||||
|
||||
构建:
|
||||
|
||||
```powershell
|
||||
npm run build
|
||||
```
|
||||
|
||||
结果:
|
||||
|
||||
```text
|
||||
webpack 5.103.0 compiled with 2 warnings
|
||||
```
|
||||
|
||||
说明:warnings 为项目既有资源体积和 browserslist/caniuse-lite 过期提示。
|
||||
@@ -0,0 +1,44 @@
|
||||
# 06-决策记录
|
||||
|
||||
## DR-001 合格率按截图口径计算
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:合格率按 `(完成数量 - 不良数量) / 完成数量` 计算。
|
||||
- 原因:文档文字写“合格率:不良数量/完成数量”,但截图中 `完成数量=6`、`不良数量=1` 显示 `83.33%`,实际对应 `(6-1)/6`。
|
||||
|
||||
## DR-002 二级只统计生产过程质检
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:二级明细当前统计 `质检类型 = 收检` 的生产过程记录,不混入来料检验和退库检验。
|
||||
- 原因:同一生产订单号可能存在来料检验记录,例如样例数据中来料检验数量远大于生产计划数量,混入会导致产品工位合格率失真。
|
||||
|
||||
## DR-003 使用 OPENQUERY 优化 SAP 视图读取
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:查询过程通过 `OPENQUERY([SAP], ...)` 读取 `SBO_YL.dbo.UBT_OWOR`,并将日期、生产订单条件下推到 SAP。
|
||||
- 原因:直接四段名查询在日期范围内仍然约 44 秒;改为 `OPENQUERY` 后近 7 天约 0.37 秒。
|
||||
|
||||
## DR-004 空条件自动限定近 30 天
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:当未传关闭日期且未传生产订单号时,存储过程自动查询近 30 天。
|
||||
- 原因:避免页面默认打开触发历史全量扫描,同时前端也默认近 30 天,前后端口径一致。
|
||||
|
||||
## DR-005 页面进入不自动查询
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:前端页面删除 `created()` 自动查询,进入页面先显示空表。
|
||||
- 原因:用户明确要求默认进来不查询数据。
|
||||
|
||||
## DR-006 合格状态按主数据合格率判断
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:主数据合格率小于 `100` 判定为不合格,大于等于 `100` 判定为合格。
|
||||
- 原因:用户明确要求“主数据合格率小于100的为不合格”,默认筛选不合格。
|
||||
|
||||
## DR-007 工序号以生产任务表为准
|
||||
|
||||
- 日期:2026-06-30
|
||||
- 决策:二级工序号从 `dbo.MES_接口_生产计划_生产任务.订单行号` 读取。
|
||||
- 关联:`dbo.YL_质量检验_质检记录.TaskAID = dbo.MES_接口_生产计划_生产任务.AID`。
|
||||
- 原因:用户确认生产任务表的 `订单行号` 是明确来源,原逻辑依赖视图和质检记录行号,部分记录会为空。
|
||||
@@ -0,0 +1,22 @@
|
||||
# 产品合格率(工位) README 索引
|
||||
|
||||
## 文档清单
|
||||
|
||||
- `01-项目功能内容.md`:记录页面、字段、数据源和计算口径。
|
||||
- `02-项目程序开发详细步骤.md`:记录数据库、菜单、前端开发和验证步骤。
|
||||
- `03-推进台账.md`:记录每轮做了什么、改了哪些文件、验证了什么、下一步是什么。
|
||||
- `04-任务矩阵.md`:记录任务编号、状态、验收标准。
|
||||
- `05-验收证据.md`:记录命令、页面、数据库对象和样例输出。
|
||||
- `06-决策记录.md`:记录关键口径和原因,避免后续重复争论。
|
||||
|
||||
## 当前状态
|
||||
|
||||
- 页面路径:`src/views/ProductionManagement/ProductPassRateWorkstation/index.vue`
|
||||
- 菜单标题:`产品合格率(工位)`
|
||||
- 菜单模块:生产管理
|
||||
- 查询过程:`dbo.生产管理_产品合格率工位_查询`
|
||||
- 数据库脚本:
|
||||
- `db_backups/create_product_pass_rate_workstation_20260630.sql`
|
||||
- `db_backups/add_product_pass_rate_workstation_menu_20260630.sql`
|
||||
- 原始需求文档:`doc/新增产品合格率.docx`
|
||||
- 当前补充口径:页面进入时不自动查询;合格状态默认 `不合格`,主数据合格率小于 `100` 判定为不合格。
|
||||
Reference in New Issue
Block a user