diff --git a/docs/功能测试-正向追溯.md b/docs/功能测试-正向追溯.md new file mode 100644 index 00000000..93bbcb56 --- /dev/null +++ b/docs/功能测试-正向追溯.md @@ -0,0 +1,33 @@ +# 功能测试 - 正向追溯 + +> 模块:数据中台 / 基础追溯 / 正向追溯 (Forward Traceability) +> 路由:`/data_middleground/basic_traceability/positive_direction_traceability` + +## 测试前置条件 + +- 测试账号具备访问“正向追溯”和“反向追溯”的菜单权限。 +- 准备至少一组可查询到数据的物料编码和物料批次。 +- 准备至少一个可查询到数据的半成品码。 +- 后端接口 `data_middleground/basic_traceability/positive_direction_traceability/list` 和 `export_task` 可正常访问。 + +## 测试任务列表 + +| 序号 | 测试项 | 操作步骤 | 预期结果 | +|---:|---|---|---| +| 1 | 页面入口 | 从菜单进入“正向追溯”,或直接访问路由 | 页面正常打开,显示物料编码、物料批次、半成品码筛选项和查询、导出、重置按钮 | +| 2 | 初始查询 | 进入页面后等待默认查询完成 | 表格正常渲染,空数据时显示空态,不出现脚本错误 | +| 3 | 物料编码校验 | 只输入物料编码,不输入物料批次,点击查询 | 页面提示请输入物料批次,不发起有效查询 | +| 4 | 物料批次查询 | 输入物料编码和物料批次,点击查询 | 表格展示匹配数据,包含电池条码、批次号、物料、设备、工序和完成时间 | +| 5 | 半成品码查询 | 输入半成品码,点击查询 | 表格展示匹配数据或空态,页面不报错 | +| 6 | 分页切换 | 查询出多条数据后切换分页 | 当前页数据正确变化,总数显示正确 | +| 7 | 跳转反向追溯 | 点击某行“反向追溯” | 跳转到反向追溯页面,并携带当前行电池条码自动查询 | +| 8 | 导出前校验 | 不输入任何筛选条件时点击导出 | 页面提示请选择筛选条件 | +| 9 | 创建导出任务 | 输入筛选条件后点击导出并确认 | 调用导出任务接口,提示创建下载任务成功,并跳转任务页面 | +| 10 | 重置功能 | 输入筛选条件并查询后点击重置 | 筛选项清空,分页回到第一页并重新加载数据 | +| 11 | 国际化检查 | 切换中英文语言后重新进入页面 | 页面按钮、表格列名和提示文案随语言切换显示 | + +## 回归关注点 + +- 物料编码存在时必须同时输入物料批次。 +- 导出任务必须携带当前筛选条件、总数和 `action=download`。 +- 反向追溯跳转必须使用行数据中的 `battery_id`。 diff --git a/docs/迁移任务列表.md b/docs/迁移任务列表.md index 9904ca7f..8da5c5c8 100644 --- a/docs/迁移任务列表.md +++ b/docs/迁移任务列表.md @@ -3,8 +3,8 @@ > 根据 `后台Webman界面截图对照表.md` 生成。状态以当前 V2 项目中已落地的页面目录为准。 - 总功能数:79 -- 已迁移:28 -- 未迁移:51 +- 已迁移:29 +- 未迁移:50 | 状态 | 一级模块 | 二级模块 | 三级模块 | 功能说明 | V2 目标路径 | |:---:|---|---|---|---|---| @@ -80,7 +80,7 @@ | ⬜ | 质量管理 (Quality Management) | SPC计数型报表 (SPC Attribute Charts) | CChart (C Chart) | | 待确认 | | ⬜ | 质量管理 (Quality Management) | SPC计数型报表 (SPC Attribute Charts) | UChart (U Chart) | | 待确认 | | ✅ | 数据中台 (Data Platform) | 基础追溯 (Traceability) | 反向追溯 (Backward Traceability) | 反向追溯 | `src/views/data-platform/traceability/backward/` | -| ⬜ | 数据中台 (Data Platform) | 基础追溯 (Traceability) | 正向追溯 (Forward Traceability) | | 待确认 | +| ✅ | 数据中台 (Data Platform) | 基础追溯 (Traceability) | 正向追溯 (Forward Traceability) | 正向追溯 | `src/views/data-platform/traceability/forward/` | | ⬜ | 数据中台 (Data Platform) | 基础追溯 (Traceability) | 电池曲线 (Battery Curve) | | 待确认 | | ⬜ | 数据中台 (Data Platform) | 基础追溯 (Traceability) | 托盘追溯 (Tray Traceability) | | 待确认 | | ⬜ | 数据中台 (Data Platform) | 基础追溯 (Traceability) | 电池追溯 (Battery Traceability) | | 待确认 | diff --git a/src/api/data-platform/traceability/forward.js b/src/api/data-platform/traceability/forward.js new file mode 100644 index 00000000..4e4f4fe6 --- /dev/null +++ b/src/api/data-platform/traceability/forward.js @@ -0,0 +1,27 @@ +import { request } from '@/api/_service' + +const BASE = 'data_middleground/basic_traceability/positive_direction_traceability/' + +function apiParams (method, data = {}) { + return { + method, + platform: 'background', + ...data + } +} + +export function getForwardTraceabilityList (data) { + return request({ + url: BASE + 'list', + method: 'get', + params: apiParams('data_middleground_basic_traceability_positive_direction_traceability_list', data) + }) +} + +export function createForwardTraceabilityExportTask (data) { + return request({ + url: BASE + 'export_task', + method: 'post', + data: apiParams('data_middleground_basic_traceability_positive_direction_traceability_export_task', data) + }) +} diff --git a/src/locales/en.json b/src/locales/en.json index fb836917..3309d7d5 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -1291,6 +1291,33 @@ "device_code": "Device Code", "node_not_found": "No matching node found", "query_before_export": "Query traceability data before export" + }, + "forward": { + "query": "Search", + "reset": "Reset", + "export": "Export", + "item_code": "Material Code", + "enter_item_code": "Enter material code", + "item_batch": "Material Batch", + "enter_item_batch": "Enter material batch", + "item_id": "Semi-finished ID", + "enter_item_id": "Enter semi-finished ID", + "battery_id": "Battery Barcode", + "batch_id": "Batch No.", + "item_name": "Material Name", + "device_code": "Device Code", + "work_unit": "Process Unit", + "process_code": "Process Code", + "finish_time": "Completion Time", + "operation": "Operation", + "reverse": "Reverse Traceability", + "no_data": "No data", + "export_confirm": "Create forward traceability export task?", + "prompt": "Prompt", + "confirm": "Confirm", + "cancel": "Cancel", + "please_select_filter_condition": "Select at least one filter condition", + "create_download_task_success": "Download task created successfully" } } } diff --git a/src/locales/zh-chs.json b/src/locales/zh-chs.json index 42697691..fdf56634 100644 --- a/src/locales/zh-chs.json +++ b/src/locales/zh-chs.json @@ -1291,6 +1291,33 @@ "device_code": "设备编码", "node_not_found": "未找到匹配节点", "query_before_export": "请先查询追溯数据后再导出" + }, + "forward": { + "query": "查询", + "reset": "重置", + "export": "导出", + "item_code": "物料编码", + "enter_item_code": "请输入物料编码", + "item_batch": "物料批次", + "enter_item_batch": "请输入物料批次", + "item_id": "半成品码", + "enter_item_id": "请输入半成品码", + "battery_id": "电池条码", + "batch_id": "批次号", + "item_name": "物料名称", + "device_code": "设备编码", + "work_unit": "工序单元", + "process_code": "工序编码", + "finish_time": "完成时间", + "operation": "操作", + "reverse": "反向追溯", + "no_data": "暂无数据", + "export_confirm": "确认创建正向追溯数据导出任务?", + "prompt": "提示", + "confirm": "确定", + "cancel": "取消", + "please_select_filter_condition": "请选择筛选条件", + "create_download_task_success": "创建下载任务成功" } } } diff --git a/src/router/modules/data-platform.js b/src/router/modules/data-platform.js index 85b4a438..30ca5363 100644 --- a/src/router/modules/data-platform.js +++ b/src/router/modules/data-platform.js @@ -19,6 +19,12 @@ export default { name: `${pre}basic_traceability-reverse_direction_traceability`, meta: { ...meta, cache: true, title: '反向追溯' }, component: _import('data-platform/traceability/backward') + }, + { + path: 'basic_traceability/positive_direction_traceability', + name: `${pre}basic_traceability-positive_direction_traceability`, + meta: { ...meta, cache: true, title: '正向追溯' }, + component: _import('data-platform/traceability/forward') } ])('data_middleground-') } diff --git a/src/views/data-platform/traceability/forward/index.vue b/src/views/data-platform/traceability/forward/index.vue new file mode 100644 index 00000000..fba2cb66 --- /dev/null +++ b/src/views/data-platform/traceability/forward/index.vue @@ -0,0 +1,217 @@ + + + + + + + + + + + + + + + + + {{ $t(key('query')) }} + + + {{ $t(key('export')) }} + + + {{ $t(key('reset')) }} + + + + + + + + + + + + + + + + +