我们公司有1万多个网点,每个网点都可以看成是一个公司,公司对不同的网点有不同的策略,商业逻辑,每个网点的人员也都是在不断变化,全国有接近10万从业人员,当我们设计好业务逻辑程序后,不可能因为这些人员的变动,每天都调整角色成员,那不现实。
由于网点繁多,从业人员繁多,那系统权限判断只有适应公司的各种变态需求才可以,所以权限组件也进行了调整,可以把一个公司、网点加入到某个角色里,这样只要把网点加入到角色里,然后网点里的人员如何变化都没关系了,都可以适应业务逻辑。
以不变应万变,才是成熟的组件、能满足各种变态需求,才是好产品,才是经得起折腾的成熟稳定的组件。
// 采用角色组织关联关系
BaseSystemInfo.UseRoleOrganize = true;
// 包括网点角色的,判断用户是否在某个角色里的函数
BaseUserManager.IsInRole(BaseUserInfo userInfo, string roleName)
BaseUserManager.IsInRoleByCode(BaseUserInfo userInfo, string code)
这样有个强大的组件、写程序就可以安心写业务逻辑了,不用为基础功能操心太多了,只要有需求提出来,我们都可以满足,只要你的需求是合理的,不是扭曲的。人的精力有限,不要把生命浪费在重复建设上,把有限的时间话费在最有价值的创造性的工作上就可以了。