要实现的目标
关于文件资源分组授权显示给不同分组的人员查看的实现
人员的分组,像微信里的标签一样,可以分为家人、朋友、客户等。
然后文件可以允许某一个或者多个分组查看,就是朋友圈的那种查看机制。
还有一个自己提交的文件自己能查看。
没有设置标签限制的,就是完全公开,所有人都能看。
需要涉及到的表
文件资源表sls_resource
字段名 |
物理字段 |
文件id |
file_id |
文件资源 |
url |
文件上传人 |
create_by |
分组表sys_post
字段名 |
物理字段 |
Post_id |
id |
分组名称 |
post_name |
文件授权分组表sys_file_post
字段名 |
物理字段 |
文件id |
file_id |
分组id |
post_id |
人员分组表sys_user_post
字段名 |
物理字段 |
用户id |
user_id |
分组id |
post_id |
实现思路
- 有标签的文件,需要和有标签的用户匹配上才允许看,用左连接实现
- 无标签的用户,只能看无标签的文件和自己上传的所有文件
实际代码
这个方法实现了这个场景的应用。 相信应该还有更好的办法来实现。 所以发这里抛砖引玉。