Skip to content

小程序个人记账 — 用户范围与 openid

与仓库 Cursor 规则 .cursor/rules/miniapp-bookkeeping-user-scope.mdc 一致(改代码以规则为准)。开发索引见根目录 AGENTS.md

产品约束(勿回退)

  1. 进入小程序(微信)wx.login → openid → loginByOpenid 换 JWT;不要求手机号/账号密码。
  2. 首页「常用」记账入口(记一笔、账本管理、周/月/年/自定义统计):不得因未绑定手机/邮箱拦截;不得在无 JWT 时 reLaunch 到登录页。
  3. 数据范围:仅 JWT sub(用户主键);禁止 X-Site-IdsiteIdassertSiteScope 参与 pages/bookkeeping/**POST /sys/bookkeeping/*

实现要点

位置
会话miniapp/src/utils/bookkeeping-session.ts
首页入口pages/index/index.vueensureBookkeepingSession
请求头postApiShouldAttachSiteHeader/sys/bookkeeping/ 不附站点头
手机门闸credential-gate.tsisBookkeepingPath 豁免
401/过期微信端回首页换 openid,非账号登录页

页面路径

  • /pages/bookkeeping/homemode=record|manage
  • ledger-selectledger-settingsledger-detailamount-inputentry-form
  • statsstats-custom
  • 预算:账本设置页设置;POST /sys/bookkeeping/budget/*
  • 周期账:/pages/bookkeeping/recurring-rulesPOST /sys/bookkeeping/recurring/*;首页 onShow 调 apply-due
  • 工资发放同步:站点结算 mark-paid 后自动记收入/支出,见 bookkeeping-settlement-paid-sync.md

与其它功能区分

工人记工、入库、Acc 站点业务仍按站点与 RBAC;勿把 useMiniappPageGate / 站点逻辑套在 bookkeeping 上。

TaskFlow 内部文档 Released under the MIT License.