Files
Web_BAI_Manage_ApiServer/docs/pb_tbl_cart.md
XuJiacheng 91fcdcd65a feat: 添加购物车与订单管理页面及相关API支持
- 新增购物车与订单管理页面,包含用户列表、购物车详情和订单记录展示功能。
- 实现用户搜索、刷新、重置和退出登录功能。
- 新增购物车和订单数据表结构初始化脚本,包含字段、索引及权限规则设置。
- 实现数据表的创建与更新逻辑,并进行结构校验。
2026-04-03 10:50:31 +08:00

3.0 KiB
Raw Permalink Blame History

pb_tbl_cart

来源:购物车表需求草图、script/pocketbase.cart-order.js 类型:base 读写规则:微信端原生访问建议仅允许记录所有者访问;当前脚本已按 cart_owner = 当前 token 对应 openid 配置原生 collection 规则,管理后台建议通过 hooks / API 聚合查询

表用途

用于存储购物车商品项明细。

当前结构按“一个购物车商品项一条记录”设计:

  • cart_id 是单条购物车项业务 ID
  • cart_number 是购物车名称 / 分组号,同一购物车下的多条商品项可共用同一个 cart_number
  • cart_owner 用于标识购物车所属用户

字段清单

字段名 类型 必填 说明
id text PocketBase 记录主键
cart_id text 购物车项业务 ID唯一标识
cart_number text 购物车名称 / 分组号,默认可按“用户名+年月日时分秒”生成
cart_create autodate 购物车项创建时间,由数据库自动生成
cart_owner text 生成者 openid约定保存 tbl_auth_users.openid
cart_product_id text 产品 ID建议保存 tbl_product_list.prod_list_id
cart_product_quantity number 产品数量,建议业务侧约束为正整数
cart_status text 购物车状态,建议值:有效 / 无效
cart_at_price number 加入购物车时的价格,用于后续降价提醒或对比
cart_remark text 备注

索引

索引名 类型 说明
idx_tbl_cart_cart_id UNIQUE INDEX 保证 cart_id 唯一
idx_tbl_cart_cart_number INDEX 加速按购物车名称 / 分组号查询
idx_tbl_cart_cart_owner INDEX 加速按所属用户查询
idx_tbl_cart_cart_product_id INDEX 加速按产品查询
idx_tbl_cart_cart_status INDEX 加速按购物车状态过滤
idx_tbl_cart_cart_create INDEX 加速按购物车项创建时间倒序查询
idx_tbl_cart_owner_number INDEX 加速同一用户下按购物车分组查询
idx_tbl_cart_owner_status INDEX 加速查询某用户的有效购物车项

补充约定

  • cart_ownercart_product_id 当前按文本字段保存业务 ID不直接建立 relation便于兼容现有 hooks 业务模型。
  • cart_owner 统一保存 tbl_auth_users.openid,便于直接使用微信登录返回 token 做原生访问控制。
  • cart_product_quantitycart_at_price 使用 number,数量正整数与价格精度建议在 hooks / API 层统一校验。
  • 当购物车被清空时,建议业务侧将历史记录 cart_status 置为 无效,而不是直接覆盖有效记录。
  • cart_create 由数据库自动写入,接口层不需要也不应允许客户端自行填值。
  • PocketBase 系统字段 createdupdated 仍然存在,只是不在 collection 字段清单里单独声明。