现有的SAAS系统中,一般以手机号为登录名。而某些租户会有一些个性化需求,比如需要增加“工号”也作为登录名可以在SAAS系统中登录。
在处理这种需求中,要理清楚几方面的逻辑。首先这个需求的前提是:一个租户内,同一个账户仅对应一个手机号和一个工号,这个手机和工号是唯一的。举例:a用户的手机号是a1,工号是b1。现在新建一个账户z,手机号是a2,工号填成a用户的b1,这时候,系统是不允许创建的。
一、工号登录和手机号登录的关系
1、二者是并行关系。二者都是登录名,工号为非必填项,手机号是必填项。如果用户信息有工号信息,则该工号可用作用户的登录名登录,登录密码保持原密码;若该用户信息无工号信息,则用户登录仅支持手机号登录。
2、二者的对应的密码,是一致的。无论是以工号登录还是以手机号登录,在重置密码、修改密码时,均是一改俱改。
二、工号登录名和租户中的账户关系
由于在我们SAAS系统中,一个租户内允许一个手机号在不同部门创建多个账户。因而,工号也同理。
但是他们在不同部门的账户工号登录名和密码都是相同的。
三、工号字段的定义
1、工号由什么组成,文字、数字、字母之类。
2、工号的字符限制。
四、工号在系统中的增删改查
在增删改查的过程中,永远要遵循一个原则,删、改的时候,要一改俱改。举例:如果一个工号对应租户内多个部门下的多个账户,那么在其中一个账户内修改、删除工号,其他部门下的账户也要对应进行修改、删除。
五、备选流程
当a账户的工号和b账户的手机号一致,登录时如何判断,应该登录哪个账户?这是在需求评审时,被测试主管提出的灵魂质疑。我整个人就懵逼状态,这种小概率事件,虽然出现的概率极低,但是还是要补充这种场景的设计。于是,我增加了一条:当系统判断出工号和手机号一致,则弹窗提示:选择登录方式。