Files
OneOS1.2/src/resources/vehicle-h2-fee-ledger/车辆氢费明细-需求文档.md

24 KiB
Raw Blame History

车辆氢费明细 — 产品需求说明PRD

项目 内容
文档版本 v2.3(业务版)
产品模块 台账数据 → 车辆氢费明细
文档类型 产品需求说明
适用读者 产品、业务、运营、测试、项目
修订说明 同步成本单价校验图标与一键替换、固定/阶梯定价标签及与加氢站价格配置取价逻辑

一、为什么做这件事

1.1 业务痛点

  • 车辆加氢费用分散在业务同事手工记录中,缺少统一台账,难以按客户、站点、时间核对。
  • 录入后需区分「是否已正式提交」「是否已完成对账」,避免未核实数据进入对账与结算环节。
  • 加氢量偏大、单价与公司在该站该时段的标准价不一致等情况,需要提前暴露,减少后续财务纠纷。

1.2 产品价值

价值点 说明
统一台账 一条记录对应一次加氢业务,关联车辆、客户、站点与金额
流程可控 待保存 → 未对账 → 已对账,责任边界清晰
效率提升 支持批量导入、批量改价、复制同类记录
风险可见 异常数据标黄,可一键只看有问题记录
可追溯 关键修改留痕,便于主管复核与客诉查证

1.3 本期目标

建设 Web 端「车辆氢费明细」页面,支撑业务人员查询、录入、保存、对账、导入导出全流程;财务相关字段(开票、付款等)由系统按客户等信息自动带出,减少手工填写错误。

1.4 本期不做

  • 多级审批流、与 ERP 自动过账(可后续迭代)。
  • 按组织架构的复杂数据权限(本期按「业务员 / 主管」两类角色描述,上线后对接权限中心)。
  • 导入文件格式的完整兼容方案以业务验收为准(需支持模板化批量录入)。

二、谁在用、用来干什么

2.1 用户角色

角色 典型诉求
业务员 日常录入加氢记录;批量导入历史数据;保存后推进对账;导出给财务或客户核对
主管 复核异常数据;必要时修正或删除已对账记录;查看变更记录

2.2 核心使用场景(用户故事)

  1. 单笔补录
    业务员得知某车在某站加氢后,在页面新增一行,填写时间、站点、车牌、加氢量与单价,保存后进入「未对账」列表等待勾选完成对账。

  2. 批量导入历史
    业务员下载模板,在 Excel 中整理多笔记录后上传,系统生成多条状态为「未对账」数据。

  3. 日常对账
    业务员按客户或时间筛选「未对账」记录,勾选确认无误后点击「完成对账」,数据变为「已对账」,本人不可再随意修改。

  4. 异常排查
    业务员勾选「仅显示异常数据」优先处理加氢量过大60kg或单价与标准不一致的记录修正后再保存或对账。

  5. 主管纠错
    已对账数据发现错误,主管进入编辑后修改;业务员侧编辑/删除按钮不可用,需联系主管处理。

  6. 导出报送
    业务员按筛选条件导出「未对账 + 已对账」正式数据(不含尚未保存的草稿),自选列字段生成表格文件。


三、业务主流程

3.1 端到端流程(推荐操作顺序)

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 金额计算

  • 成本总价 = 加氢量 × 成本单价(保留两位小数)
  • 加氢总价 = 加氢量 × 加氢单价(保留两位小数)

任一项未填齐时,对应总价为空,填齐后自动更新。

5.4 成本单价与站点定价方式

