日期: 2026-10-13
状态: 已确认设计,待写实现计划
分支: 当前工作分支(与 web 尾期自动算同一迭代线)
mobile-oa-h5 承载的市场【协议单】)业务能力须与 web-admin 对齐。| 阶段 | 内容 |
|---|---|
| P1(本文) | 细胞存储协议新建/编辑可配按样本缴费;模式切换并期;尾期自动算;趸交截止日同步;读写落库;详情按样本展示缴费 |
| P2 | 对照 ProtocolFormDialog 补齐其它业务字段、联动与校验 |
| P3 | 列表/详情信息元素全面对齐 |
| 项 | 决策 |
|---|---|
| 对齐范围 | 新建/编辑/详情/列表的业务字段与缴费能力;审核等管理动作不开放 |
| 缴费深度 | 完整对齐 web SamplePaymentPanel(趸交/分期/分改趸 + 模式切换确认与并期/拆期) |
| 自动计算 | 与 2026-10-13-protocol-payment-last-period-autofill-design.md 相同 |
| 科研捐赠 | 本阶段不配缴费(与 web 细胞存储缴费一致) |
| 缴费独立菜单 | 不开放「修改应缴计划」;计划仍在协议单内编辑 |
小程序【协议单】source=cell_storage:
paymentModelVersion=2)。每个有效样本一张缴费方案:
| 元素 | 说明 |
|---|---|
| 缴费模式 | dj 趸交 / fq 分期 / fgd 分改趸;可选集合与切换规则同 web |
| 样本合同金额 | 可手改;优惠价联动策略对齐 web |
| 趸交截止时间 | 仅趸交;有值/清空时同步最后一期应缴费时间(锁定跳过) |
| 分期期数 / 间隔 / 开始日 / 提前催缴天数 | 分期、分改趸 |
| 各期应缴费金额、应缴费时间 | 可编辑;存在 yjf 转账的期次锁定 |
| 分期尾期金额 | 前 N−1 期变更时自动 = 合同 − Σ前 N−1;尾期可手改覆盖,前几期再变后重算 |
| 模式切换 | 确认弹窗 + 并期/拆期,规则对齐 web SamplePaymentPanel |
van-dialog;日期/金额:Vant 字段。MarketModuleForm 在样本区之后渲染专用面板(不沿用当前只读三字段)。editOnly + readOnly 限制)。| 项 | 说明 |
|---|---|
| 组件 | mobile-oa-h5/src/market/components/ProtocolSamplePaymentPanel.vue |
| 逻辑 | mobile-oa-h5/src/market/protocol-sample-payment.js — 复用/移植 web 纯函数(尾期计算、截止日同步、并期拆期、校验 hint、可选模式) |
| 状态 | formData.samplePayments[] 与 samples[] 按 sampleCode 同步 |
| 保存 | payload 含 samplePayments;协议总金额与样本合同合计弱提示同 web |
| 回填 | 详情 samplePayments;无方案时按样本生成默认趸交草稿 |
MarketProtocolBody 增加可选 samplePayments(camelCase,结构对齐 web 保存体)。cell_storage 持久化;科研捐赠不得写入缴费方案。save_sample_payments_for_protocol。paymentModelVersion=2。extra=forbid:拒绝审核/作废/退款/财务状态字段。_cell_detail 返回 samplePayments(及 paymentModelVersion)。payment 兼容;前端以 samplePayments 为准。自动化
samplePayments 的 API 测。手工
docs/superpowers/specs/2026-10-13-protocol-payment-last-period-autofill-design.md(web 自动算规则,移动端同规则)docs/superpowers/specs/2026-10-10-market-miniapp-role-features-implementation-summary.md(移动角色边界;P1 在协议单内扩展缴费编辑,不改变「缴费菜单不改应缴计划」)