@@ -127,3 +127,9 @@ pnpm deploy:server # 部署后端到生产环境
|
||||
- 案例支持 1–9 组双图对比或已合成单图,课时为正整数(节);标题、化名、练习背景和变化说明不作疗效承诺。授权记录只对管理员可见,发布需确认学员已单独同意公开宣传。
|
||||
- 保存采用版本校验;撤回授权自动下架。游客首页优先展示最多 3 个案例,更多通过分页浏览;登录用户预约入口优先。无已发布案例时隐藏模块,故障不阻断首页。
|
||||
- 迁移目录仅放 migration.sql;发布、回退、图片清理和真机验收约定放 docs/teaching-cases.md。未引用资产保留供重试,清理前核对引用且不得删除有效案例图片。
|
||||
|
||||
### 会员卡合同签署
|
||||
- 独立 `contract` 模块(服务端 `src/contract`),共享契约在 `shared/src/types/contract.ts`,判定函数 `requiresMembershipContract` 在 `shared/src/contract.ts`;学员页面在 `pages/contract` 分包,馆主页面为 `pages/admin/contracts.vue`、`contract-settings.vue`。规格与发布说明在 `docs/membership-contract.md`。
|
||||
- 只有月卡和多次卡签署,每笔支付订单一份合同,在支付回调发卡事务内签发;存量卡按未覆盖订单自动补签,无订单的由馆主填写金额发起。
|
||||
- 合同正文只在服务端 `contract-template.ts` 生成;签署时比对内容 SHA-256 后冻结正文、双方签名和签署凭证,签署后不可修改。改条款须升级 `CONTRACT_TEMPLATE_VERSION`。
|
||||
- 新购合同未签署不能自助预约(`requireBeforeBooking`),存量补签只提醒;乙方为个体工商户,显示「经营者」而非法定代表人。不得加入「最终解释权」、到期不退、转卡收费等格式条款。
|
||||
|
||||
Reference in New Issue
Block a user