hincky的主页 hincky的主页
  • 经营主体

    • 个体户
    • 小规模公司
  • 线上准备

    • 小程序
    • 图钉
  • 线下门店

    • 门面装修
  • 分类
  • 标签
  • 归档
  • 随笔
GitHub (opens new window)

Hincky

当有趣的人,做想做的事
  • 经营主体

    • 个体户
    • 小规模公司
  • 线上准备

    • 小程序
    • 图钉
  • 线下门店

    • 门面装修
  • 分类
  • 标签
  • 归档
  • 随笔
GitHub (opens new window)
  • 营业执照

  • 个体户

  • 小规模公司

  • 小程序

    • 需求分析

      • 订单生成方式说明
        • 订单构成
        • 销售代下单
          • 场景一
        • 顾客下单
          • 场景一
          • 场景二
      • CMS商品上架需求说明
        • 具体分类
      • CMS功能说明
        • cms系统
          • 用户权限管理
          • 界面排版
        • 活动促销
        • 接口规范
      • CRM系统功能说明
        • CRM系统
          • 首页
          • 商品统计
          • 用户统计
          • 交易统计
      • 数据流程图
        • 数据流程图
      • 用户故事地图
        • 用户故事图
      • 用户表设计
        • 用户表设计
          • 基本设计
          • 数据库表设计
        • 第三方授权登录
          • 微信登录
      • 产品活动分类
        • 热卖产品
        • 组合套餐产品
        • 特卖(清货)产品
      • 订单列表设计
        • 用户订单列表
        • 订单后台
        • 待配送订单
      • 操作审计功能
        • 权限问题
      • 人员角色设计
        • 审计管理员
        • 系统管理员
        • 销售人员
        • 配送人员
      • 优惠券以及推荐设计
        • 优惠券设计
        • 推荐设计
        • 产品利润点设计
      • 促销活动设计
        • 盛大试业
        • 欢度国庆
        • 盛大开业
        • 喜迎新春
      • 支付功能设计
        • 用户加购完的付款方式
          • 线上支付
          • 货到付款
      • 产品图片图床设计
        • PicGo
        • 对象存储
        • 分类目/品牌上传
    • 原型设计

    • 系统设计

    • 编码实现

    • 测试调试

    • 部署上线

  • 会计

  • 门面装修

  • Go

  • setup思路

  • 图钉

  • 技术相关计划
    • 小程序
      • 名字
    • 计划完成的系统
    • 怎么去了解一个行业
  • MySQL数据库

  • 前期准备
  • 小程序
  • 需求分析
hincky
2023-05-02
目录

用户表设计

  • 用户表设计
    • 基本设计
    • 数据库表设计
  • 第三方授权登录
    • 微信登录

# 用户表设计

用户表结构的设计,算是整个应用架构的基石。

需求分析:

  1. 多种登录方式:包括手机号、微信、QQ、微博等;
  2. 可进行绑定和解绑或者更换绑定:用户使用任意方式登录后可绑定和解绑或者更换绑定其他 登录授权;
  3. 支持 unionid(针对 QQ / 微信等):如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的 unionid 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号,用户的 unionid 是唯一的。

使用场景一

先使用手机号注册,之后绑定微信、微博、QQ 等第三方账号; 注册成功后 users 表: 用户昵称及头像可在注册时要求添加也可自动生成。 之后根据用户 id 绑定 / 解绑 / 更换绑定相应第三方账号 QQ、微博、微信等账号

使用场景二

先使用微信、微博、QQ 等第三方账号注册,之后再绑定手机及其他未绑定第三方账号; 以微信登录为例,第一次绑定成功后,users 和 oauths。 通过第三方授权获取的用户信息 (昵称、头像) 创建 users 数据:

根据用户 ID 及第三方授权获得的信息创建 oauths 数据

其中微信登录可分为 wechat 微信移动应用,official_account 微信公众账号,mini_program 微信小程序,同一主体的情况下 unionid 是一致的。

之后再根据用户 ID 绑定手机及其他未绑定第三方账号。

# 基本设计

(用户基本表+用户授权信息表)

用户基本表(user_bases):只存基准数据,不做登录相关的处理

用户授权信息表(user_oauths):存放授权信息(手机/邮箱/用户名)+(密码/access_token)

# 数据库表设计

设计参考资料一 (opens new window)

设计参考资料二 (opens new window)

user_bases:

  • base_id:int 唯一id
  • nickname:varchar 昵称
  • avatar_url:varchar 头像
  • full_name:varchar 姓名
  • position:varchar 职位
  • phone:varchar 电话
  • email:varchar 邮箱
  • birthday:date 生日
  • default_address:varchar 默认地址
  • last_signin:timestamp 上一次登录时间
  • last_identity_type:varchar 上一次登录类型
  • (扩展字段a)extend_field_a:varchar
  • (扩展字段b)extend_field_b:varchar

user_oauths:

  • oauth_id:int 唯一id
  • identity_type:varchar 登录类型 (手机号/邮箱/用户名) 或第三方应用名称 (微信 , 微博等)
  • identifier:varchar 标识 (手机号/邮箱/用户名或第三方应用的唯一标识)
  • credential:varchar 授权凭证 (站内的保存密码 , 站外的不保存或保存 token)
  • password:varchar 密码
  • (扩展字段a)extend_field_a:varchar
  • (扩展字段b)extend_field_b:varchar

user_addresses:

  • (唯一id)address_id:int
  • (收货人)receiver:varchar
  • (手机号码)phone:varchar
  • (所在地区)area:varchar
  • (详细地址)full_address:varchar
  • (标签)tag:varchar
  • (扩展字段a)extend_field_a:varchar
  • (扩展字段b)extend_field_b:varchar

系统具体表结构参考数据库表设计 (opens new window)

# 第三方授权登录

# 微信登录

微信手机号并登录 (opens new window)

编辑 (opens new window)
用户故事地图
产品活动分类

← 用户故事地图 产品活动分类→

最近更新
01
图钉设计思路
06-04
02
开始之前
05-17
03
产品图片图床设计
05-17
更多文章>
Theme by Vdoing | Copyright © 2022-2023 Hincky | MIT License | 粤ICP备2022120427号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式