B2B多商铺初期权限数据库设计

项目从无到有,两个月了。一期完成。运维

权限目前还很简单。USER表,ROLE表,RESOURCE表三个。设计

目前只有两个商铺。id是0的是咱们本身,做为后台运维管理,也抽象成一个商铺,id为0。另外一个商铺id为1,是咱们第一家用户。code

 

USER表有merchantId和type字段。merchantId表示这个User属于哪一个商品。type字段表示用户类型。目前没什么用,由于merchantId就能区分,是商铺后台管理人员,仍是咱们本身的后天运维人员。之后若是商铺的销售员,配送员,这些身份的员工要登陆后台的话,这个字段会有用,做为预留字段。资源

一个USER能够有多个ROLE。登录

ROLE表也有merchantId和type字段。同USER。一个ROLE能够访问多个RESOURCE。后台

RESOURCE表有type字段。表示这个RESOURCE是属于运维使用,仍是商铺使用。权限

预置数据:数据

全部RESOURCE资源.包括一个特殊资源'admin'。表示只有管理员才能有资格访问的资源。用在分配权限操做上。项目

一个ROLE,code是admin。不属于任何商铺.merchantId为空。拥有RESOURCE:admin权限(这个权限不公布到界面上来进行选择)。ant

两个USER。一个是咱们运维的admin,merchatId是0,一个是第一家商铺的admin,merchantId是1。他们都拥有那个预置Role的角色。

这样设计的好处,就是运维的admin和商铺的admin逻辑同样了。都只有一个分配权限的小权限范围。系统初始化后,在登陆页面登陆须要选择是运维仍是商铺。各自有本身的User和admin。用各自的admin登陆进去,就只有一个权限管理菜单。以后在新增User,分配其余业务权限。这样作就统一了。

相关文章
相关标签/搜索