成本单价来源于加氢站管理中的价格配置,列表中单价的展示与校验规则如下:

  • 单价输入框左侧展示 固定阶梯 小标签,对应站点对该客户(或默认「全部客户」)的定价方式。
  • 固定价格:标准成本价为配置的单一单价(在生效时间内)。
  • 阶梯价格:标准成本价按当前阶梯周期内累计加氢量匹配档位;悬浮「阶梯」标签可查看当前阶梯量kg对应单价(元/kg
  • 录入单价与标准成本价不一致时,单元格标黄并显示校验图标;未对账数据可由创建人或主管 一键替换为标准成本单价

取价优先级(与加氢站管理「站点信息」一致):第一权重为单站单客户成本价配置;第二权重为站点全部客户成本价配置。

关联模块:加氢站管理 → 站点信息(/prototypes/oneos-web-h2-station-site)的固定价 / 阶梯价配置。


六、谁能改、谁能删

6.1 按状态的权限(业务员 vs 主管)

数据状态 业务员 主管
待保存(本人录入) 可直接改表格;可复制、删除 同业务员(本期不单独区分待保存)
待保存(他人录入) 不可见或不可改(按账号权限,上线后明确)
未对账 需点「编辑」后才能改;可复制、删除;可勾选完成对账 同业务员
已对账 不可编辑、不可删除(按钮灰显+提示联系主管) 可点「编辑」修改;可删除

6.2 行内操作说明

操作 适用情况 业务说明
编辑 未对账、已对账(主管) 进入编辑模式后方可改单元格;待保存无需点编辑
复制 未对账、本人待保存 可一次复制 1100 条相似记录,生成新的待保存行
删除 未对账、本人待保存;已对账仅主管 二次确认后删除
更多 → 变更日志 未对账、已对账 查看该条历史修改记录

七、异常数据 — 业务规则

系统在列表中提示以下异常情况(不影响保存,但需业务留意);可开启「仅显示异常数据」集中处理。

7.1 单元格标黄(字段级)

异常类型 判定逻辑 用户看到的提示
加氢量偏大 单次加氢量超过 60 kg 加氢量疑似有误
成本单价异常 所填成本单价与「该站该时段公司标准成本价」不一致 成本单价与系统该时间段不一致
加氢单价异常 所填加氢单价与「该站该时段公司标准对客户价」不一致 加氢单价与系统该时间段不一致

标准成本价随 加氢站 + 加氢时间 + 客户 匹配(固定价取配置单价;阶梯价按周期累计加氢量匹配档位,规则与加氢站管理一致);标准客户价仍按 加氢站 + 加氢时间 匹配。若未配置对应价格,则不提示单价类异常。

7.2 成本单价列 — 定价标签与校验

定价方式标签(已选加氢站且可解析价格配置时,在单价左侧展示):

标签 含义
固定 站点对该客户(或站点默认「全部客户」)为固定成本价
阶梯 站点对该客户为阶梯成本价;悬浮显示当前阶梯量kg对应单价(元/kg

成本单价列状态图标所有登录用户均可见,不因业务员/主管角色隐藏):

校验结果 图标 悬浮提示
与标准成本价一致 绿色 ✓ 「成本单价正确」+ 标准价说明(含固定价或阶梯价口径)
与标准成本价不一致 红色 ⚠ 「成本单价异常」+ 标准价说明
无法校验(未填单价、未选站点、未配置标准价等)

一键替换(仅与标准成本价不一致且数据未对账

  • 错误提示框内提供「一键替换为标准成本单价
  • 可操作角色:该行创建人(当前操作员)主管(管理员);其他用户可见图标与说明,但不显示替换按钮
  • 点击后以标准成本价覆盖录入值,并写入变更日志(字段:成本单价(一键替换)

7.3 整行标红(客户名称异常)

车牌 + 加氢日期 比对车辆运营态(交还车/库存/异动):

场景 判定 界面表现
租赁/自营,已交车未还车 录入客户与系统登记客户不一致 整行淡红底;各单元格水印「客户疑似有误」
库存车(可运营/待运营) 不应填写客户名称 同上
异动期内 客户名称应为「车辆异动」 同上(未对账时)

已对账结案后(仅客户名称类异常):

  • 整行淡红底与各格「客户疑似有误」水印去除,恢复普通已对账行样式
  • 客户名称列 红色 ⚠ / 绿色 ✓ 及悬浮说明仍保留,便于事后查阅
  • 不参与「仅显示异常数据」筛选(单元格标黄类异常规则不变)

客户名称列状态图标所有登录用户均可见,不因业务员/主管角色隐藏):

校验结果 图标 悬浮提示
与系统登记一致,或库存/异动规则符合 绿色 ✓ 「客户名称正确」+ 系统客户、交车时间等说明
疑似有误 红色 ⚠ 「客户疑似有误」+ 场景说明(系统客户、交车时间等)
无法校验(缺车牌、加氢时间或未填客户等)

一键替换(仅「与系统登记客户不一致」且数据未对账

  • 错误提示框内提供「一键替换为系统客户」
  • 可操作角色:该行创建人(当前操作员)主管(管理员);其他用户可见图标与说明,但不显示替换按钮
  • 点击后以系统登记客户覆盖录入值,并写入变更日志(字段:客户名称(一键替换))

7.4 「仅显示异常数据」

  • 默认关闭,展示符合查询条件的全部记录(含待保存例外规则)。
  • 开启后只显示至少有一项异常(标黄或客户整行标红)的记录,方便集中核对。
  • 导出不受此开关影响(见下文)。

八、批量能力

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 未对账记录点编辑后改客户 业务员、开票信息等随客户更新,变更日志有记录
U11 租赁车客户与系统不一致 整行标红、水印「客户疑似有误」,红色 ⚠;创建人或主管可一键替换并留痕
U12 库存车误填客户 整行标红,红色 ⚠,提示不应填写客户名称
U13 租赁车客户与系统一致 客户名称后显示绿色 ✓,悬浮「客户名称正确」
U14 非创建人查看客户不一致行 可见红色 ⚠ 与说明,无「一键替换」按钮
U15 异动期客户为「车辆异动」 不标红,客户名称后绿色 ✓,悬浮说明异动期规则
U16 异动期客户填其他名称 整行标红、水印「客户疑似有误」,红色 ⚠,提示应为「车辆异动」
U17 客户名称异常行完成对账 整行标红/水印消失,红色 ⚠ 仍可见;「仅显示异常数据」筛不出该行
U18 成本单价与标准价一致 成本单价后显示绿色 ✓,悬浮「成本单价正确」
U19 成本单价与标准价不一致 单元格标黄 + 红色 ⚠;创建人或主管可一键替换为标准成本单价并留痕
U20 非创建人查看成本单价不一致行 可见红色 ⚠ 与说明,无「一键替换」按钮
U21 固定价站点行 成本单价前显示「固定」标签
U22 阶梯价客户行 显示「阶梯」标签;悬浮可见当前阶梯量与对应单价

十二、名词与枚举(业务词典)

名词 含义
待保存 草稿,未进入对账流程
未对账 已保存,等待业务确认并完成对账
已对账 对账完成,业务员不可随意改动
客户承担 氢费由客户承担
我司承担 氢费由我司承担
客户自行结算 由客户自行与加氢站等方结算
其他结算 其他结算方式
加氢站付款状态 加氢站侧是否已付款,已付款 / 未付款
客户收款状态 客户侧是否已收款,已付款 / 未付款
收票日期 财务收票日期,系统带出
标准价 公司维护的、按加氢站与生效时段(及客户)确定的参考单价
固定价格 加氢站对全部客户或指定客户配置的单一成本单价
阶梯价格 按阶梯周期累计加氢量分档确定成本单价的规则

十三、版本与协作说明

  • 本文档描述的是 车辆氢费明细 页面当前已对齐的产品行为,供评审、培训与 UAT 使用。
  • 研发实现细节、接口定义、字段编码见单独的技术设计文档(如有)。
  • 需求变更请更新本文档版本号,并在评审纪要中注明影响章节。

文档结束