根据我司的商业定位,设计一套平台化的C用户体系,要求能满足以下条件:
- 所有C用户在斑马平台下有且只有唯一的用户编号;
- 所有C用户在家政公司下有不同的用户资料,但基于条件1,需实现各家政公司下的免登录下单。
通过研究有赞的用户体系,决定借鉴其部分实现方式,即以平台公众号的openid/unionid为线,完成平台化用户的打通。
再通过研究微信公众平台的接口资料,得出以下信息:
- 一个C用户在任一APP_公众号_小程序下的openid是不同的,但当同一家公司的公众号/小程序绑定至开放平台下时,C用户在这家公司下的unionid是唯一的;
- 通过网页授权形式,可以获取到C用户在任一微信公众号下的openid,因此可以通过两次回调的方式,获取到C用户在平台公众号和家政公司公众号下的openid。
基于此,可设计用户体系如下图所示:
为简化接口,可不做已有用户手机号_平台openid_家政公司openid的绑定,因此只需以下三个接口:
- 通过家政公司openid/unionid判断是否存在用户编号;
- 通过平台openid判断是否存在用户编号;
- 条件1和2均为否时,创建新用户编号。
以上,即是本次C用户体系改造的设计过程。