Files
ONE-OS/web端/台账数据/车辆氢费明细-需求内容.js
王冕 d432d51eed feat(web): 同步 web 端目录更新至 Gitea
包含加氢站站点信息、运维交车/故障、台账与数据分析等页面新增与改动。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-04 19:57:30 +08:00

411 lines
18 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// 车辆氢费明细 PRD 正文(与 车辆氢费明细-需求文档.md 同步)
var H2_LEDGER_REQUIREMENT_DOC = `# 车辆氢费明细 — 产品需求说明PRD
| 项目 | 内容 |
|------|------|
| 文档版本 | v2.1(业务版) |
| 产品模块 | 台账数据 → 车辆氢费明细 |
| 文档类型 | 产品需求说明 |
| 适用读者 | 产品、业务、运营、测试、项目 |
| 修订说明 | 同步列表字段顺序、顶部合计条、承担方式、系统带出字段等现行页面行为 |
---
## 一、为什么做这件事
### 1.1 业务痛点
- 车辆加氢费用分散在业务同事手工记录中,缺少统一台账,难以按客户、站点、时间核对。
- 录入后需区分「是否已正式提交」「是否已完成对账」,避免未核实数据进入对账与结算环节。
- 加氢量偏大、单价与公司在该站该时段的标准价不一致等情况,需要**提前暴露**,减少后续财务纠纷。
### 1.2 产品价值
| 价值点 | 说明 |
|--------|------|
| 统一台账 | 一条记录对应一次加氢业务,关联车辆、客户、站点与金额 |
| 流程可控 | 待保存 → 未对账 → 已对账,责任边界清晰 |
| 效率提升 | 支持批量导入、批量改价、复制同类记录 |
| 风险可见 | 异常数据标黄,可一键只看有问题记录 |
| 可追溯 | 关键修改留痕,便于主管复核与客诉查证 |
### 1.3 本期目标
建设 Web 端「车辆氢费明细」页面,支撑业务人员**查询、录入、保存、对账、导入导出**全流程;财务相关字段(开票、付款等)由系统按客户等信息自动带出,减少手工填写错误。
### 1.4 本期不做
- 多级审批流、与 ERP 自动过账(可后续迭代)。
- 按组织架构的复杂数据权限(本期按「业务员 / 主管」两类角色描述,上线后对接权限中心)。
- 导入文件格式的完整兼容方案以业务验收为准(需支持模板化批量录入)。
---
## 二、谁在用、用来干什么
### 2.1 用户角色
| 角色 | 典型诉求 |
|------|----------|
| **业务员** | 日常录入加氢记录;批量导入历史数据;保存后推进对账;导出给财务或客户核对 |
| **主管** | 复核异常数据;必要时修正或删除**已对账**记录;查看变更记录 |
### 2.2 核心使用场景(用户故事)
1. **单笔补录**
业务员得知某车在某站加氢后,在页面新增一行,填写时间、站点、车牌、加氢量与单价,保存后进入「未对账」列表等待勾选完成对账。
2. **批量导入历史**
业务员下载模板,在 Excel 中整理多笔记录后上传,系统生成多条状态为「未对账」数据。
3. **日常对账**
业务员按客户或时间筛选「未对账」记录,勾选确认无误后点击「完成对账」,数据变为「已对账」,本人不可再随意修改。
4. **异常排查**
业务员勾选「仅显示异常数据」优先处理加氢量过大60kg或单价与标准不一致的记录修正后再保存或对账。
5. **主管纠错**
已对账数据发现错误,主管进入编辑后修改;业务员侧编辑/删除按钮不可用,需联系主管处理。
6. **导出报送**
业务员按筛选条件导出「未对账 + 已对账」正式数据(不含尚未保存的草稿),自选列字段生成表格文件。
---
## 三、业务主流程
### 3.1 端到端流程(推荐操作顺序)
\`\`\`mermaid
flowchart LR
A[录入/复制] --> B[待保存]
B --> C[点击保存]
C[保存/导入] --> D[未对账]
D --> E[勾选并完成对账]
E --> F[已对账]
\`\`\`
**说明:**
- **待保存**:草稿态,可反复修改;尚未进入对账池。
- **未对账**:已保存的正式数据,可「编辑」「删除」勾选「完成对账」。
- **已对账**:对账完成,业务员不可改删;主管可特殊处理「编辑」「删除」。
### 3.2 「保存」与「完成对账」的区别
| 操作 | 业务含义 | 对象 | 结果 |
|------|----------|------|------|
| **保存** | 将草稿确认为可参与对账的正式记录 | 当前页所有「待保存」记录 | 全部变为「未对账」 |
| **完成对账** | 确认与客户/内部核对无误,结案 | 用户勾选的「未对账」记录 | 变为「已对账」 |
**保存前校验:** 必填项未填完整时,在对应格子标红提示,**不弹出成功提示**,也不变更状态。
**完成对账前确认:** 系统提示「完成对账后只能联系主管修改」,用户确认后执行。
---
## 四、页面功能说明(业务视角)
### 4.1 页面组成
用户进入「台账数据 → 车辆氢费明细」后,自上而下为:
1. **查询条件区** — 按时间、订单、车辆、客户等筛选
2. **数据列表区** — 展示氢费明细、合计、操作按钮
3. **弹窗** — 批量导入、批量导出、变更日志
列表下方提供 **「新增一行」**,用于手工补录。
### 4.2 查询条件
**交互原则:** 修改条件后不会立刻刷新列表,需点击 **「查询」** 才生效;**「重置」** 清空条件并恢复全量展示。
**默认展示:** 第一行条件(加氢时间、订单编号、查询按钮);点击 **「展开」** 可看到更多条件。
| 查询项 | 业务说明 |
|--------|----------|
| 加氢时间 | 起止日期范围 |
| 订单编号 | 支持模糊搜索 |
| 车牌号 | 从公司车辆库选择 |
| 客户名称 | 从客户库选择 |
| 加氢站名称 | 从加氢站库选择 |
| 业务员 | 按客户归属业务员筛选 |
| 承担方式 | 客户承担 / 我司承担 / 客户自行结算 / 其他结算 |
| 客户收款状态 | 已付款 / 未付款(系统带出,用于筛选) |
| 开票公司 | 从开票主体选择(系统带出字段对应公司) |
查询成功给予简短成功提示。
**与列表的关系:**
- 列表默认展示符合查询条件的记录。
- **例外:** 本人刚新增、尚未保存的记录,即使暂时不符合筛选条件,也会显示在列表中,避免「点了新增却找不到行」。
- **「仅显示异常数据」** 开启时,只展示有风险提示的记录;本人待保存的新增行仍会显示,以免录入中断。
### 4.3 列表展示规则
**分区展示(便于扫读):**
| 区域顺序(上→下) | 记录状态 | 排序习惯 |
|-------------------|----------|----------|
| 第一区 | 已对账 | 加氢时间新的在前 |
| 第二区 | 未对账 | 加氢时间新的在前 |
| 第三区 | 待保存 | 先录入的在前,新加的靠下 |
不同区域之间有明显分隔,已对账区背景略灰、待保存区背景略黄,降低误操作概率。
**顶部合计条:** 表格上方独立展示 **加氢量(kg)、成本总价(元)、加氢总价(元)** 三项合计。
- **统计范围:** 与当前列表可见行一致。
- **随查询重算:** 点击「查询」应用筛选条件后,合计立即按新结果重新汇总。
- **随「仅显示异常数据」变化:** 开关开启时,仅对当前可见的异常记录(及本人待保存行)合计。
- **说明:** 合计条含「待保存 / 未对账 / 已对账」等当前列表中的全部可见记录,与导出范围(仅未对账+已对账)不同。
**列表列顺序(左→右,业务视角):**
序号 → 加氢日期 → 加氢时间 → 加氢站名称 → 客户名称 → 车牌号 → 加氢量 → 成本单价 → 成本总价 → 加氢单价 → 加氢总价 → 行驶里程 → 备注 → 业务员 → 承担方式 → 对账日期 → **收票日期** → **加氢站付款状态** → **开票日期** → **客户收款状态** → **开票公司** → 状态 → 订单编号 → 操作(操作列固定右侧)。
**系统带出字段(不可手工维护):** 收票日期、加氢站付款状态、开票日期、客户收款状态、开票公司;选择/变更客户等信息后由系统自动刷新,单元格为浅灰底只读样式。
**列表勾选:** 仅 **未对账** 记录可勾选,用于批量「完成对账」。
### 4.4 工具栏操作
从左到右、从业务使用频率排列:
| 按钮 | 业务作用 |
|------|----------|
| 仅显示异常数据 | 开关,快速聚焦有风险提示的记录 |
| 批量导入 | 按模板上传多条待保存记录 |
| 批量导出 | 按当前查询条件导出正式数据 |
| 保存 | 将全部待保存记录提交为未对账 |
| 完成对账 | 将勾选的未对账记录结案为已对账 |
---
## 五、单条记录:填什么、怎么算
### 5.1 用户可见字段说明
| 信息项 | 用户是否填写 | 业务说明 |
|--------|--------------|----------|
| 加氢时间 | 是* | 精确到秒,必填 |
| 加氢日期 | 否 | 由加氢时间自动得出,只读 |
| 加氢站名称 | 是* | 必选 |
| 客户名称 | 是* | 必选,位于加氢站右侧;决定业务员与系统带出信息 |
| 车牌号 | 是* | 必选,须为公司登记车辆 |
| 加氢量(kg) | 是* | 必填,用于算总价 |
| 成本单价 | 是* | 必填,向站点的采购成本价 |
| 成本总价 | 否 | 加氢量 × 成本单价,自动计算 |
| 加氢单价 | 是* | 必填,对客户的销售单价 |
| 加氢总价 | 否 | 加氢量 × 加氢单价,自动计算 |
| 行驶里程 | 否 | 选填,位于加氢总价之后 |
| 备注 | 否 | 自由文本 |
| 业务员 | 否 | 选客户后自动带出 |
| 承担方式 | 是* | 客户承担 / 我司承担 / 客户自行结算 / 其他结算 |
| 对账日期 | 否 | 完成对账等流程带出,只读 |
| 收票日期 | 否 | 由财务/收票模块自动带出,不可编辑 |
| 加氢站付款状态 | 否 | 已付款 / 未付款,由加氢站打款管理带出 |
| 开票日期 | 否 | 由开票模块自动带出 |
| 客户收款状态 | 否 | 已付款 / 未付款,由客户收款模块带出 |
| 开票公司 | 否 | 显示开票公司名称,系统自动带出 |
| 状态 | 否 | 展示「未对账」「已对账」;待保存不显示标签;列在列表末尾 |
| 订单编号 | 否 | 系统按规则自动生成,不可改;列在列表末尾 |
\\* 保存时校验,缺失则标红提示。
### 5.2 订单编号规则(业务口径)
便于业务与财务对齐、按站按日追溯:
- 编号以 **JQ** 开头,后接 **加氢站编码**、**加氢日期6 位)**、**当日流水号5 位)**。
- 同一加氢站、同一天内,按加氢时间先后依次编号,每日从 1 号起。
- 用户无需手填,保存或数据重算时由系统生成。
### 5.3 金额计算
- **成本总价** = 加氢量 × 成本单价(保留两位小数)
- **加氢总价** = 加氢量 × 加氢单价(保留两位小数)
任一项未填齐时,对应总价为空,填齐后自动更新。
---
## 六、谁能改、谁能删
### 6.1 按状态的权限(业务员 vs 主管)
| 数据状态 | 业务员 | 主管 |
|----------|--------|------|
| 待保存(本人录入) | 可直接改表格;可复制、删除 | 同业务员(本期不单独区分待保存) |
| 待保存(他人录入) | 不可见或不可改(按账号权限,上线后明确) | — |
| 未对账 | 需点「编辑」后才能改;可复制、删除;可勾选完成对账 | 同业务员 |
| 已对账 | 不可编辑、不可删除(按钮灰显+提示联系主管) | 可点「编辑」修改;可删除 |
### 6.2 行内操作说明
| 操作 | 适用情况 | 业务说明 |
|------|----------|----------|
| 编辑 | 未对账、已对账(主管) | 进入编辑模式后方可改单元格;待保存无需点编辑 |
| 复制 | 未对账、本人待保存 | 可一次复制 1100 条相似记录,生成新的待保存行 |
| 删除 | 未对账、本人待保存;已对账仅主管 | 二次确认后删除 |
| 更多 → 变更日志 | 未对账、已对账 | 查看该条历史修改记录 |
---
## 七、异常数据(标黄)— 业务规则
### 7.1 什么是「异常」
系统在列表中用**黄色背景**提示以下三类情况(不影响保存,但需业务留意):
| 异常类型 | 判定逻辑(业务语言) | 用户看到的提示 |
|----------|----------------------|----------------|
| 加氢量偏大 | 单次加氢量超过 60 kg | 加氢量疑似有误 |
| 成本单价异常 | 所填成本单价与「该站该时段公司标准成本价」不一致 | 成本单价与系统该时间段不一致 |
| 加氢单价异常 | 所填加氢单价与「该站该时段公司标准对客户价」不一致 | 加氢单价与系统该时间段不一致 |
标准价随 **加氢站 + 加氢时间** 匹配;若公司未配置该站该时段价格,则不提示单价类异常。
### 7.2 「仅显示异常数据」
- 默认关闭,展示符合查询条件的全部记录(含待保存例外规则)。
- 开启后只显示至少有一项异常提示的记录,方便集中核对。
- **导出不受此开关影响**(见下文)。
---
## 八、批量能力
### 8.1 表头批量改价 / 改结算
- 在 **成本单价**、**加氢单价** 列表头可批量填入统一单价,作用于当前可编辑的所有记录(待保存 + 未对账)。
- 在 **承担方式** 列表头可批量改为四种承担方式之一。
- **已对账** 记录不参与批量修改。
### 8.2 批量导入
**适用:** 历史数据、线下表格整理后的批量录入。
**流程:**
1. 点击「批量导入」→ 下载标准模板
2. 按模板填写(无需填对账日期及收票/开票/付款等系统带出字段)
3. 上传文件 → 系统生成多条 **待保存** 记录
4. 业务核对列表 → 点击 **保存** 进入未对账
**模板包含列:** 加氢时间、加氢站名称、车牌号、加氢量、成本单价、客户名称、加氢单价、承担方式、备注(行驶里程可在备注前按业务需要填写,导入模板列顺序以页面下载为准)。
**导入后状态:** 均为待保存,与手工新增一致,须保存后才参与对账与导出。
### 8.3 批量导出
**适用:** 向财务、客户或内部汇报正式台账。
**规则:**
- 导出范围 = **当前查询条件下** 的 **未对账 + 已对账** 数据。
- **不包含待保存**(草稿不对外报送)。
- **不受**「仅显示异常数据」开关限制。
- 弹窗文案:「请选择导出的列」;支持全选/取消全选;默认勾选全部可导出列。
- 无符合条件数据时提示:暂无未对账或已对账数据可导出。
**可导出列(业务名称):** 序号、状态、订单编号、加氢时间、加氢日期、加氢站名称、车牌号、加氢量、成本单价、成本总价、客户名称、加氢单价、加氢总价、行驶里程、业务员、承担方式、对账日期、备注、收票日期、加氢站付款状态、开票日期、客户收款状态、开票公司。
---
## 九、变更日志
### 9.1 记录什么
满足审计与纠纷查证,以下变化需留痕:
- 保存(待保存 → 未对账)
- 完成对账(未对账 → 已对账)
- 各业务字段修改(前后值不同)
- 新增、复制、批量导入产生记录
### 9.2 怎么查看
在操作列点击 **「更多」→ 变更日志**,弹窗展示:
- 修改时间、修改人、修改字段、修改前(红)、修改后(绿)
- 按时间倒序排列
---
## 十、业务规则汇总(验收必读)
### 10.1 保存
- 一次保存处理页面上**全部**待保存记录。
- 必填:加氢时间、加氢站、车牌(须为登记车辆)、客户、加氢量、成本单价、加氢单价、承担方式。
- 校验失败:仅格子标红,无「保存成功」类提示。
### 10.2 完成对账
- 必须先勾选未对账记录。
- 仅未对账可勾选。
- 确认文案强调:完成后需主管才能改。
### 10.3 筛选与列表
- 查询点击后生效;重置恢复。
- **顶部合计条** 对当前列表可见行实时汇总;修改筛选并点击「查询」后重新计算;「仅显示异常数据」开启时仅统计可见行。
- 本人待保存新增行在筛选后仍可见(合计亦包含这些行,若其在列表中展示)。
### 10.4 导出
- 仅未对账、已对账;遵循查询条件;可自选列。
### 10.5 复制
- 单次最多 100 条;生成待保存记录。
---
## 十一、业务验收场景UAT 建议)
| 编号 | 场景 | 预期结果 |
|------|------|----------|
| U1 | 新增一行并填齐必填项后保存 | 变为未对账,出现订单编号 |
| U2 | 必填项缺一项点保存 | 对应格标红,状态仍为待保存 |
| U3 | 勾选多条未对账并完成对账 | 变为已对账,业务员不可改删 |
| U4 | 业务员打开已对账记录 | 编辑/删除不可用,有主管联系提示 |
| U5 | 加氢量填 65kg | 单元格标黄,提示加氢量疑似有误 |
| U6 | 单价填与标准价不一致 | 标黄并提示与系统该时段不一致 |
| U7 | 开启「仅显示异常数据」 | 仅异常记录可见,本人新加待保存仍可见 |
| U8 | 设置筛选后导出 | 仅导出未对账+已对账且符合筛选的数据 |
| U9 | 导入模板 5 条后保存 | 5 条均变未对账 |
| U10 | 未对账记录点编辑后改客户 | 业务员、开票信息等随客户更新,变更日志有记录 |
---
## 十二、名词与枚举(业务词典)
| 名词 | 含义 |
|------|------|
| 待保存 | 草稿,未进入对账流程 |
| 未对账 | 已保存,等待业务确认并完成对账 |
| 已对账 | 对账完成,业务员不可随意改动 |
| 客户承担 | 氢费由客户承担 |
| 我司承担 | 氢费由我司承担 |
| 客户自行结算 | 由客户自行与加氢站等方结算 |
| 其他结算 | 其他结算方式 |
| 加氢站付款状态 | 加氢站侧是否已付款,已付款 / 未付款 |
| 客户收款状态 | 客户侧是否已收款,已付款 / 未付款 |
| 收票日期 | 财务收票日期,系统带出 |
| 标准价 | 公司维护的、按加氢站与生效时段确定的参考单价 |
---
## 十三、版本与协作说明
- 本文档描述的是 **车辆氢费明细** 页面当前已对齐的产品行为,供评审、培训与 UAT 使用。
- 研发实现细节、接口定义、字段编码见单独的技术设计文档(如有)。
- 需求变更请更新本文档版本号,并在评审纪要中注明影响章节。
---
**文档结束**
`;