323 lines
14 KiB
Markdown
323 lines
14 KiB
Markdown
# 电池详情报表
|
||
|
||
## 1. 功能概述
|
||
|
||
电池详情报表属于 MES 系统数据中台的报表分析模块,用于按**工艺流程 + 批次 + 工序**的维度查询电池在各工序中的详细结果参数数据。系统根据用户选择的工序,动态生成多级表头,将各工序的设定值参数和实际结果参数以表格形式展示,支持灵活筛选工序结果参数、按工序结束时间过滤,以及大批量数据导出为 CSV 文件。
|
||
|
||
**核心功能:**
|
||
|
||
- 工艺流程联动筛选:按工艺流程类别 → 工艺流程 → 批次 → 工序的层级联动选择,快速定位目标数据范围
|
||
- 工序参数动态选择:根据选中的工序,动态加载各工序的结果参数树,用户可自由勾选需要展示的参数列
|
||
- 多级表头展示:系统根据工序类型(常规工序 / 化成-分容多工步工序)自动生成多级嵌套表头,清晰展示工序 → 工步 → 结果参数的层级关系
|
||
- 时间范围过滤:以所选最后一个工序的完成时间作为筛选条件,精准定位时间段内的生产数据
|
||
- 数据导出:支持将查询条件下的全量数据通过异步任务导出为 CSV 文件,适用于大批量数据分析
|
||
|
||
**功能对应截图** :
|
||

|
||
|
||
## 2. 术语说明
|
||
|
||
| 术语 | 定义 | 说明 |
|
||
|------|------|------|
|
||
| 电池详情报表 | Battery Detail Report,按批次和工序维度查询电池结果参数的报表 | 数据中台报表分析模块的核心功能之一 |
|
||
| 工艺流程 | Process Flow,定义产品从原材料到成品的完整加工顺序 | 筛选条件的一级维度,按工艺流程类别分组展示 |
|
||
| 批次 | Batch,生产计划中的最小执行单元 | 筛选条件的二级维度,一个批次关联一个工艺流程 |
|
||
| 工序 | Process,工艺流程中的一个加工环节 | 筛选条件的三级维度,支持多选 |
|
||
| 工序参数 | Process Result Param,工序作业完成后记录的实际结果数据 | 如电压、电流、容量、内阻等,用户可选择性展示 |
|
||
| 多工步工序 | Multi-Step Process,一个工序内包含多个工步(如化成、分容) | 结果参数会按工步拆分,如电压01、电压02 |
|
||
| 单工步结果参数 | 不随工步变化的工序结果参数 | 如进站时间、出站时间、设备编码等 |
|
||
| 工序结束时间 | 工序的完成时间(finish_time) | 时间范围的筛选依据,以所选最后一个工序的完成时间为准 |
|
||
| 档位/档位类别 | Classification,电池按容量等级划分的档位 | 如 K1、K2、F1 等 |
|
||
| 导出任务 | Export Task,异步大数据导出的任务机制 | 在系统顶部"系统下载任务"中查看进度并下载 |
|
||
|
||
**数据模型关系说明:**
|
||
|
||
```mermaid
|
||
flowchart TB
|
||
subgraph 筛选维度
|
||
FC[工艺流程类别]
|
||
TF[工艺流程]
|
||
BA[批次]
|
||
PR[工序]
|
||
end
|
||
|
||
subgraph 数据来源
|
||
BPL[电池工序聚合日志<br/>hf_mes_bkv_batch_process_log]
|
||
BKV[电池结果数据分表<br/>hf_mes_tmp_bkv_subbatch]
|
||
end
|
||
|
||
subgraph 工序相关
|
||
WS[工序单元<br/>ProcessWorkingsubclass]
|
||
RP[工序结果参数<br/>TechnologyProcessResultParam]
|
||
DP[默认结果参数<br/>DefaultResultParam]
|
||
PS[工序设定值<br/>setting字段]
|
||
end
|
||
|
||
FC -->|1:N| TF
|
||
TF -->|1:N| BA
|
||
TF -->|1:N| PR
|
||
PR -->|关联| WS
|
||
PR -->|拥有| RP
|
||
WS -->|预设| DP
|
||
PR -->|配置| PS
|
||
|
||
BA -->|产出| BPL
|
||
BPL -->|关联查询| BKV
|
||
```
|
||
|
||
**关系说明:**
|
||
|
||
| 关系类型 | 说明 |
|
||
|---------|------|
|
||
| 工艺流程类别 → 工艺流程 | **1 对 N**:一个工艺流程类别包含多个工艺流程 |
|
||
| 工艺流程 → 批次 | **1 对 N**:一个工艺流程可被多个批次引用 |
|
||
| 工艺流程 → 工序 | **1 对 N**:一个工艺流程包含多个工序 |
|
||
| 工序 → 工序单元 | **N 对 1**:每个工序关联一个工序单元 |
|
||
| 工序 → 工序结果参数 | **1 对 N**:每个工序可配置多个结果参数 |
|
||
| 工序单元 → 默认结果参数 | **1 对 N**:每个工序单元可预设多个默认结果参数 |
|
||
| 批次 → 电池工序日志 | **1 对 N**:一个批次下包含多条电池工序日志记录 |
|
||
| 电池工序日志 → 电池结果数据 | **1 对 1**:每条日志关联一条电池结果数据(按 subbatch 路由分表) |
|
||
|
||
**简化关系图:**
|
||
|
||
```mermaid
|
||
flowchart LR
|
||
A[工艺流程类别] -->|1:N| B[工艺流程]
|
||
B -->|1:N| C[批次]
|
||
B -->|1:N| D[工序]
|
||
D -->|关联| E[工序单元]
|
||
E -->|预设| F[默认结果参数]
|
||
C -->|查询| G[电池工序日志]
|
||
G -->|关联| H[电池结果数据]
|
||
```
|
||
|
||
## 3. 电池详情报表交互流程
|
||
|
||
### 3.1 筛选条件设置
|
||
|
||
#### 3.1.1 筛选条件说明
|
||
|
||
左侧面板提供层级联动的筛选条件,用户需按"流程 → 批次 → 工序"的顺序逐级选择,系统会根据上一级选择动态加载下一级的选项。
|
||
|
||
**筛选面板截图** :
|
||

