这些问题表面上像权限或登录故障,根源往往更早:小程序开发时只设计了“怎么登录”,却没有设计“这个人到底是谁”。
对于准备长期运营的企业微信小程序,用户身份体系应该在功能开发之前确定。登录只是入口,身份才决定后面的客户数据、订单、权限、消息、售后记录和业务关系怎样归属。
微信昵称和手机号,都不应该直接等于一个人的永久身份
最容易出现的问题,是第一期为了快速上线,把手机号直接当成用户唯一标识。
刚开始可能完全正常:用户输入手机号,后台根据手机号查询订单。可一旦用户更换号码,原来的订单、积分、售后记录怎么办?如果旧手机号被运营商重新分配,新用户有没有可能看到原用户的数据?
微信本身的用户标识也存在类似问题。微信身份可以帮助系统识别当前登录者,但企业自己的客户身份、员工身份、会员身份不能完全依赖某一个登录凭证。
更合理的设计通常是把几个概念分开:
用户是谁;
他现在使用什么方式登录;
他在企业业务里是什么身份;
这个身份拥有哪些业务数据。
例如一个客户可以先通过微信进入系统,再绑定手机号;以后手机号变化,只修改绑定关系,不应该重新生成一个完全独立的客户。这样历史订单、积分和服务记录依然属于同一个人。
这看起来只是后台多了一层关系,但它决定了小程序以后增加会员、订单、售后甚至多个业务入口时,会不会出现数据割裂。
一个微信用户,完全可能同时拥有两种甚至三种身份
企业小程序里最容易被低估的情况,不是“有多少用户”,而是一个用户可能扮演多少角色。
例如一家制造企业的小程序里,某个人可能同时是:
普通产品查询用户;
经销商;
售后联系人;
企业内部员工。
如果系统简单地把用户分成“普通用户”和“管理员”,后面很快就会遇到麻烦。
经销商能够看到自己的采购资料,但不应该看到其他经销商数据;内部业务员可能负责多个经销商,却不应该拥有系统最高权限;某个员工同时是公司产品的普通客户,他的个人订单和工作账号又不能混在一起。
所以身份体系设计的重点,不是提前建立几十种角色,而是先确定:
一个账号能不能同时拥有多个身份,这些身份之间的数据是否隔离,用户如何切换,后台怎样识别当前操作到底属于哪一种身份。
如果第一期没有留下这种结构,后面增加经销商、员工端或会员体系时,常见结果就是在原程序上不断增加“特殊判断”。功能越加越多,系统逻辑反而越来越难维护。
真正麻烦的不是注册,而是身份发生变化以后怎么办
很多需求文档会详细写“用户如何注册”,却很少有人认真写“用户身份如何退出”。
实际上,企业微信小程序长期运行以后,最应该提前考虑的是身份生命周期。
比如:
员工离职以后,是删除账号还是冻结员工身份?
如果直接删除,他过去处理的工单和审批记录是否还需要保留?
经销商终止合作以后,原来的订单还能不能查看?
客户更换手机号码以后,怎样证明新号码仍然属于原来的客户?
一个员工调到另一个部门以后,旧权限什么时候失效?
管理员误绑身份以后,后台有没有解除和重新绑定的方法?
成熟的身份体系并不是把人删掉,而是让“人、身份、权限和历史数据”分别存在。
员工可以失去“在职员工”身份,但他过去处理过的业务记录仍然应该保留;经销商停止合作以后可以失去新增订单权限,但企业未必应该直接删除历史交易数据。
这也是为什么身份设计和权限设计不能完全混为一谈。
身份回答的是:
“你是谁?”
权限回答的是:
“你现在可以做什么?”
数据关系回答的是:
“哪些记录属于你?”
三者如果第一期全部塞进一个用户表,随着业务增长,后期修改成本通常会越来越高。
小程序第一期功能不多,更应该把身份基础做对
有些企业会认为:“现在就几十个用户,没必要设计这么复杂。”
真正需要区分的是“结构清楚”和“功能复杂”。
第一期完全没有必要做一套庞大的账号中心,但至少应该把未来最难修改的基础关系考虑清楚:
用户主体不要直接等于手机号;登录方式与业务身份分离;一个用户是否允许多个角色提前确定;身份变化不能破坏历史数据;关键业务记录应该拥有稳定的数据归属。
这些设计在第一期增加的开发量可能并不大,却可以避免未来增加会员、售后、经销商、员工管理时重新整理全部用户数据。
反过来,如果第一期为了省事,把微信账号、手机号、客户编号、员工编号全部认为是“同一个东西”,后面再拆分就会涉及历史数据迁移、账号重新绑定和大量业务逻辑修改。
身份体系最有价值的地方,就是在用户还不多的时候建立正确关系,而不是等数据已经积累几年以后再返工。
南京安优网络科技有限公司在微信小程序定制项目中,遇到涉及客户、会员、员工、经销商或多角色业务时,更需要在前期需求阶段先梳理用户身份与业务数据之间的关系,再继续设计后台权限和具体功能。对于这类项目,真正需要开发的并不只是一个“登录页面”,而是一套未来能够继续承载订单、服务、权限和业务扩展的用户基础。
判断一个企业小程序有没有必要提前设计身份体系,其实可以用一个很简单的问题:
“同一个人两年以后换手机号、换岗位或者增加另一种业务身份,原来的数据还能不能正确找到他?”
如果答案现在还不明确,说明身份体系就值得在开发之前重新梳理。
上一篇:企业做产品查询微信小程序,产品太多怎么让客户快速找到?
下一篇:没有了
