feat(old-items): complete reuse workflow and refine miniapp home

This commit is contained in:
2026-08-15 16:38:30 +08:00
parent 65d23eab4a
commit f3737c80be
94 changed files with 7880 additions and 215 deletions
+32
View File
@@ -165,3 +165,35 @@ UAT 不只让开发人员自测。
- 未登录或无权限人员不能访问管理接口;草稿和归档文档不能从公众接口获取。
- 草稿可编辑并使用 revision 防并发覆盖;已发布文档不能覆盖编辑,只能归档。
- 创建、发布和归档幂等,状态历史和审计完整;小程序列表、详情、空状态和失败状态可用。
---
## 9. 旧物善用 Phase 1 验收
- 首页和个人中心入口均可到达模块主页;模块主页统计只显示真实业务事实。
- 上门取件必须填写联系人、合法手机号、地址、未来预约时间并由后台选择工作人员;定点投递必须选择已启用点位。
- 最多六张图片通过私有对象存储预签名上传并确认元数据;只有捐赠本人和具备旧物查看权限的后台人员可获取五分钟短期下载 URL,访问需审计。
- 捐赠创建幂等,其他用户不能读取猜测的公开 ID;审核、接收、分拣和完成严格校验 revision 与状态机,每次变化都有不可变历史和审计。
- 需求仅在发布后公开;定向捐赠完成时原子增加已满足数量;统计从接收/完成事实计算,不允许后台人工覆盖。
- 管理端可处理订单、人工分配、发布/下架需求和新增投递点;Phase 2 台账、Excel、证书和积分不得以空按钮冒充完成。
---
## 10. 旧物善用 Phase 2 验收
- 手工入库和标准 Excel 批量入库都生成不可预测台账编号、在库主记录、入库事件和审计;同一请求安全重放,不同内容复用请求 ID 被拒绝。
- Excel 模板具有固定表头、品类下拉、整数数量、日期格式、冻结表头与合理列宽;公式、错误表头、非法品类、非正整数数量、重复来源捐赠和超过 500 行必须拒绝,任一行失败时整批不落库。
- 状态只能按在库、分拣、消毒、出库、落地推进,跳级/回退和过期 revision 被拒绝;出库缺少需求/对象/区域或落地缺少实际帮扶人数时拒绝。
- 详情包含完整只追加事件;导出和打印不包含手机号、地址、受助对象姓名或内部备注,导出有独立权限和审计。
- 关联捐赠的小程序详情只展示脱敏节点、时间和粗粒度帮扶地区,不展示内部仓位、操作人或受助对象个人信息。
---
## 11. 旧物善用 Phase 3 验收
- 捐赠完成时证书、积分账户、积分流水和审计与业务状态同事务提交;同一捐赠不能重复计分或同时存在多张有效证书。
- 规则按不可变版本激活,非法占位符必须拒绝;新规则只影响未来签发,既有证书保留当时标题、正文、颁发方和法律声明快照。
- 证书只能由捐赠本人查看,其他微信用户读取相同随机公开 ID 返回不存在;管理端读取/管理要求独立权限。
- 补发会撤销旧证书并保留历史,显式撤销必须填写原因;重复请求安全重放,竞态状态变化被拒绝。
- 自动积分受品类规则和单笔上限约束;人工调整必须填写原因、校验 revision、生成只追加流水且不能产生负余额。
- 小程序明确展示积分仅为公益荣誉、不可兑换/购买/转让/提现,证书明确不是捐赠收据、税务凭证或财产权利证明。