|
||
|
||
#### 3.1.2 工艺流程选择
|
||
|
||
工艺流程按**工艺流程类别**分组展示,便于用户快速定位。
|
||
|
||
**操作步骤:**
|
||
|
||
1. 进入【数据中台】→【报表分析】→【电池详情报表】
|
||
2. 在左侧【筛选条件】面板的【流程】下拉框中,按工艺流程类别分组浏览
|
||
3. 选择目标工艺流程
|
||
|
||
**字段说明:**
|
||
|
||
| 字段 | 说明 | 必填 |
|
||
|------|------|------|
|
||
| 流程 | 按工艺流程类别分组的工艺流程列表,选中后联动加载批次和工序 | 是 |
|
||
|
||
**【注意】** 切换工艺流程后,已选的批次和工序将被清空,需重新选择。
|
||
|
||
#### 3.1.3 批次选择
|
||
|
||
**操作步骤:**
|
||
|
||
1. 完成工艺流程选择后,【批次】下拉框自动加载该工艺流程下的所有批次
|
||
2. 从下拉列表中选择目标批次,支持输入关键字过滤
|
||
|
||
**字段说明:**
|
||
|
||
| 字段 | 说明 | 必填 |
|
||
|------|------|------|
|
||
| 批次 | 所选工艺流程下的生产批次列表 | 是 |
|
||
|
||
#### 3.1.4 工序选择
|
||
|
||
**操作步骤:**
|
||
|
||
1. 完成工艺流程选择后,【工序】下拉框自动加载该工艺流程下的所有工序
|
||
2. 支持多选(可勾选多个工序),选中后右侧工序参数树将动态更新
|
||
|
||
**字段说明:**
|
||
|
||
| 字段 | 说明 | 必填 |
|
||
|------|------|------|
|
||
| 工序 | 所选工艺流程下的工序列表,支持多选 | 是(查询时必选) |
|
||
|
||
**【注意】** NG 判定工序(NG01~NG05)和分选工序(SELECTION)不在筛选列表中显示。
|
||
|
||
### 3.2 工序参数选择
|
||
|
||
#### 3.2.1 工序参数说明
|
||
|
||
工序参数是各工序在作业过程中记录的实际结果数据。系统根据用户在筛选条件中选择的工序,动态加载对应工序的结果参数,以树形结构展示。用户可以自由勾选需要在报表中展示的参数列。
|
||
|
||
**功能对应截图** :
|
||

