帐号升级技术方案

1.需求介绍

为了方便用户在美甲帮、店务通、微店等多个平台能统一管理账户,现账号升级,用户的店务通账号统一升级为美甲帮账号。可以使用两套用户管理模块,但是这种方式用户体系依旧是分离的,维护成本也比较高,因此采用使用同一个用户体系,方便用户管理。升级后登录、注册、修改手机号或密码等用户相关操作全部调用美甲帮接口,实现店务通和美甲帮等用户数据共享。

2.产品方案概述

升级本质就是店务通用户ID和美甲帮用户ID绑定,废弃掉店务通账号密码,统一使用美甲帮账号密码的过程。账号升级实现以下功能

1.使美甲帮用户可以直接登录店务通,开店或绑定店铺,无需另外注册店务通。

2.原店务通用户升级到美甲帮账号,废弃掉原来的店务通账号密码。

3.升级完的用户手机号、密码等信息,在任意其中一个app做变更,在另一个app生效。

3.技术方案概述

升级原则:

1.店务通与美甲帮手机号匹配的情况,必须匹配升级,即匹配的店务通账号只能绑定匹配到的美甲帮账号,匹配的美甲帮账号也只能绑定匹配到的店务通账号。

2.店务通与美甲帮手机号不匹配的情况,只能绑定没有升级过且不存在匹配账号的账号,即店务通登录未匹配到美甲帮手机号,那么只能绑定没有绑定过的美甲帮账号,且该美甲帮账号在店务通没有匹      配的手机号。

3.凡新用户注册,直接注册美甲帮,在开店或者绑店的过程中,创建店务通记录,直接标记为已升级。

五种升级方式

1.使用美甲帮手机号登录后升级

技术方案:店务通登录用户,或这美甲帮登录匹配用户,通过输入美甲帮的手机号和密码进行升级。因为是店务通和美甲帮账号匹配的情况下是不可以绑定别的手机号的,所以流程中进行了绑定校验。

2.使用美甲帮第三方登录后升级 

技术方案:店务通登录用户,或这美甲帮登录匹配用户,通过第三方授权登录美甲帮。如果第三方登录美甲帮成功,但是没有手机号,则用店务通账号密码自动注册美甲帮账号,以此绑定第三方;如果失败直接返回错误信息。

3.美甲帮登录绑定店务通升级

技术方案:使用店务通手机号密码登录验证,成功后升级。在此过程中需要校验该店务通账号是否可以匹配到美甲帮用户,如果匹配到是不允许通过该方式升级的。

扫描二维码关注公众号,回复: 2247202 查看本文章

4.使用店务通手机号在美甲帮自动创建新账号后升级

技术方案:调用美甲帮创建用户接口来注册美甲帮用户。此时需要客户端重新传店务通的密码,因为店务通数据库中的密码经过加码不可用,所以不可以直接只用。

5.通过店务通注册美甲帮用户,开店或者绑店升级

技术方案: 用户在店务通注册,直接调用美甲帮用户注册接口。此时并没有产生一条店务通的用户记录,只有在开店或者绑店过程中,才会创建一条店务通用户记录,将该用户标记为已升级,注册来源为美甲帮。

发送验证码修改密码和手机号接口的设计

涉及到的场景

1.非登录态找回密码

因为用户要找回的密码的账号可能是店务通账号也可能是美甲帮账号,设计采用是店务通账号优先发送店务通的验证码,非店务通账号再调用美甲帮发送验证码的接口。同理验证验证码流程和重置密码流程也是与之对应的。

2.非登录态注册用户

用户通过店务通注册,实际则是注册的美甲帮用户,所以应该发送美甲帮的验证码,同理验证验证码和注册流程也是与之对应的。

3.登录态时

因为登录态时,升级页面有找回密码的入口,而升级页面又分为两类即找回店务通密码和找回美甲帮密码;app重置密码,此时用户已升级,应该直接调用美甲帮发送验证码接口。

抽象的三个接口

1.不指定验证码发送校验方

使用情况:用于非登录态找回密码流程。

技术方案:如果是店务通手机号则调用店务通发送验证码模块,否则调用美甲帮发送验证码模块

2.指定美甲帮发送验证码

用于非登录态注册发送验证码,登录态绑定美甲帮升级页面找回密码时发送验证码,升级后发送验证码的情况

3.指定店务通发送并校验验证码

用于登录态绑定店务通升级页面找回密码时发送验证码

时序图

店务通客户端-店务通后台-美甲帮账号中心之间的交互如图:

4.关键业务流程设计

注册:

技术方案,账号打通之后用户无需再在美甲帮注册。直接注册美甲帮即可。

注意,新用户第三方登录需要用手机号注册也走这个流程,为了绑定第三方和手机号需要,QQ登录需要客户端再传accessToken和openId,微信再传code(因为code只能用一次,所以这里accessToken和openId做了缓存。)

手机号登录

技术方案:现校验是否是店务通账号,是则走店务通登录模块,不是走美甲帮登录模块。

注意:如果是店务通账号,但是登录不成功,会再调用美甲帮登录模块,因为用户可能在两个app用都是相同都手机号,但是不同都密码。

第三方登录

技术方案:直接调用美甲帮第三方登录接口即可。

注意:第三方登录失败返回错误码20215 为需要注册手机号,需客户端判断

           登录成功返回手机号,手机若为空则需要注册,需客户端判断

通过token获取用户详情

技术方案:店务通token和美甲帮token格式不同,所以区分不同都token调用不同的模块---店务通或者美甲帮。

注意,通过美甲帮token获取用户信息,如果店务通有mjb_uid对应的升级账号直接返回,否则如果店务通有美甲帮手机号对应的用户,直接返回,否则将uid置为0,表示美甲帮用户在店务通没有匹配到账号。

使用美甲帮手机号登录后升级

技术方案:店务通登录用户,或这美甲帮登录匹配用户,通过输入美甲帮的手机号和密码进行升级。

注意:因为是店务通和美甲帮账号匹配的情况下是不可以绑定别的手机号的,所以流程中进行了绑定校验。

使用美甲帮第三方登录后升级 

技术方案:店务通登录用户,或这美甲帮登录匹配用户,通过第三方授权登录美甲帮。

注意:如果第三方登录美甲帮成功,但是没有手机号,则用店务通账号密码自动注册美甲帮账号,以此绑定第三方;如果第三方登录返回错误信息需要手机号注册,同样使用店务通账号密码自动注册美甲帮账号来绑定第三方。

 

美甲帮登录绑定店务通升级

技术方案:使用店务通手机号密码登录验证,成功后升级

使用店务通手机号在美甲帮自动创建新账号后升级

技术方案:调用美甲帮创建用户接口来注册美甲帮用户。

注意:此时需要客户端重新传店务通的密码,因为店务通数据库中的密码经过加码不可用,所以不可以直接只用。

猜你喜欢

转载自www.cnblogs.com/xiangtingsulinlin/p/9337274.html