zhouhao hace 7 años
padre
commit
56de2df9af

+ 34 - 0
hsweb-system/hsweb-system-organizational/hsweb-system-organizational-authorization/README.md

@@ -0,0 +1,34 @@
+# 机构权限控制
+实现基于组织机构的权限信息获取,以及数据权限控制
+
+### 获取当前用户对应的人员信息
+
+```java
+   PersonnelAuthorization person= PersonnelAuthorization.current().orElse(null);
+    
+    //人员基本信息
+   person.getPersonnel();
+   //人员的全部职位信息
+   person.getPositions();
+   //人员的关系信息,用于判断人与人,人与物的关系
+   person.getRelations();
+   //更多方法请查看源代码
+```
+
+### 数据权限控制
+
+约定:
+1. 通过在方法上注解: `@Authorize(dataAccess=@RequiresDataAccess)` 开启数据权限控制
+2. 分页查询: 仅支持使用通用查询条件(`@QueryParamEntity`)作为参数的方法.
+3. 根据主键,修改,删除: 仅支持实现`QueryController`的类
+4. 对`行政区划`进行权限控制的实体需实现接口: `DistrictAttachEntity`
+5. 对`机构`进行权限控制的实体需实现接口: `OrgAttachEntity`
+6. 对`部门`进行权限控制的实体需实现接口: `DepartmentAttachEntity`
+7. 对`岗位`进行权限控制的实体需实现接口: `PositionAttachEntity`
+8. 对`人员`进行权限控制的实体需实现接口: `PersonAttachEntity`
+注意,具体的控制规则配置是由`hsweb-system-authorization`模块实现
+
+### 自定义控制
+
+你可以参照包`org.hswebframework.web.organizational.authorization.simple.handler`中的实现
+进行自定义控制