|
||
|
||
#### 3.2.2 工序参数树操作
|
||
|
||
**操作步骤:**
|
||
|
||
1. 在筛选条件中勾选目标工序
|
||
2. 左侧【工序参数】区域自动加载所选工序的结果参数树
|
||
3. 勾选需要展示的参数项,支持父子级联勾选
|
||
4. 使用搜索框可按关键字快速定位参数
|
||
|
||
**字段说明:**
|
||
|
||
| 字段 | 说明 |
|
||
|------|------|
|
||
| 工序名称(父节点) | 工序的名称,如"OCV1"、"分容" |
|
||
| 结果参数(子节点) | 该工序下的结果参数,如电压、电流、内阻等 |
|
||
|
||
**【重要】** 如果未勾选任何工序参数,查询时将不显示该工序的结果参数列。
|
||
|
||
### 3.3 查询结果展示
|
||
|
||
#### 3.3.1 查询操作步骤
|
||
|
||
1. 完成筛选条件设置(流程、批次、工序)和工序参数勾选
|
||
2. 在右上方面板设置查询条件:
|
||
- **工序结束时间**:选择时间范围,系统以所选最后一个工序的完成时间作为过滤条件
|
||
- **托盘**:可选,按托盘号精确过滤
|
||
3. 点击【查询】按钮
|
||
4. 系统生成多级表头并加载数据
|
||
|
||
**查询条件说明:**
|
||
|
||
| 查询条件 | 说明 | 必填 |
|
||
|---------|------|------|
|
||
| 工序结束时间 | 以所选最后一个工序的完成时间(finish_time)作为时间范围条件 | 是 |
|
||
| 托盘 | 输入托盘号进行精确过滤 | 否 |
|
||
|
||
> **工序结束时间规则:**
|
||
> - 如果选择了工序,则以所选工序中**最后一个**的完成时间作为过滤条件
|
||
> - 如果未选择工序(使用全部工序),则以工艺流程中**最后一个工序**的完成时间作为过滤条件
|
||
|
||
**功能对应截图** :
|
||

|
||
|
||
#### 3.3.2 表格表头结构
|
||
|
||
表格采用**多级嵌套表头**结构,分为三层:
|
||
|
||
**第一层 — 工序层:**
|
||
以每个工序名称为一级列头,如"OCV1"、"分容"、"DCIR"等。
|
||
|
||
**第二层 — 工步层(仅化成/分容类工序):**
|
||
对于化成(FORMATION/HC)、分容(FR)、预化成(FORMATION_SS)等多工步工序,在工序下按工步展开二级列头,如"第1工步:搁置"、"第2工步:恒流恒压充电"。
|
||
|
||
**第三层 — 参数层:**
|
||
每个工序(或工步)下的具体结果参数,如电压、电流、容量、内阻等。
|
||
|
||
**基础信息列(固定显示):**
|
||
|
||
| 列名 | 说明 |
|
||
|------|------|
|
||
| 电池编码 | 电池在系统中的唯一标识 |
|
||
| 批次号 | 电池所属的生产批次 |
|
||
| 电池型号 | 产品的型号代码 |
|
||
| 工艺流程 | 该批次关联的工艺流程名称 |
|
||
| 托盘号 | 电池所在托盘的编号 |
|
||
| 流水号 | 托盘在批次内的流水编号 |
|
||
| 激活状态 | 电池当前状态:激活 / 未激活 |
|
||
| 档位类别 | 电池的容量档位分类 |
|
||
| 档位 | 电池的具体档位等级(如 K1、K2、F1 等) |
|
||
|
||
**化成/分容类工序特殊说明:**
|
||
|
||
化成和分容工序包含多个工步(搁置、恒流恒压充电、恒流恒压放电、恒流放电、恒流充电、循环),每个工步独立记录结果参数。系统会根据工序设定值(setting)中的工步配置自动生成对应的列。
|
||
|
||
例如,分容工序有 5 个工步,每个工步记录电压(VOL)、电流(CUR)、容量(CAP),则动态生成:
|
||
|
||
| 第1工步:搁置 | | | 第2工步:恒流恒压充电 | | | ... |
|
||
|:---:|:---:|:---:|:---:|:---:|:---:|
|
||
| VOL01 | CUR01 | CAP01 | VOL02 | CUR02 | CAP02 | ... |
|
||
|
||
**单工步结果参数:**
|
||
|
||
部分结果参数不随工步变化(is_only = 1),如进站时间(START_TIME)、出站时间(FINISH_TIME)、设备编码(DEVICE_CODE),这些参数在工序层级直接展示,不归属到具体工步下。
|
||
|
||
#### 3.3.3 数据来源说明
|
||
|
||
查询结果的数据来自以下数据表:
|
||
|
||
| 数据表 | 说明 |
|
||
|-------|------|
|
||
| 电池工序聚合日志表 | 记录每个电池在每道工序的完成状态、完成时间、档位等信息 |
|
||
| 电池结果数据分表 | 按 subbatch 分表存储电池的详细结果参数值(如电压、电流等) |
|
||
| 生产批次表 | 提供批次的工艺流程和产品型号关联信息 |
|
||
|
||
系统先查询聚合日志表获取电池列表,再根据每条电池的 subbatch 路由到对应的结果数据分表获取各工序参数值。
|
||
|
||
### 3.4 数据导出
|
||
|
||
#### 3.4.1 导出说明
|
||
|
||
系统采用**异步任务导出**机制,先将导出请求创建为后台任务,用户可在系统顶部的"系统下载任务"中查看任务进度并下载生成的文件。导出格式为 CSV。
|
||
|
||
**功能对应截图** :
|
||

|
||
|
||
#### 3.4.2 导出操作步骤
|
||
|
||
1. 设置好筛选条件(流程、批次、工序、时间范围和工序参数)
|
||
2. 点击【导出】按钮
|
||
3. 系统弹出确认提示:"数据导出需要先创建下载任务,是否继续?"
|
||
4. 点击【确定】,系统创建后台导出任务
|
||
5. 在系统顶部菜单进入【系统下载任务】,查看任务进度
|
||
6. 任务完成后,点击下载获取 CSV 文件
|
||
|
||
**【注意】** 导出前必须选择批次,否则无法导出。
|
||
|
||
#### 3.4.3 导出文件格式
|
||
|
||
导出 CSV 文件的表头同样采用多级结构:
|
||
|
||
| 层级 | 说明 | 示例 |
|
||
|------|------|------|
|
||
| 第 1 行(一级标题) | 工序名称 | OCV1, , , 分容, , , , , , |
|
||
| 第 2 行(二级标题) | 工步名称(仅多工步工序) | , , , 第1工步:搁置, , , 第2工步:恒流恒压充电 |
|
||
| 第 3 行(三级标题) | 具体结果参数名称 | 电池编码, 批次号, ..., 电压, 电流, 电压, 电流 |
|
||
|
||
**【重要】** 数据量较大的批次,系统会自动将数据拆分为多个 CSV 文件分别生成,最后合并为一个完整的 CSV 文件供下载。
|
||
|
||
### 3.5 分页浏览
|
||
|
||
查询结果支持分页浏览,系统默认每页显示 10 条记录。用户可以在表格底部切换页码和每页条数。
|
||
|
||
**分页操作:**
|
||
|
||
- 点击页码切换页面
|
||
- 修改每页显示条数
|
||
- 系统自动重新加载对应页的数据
|
||
|
||
**【注意】** 切换分页时无需重新点击查询按钮,系统会自动根据当前筛选条件加载对应页码的数据。
|
||
|
||
---
|
||
|
||
## 4. 常见问题
|
||
|
||
### 4.1 为什么选择工艺流程后没有批次可选?
|
||
|
||
请确认该工艺流程下是否已创建了生产批次。批次需要在【生产批次管理】中创建并与工艺流程关联。
|
||
|
||
### 4.2 为什么工序参数树为空?
|
||
|
||
请先在筛选条件中勾选目标工序,工序参数树会根据选中的工序动态加载对应的结果参数。如果已勾选工序但参数树仍为空,请确认该工序是否已在【工艺模型】中配置了结果参数。
|
||
|
||
### 4.3 为什么化成/分容工序查询报错"设定值为空"?
|
||
|
||
化成和分容工序需要在【工艺模型】→【工艺详情】中配置工序设定值(工步信息),否则系统无法确定工步数量和类型,报表无法生成。请联系系统管理员配置。
|
||
|
||
### 4.4 为什么导出的 CSV 文件与页面展示的列不同?
|
||
|
||
导出时会导出所选工序的**全部结果参数**(不再受页面工序参数树的勾选影响),而页面展示仅显示勾选的参数列。导出以完整数据为准。
|
||
|
||
### 4.5 导出任务创建后在哪里下载?
|
||
|
||
在系统顶部菜单栏找到【系统下载任务】,进入后可查看所有导出任务的状态和进度,任务完成后即可下载。
|