提交 413ab7b0 编写于 作者: O o2sword

修复内容管理打开文档校验权限错误的问题

上级 f0914ac2
......@@ -156,12 +156,6 @@ public class ActionQueryViewDocument extends BaseAction {
}
}
check = this.hasReadPermission(business, document, null, null, effectivePerson, null);
if(!check){
throw new ExceptionAccessDenied(effectivePerson, document);
}
if (check) {
try {
appInfo = appInfoServiceAdv.get( document.getAppId() );
......@@ -337,6 +331,14 @@ public class ActionQueryViewDocument extends BaseAction {
}
}
if(!isEditor) {
check = this.hasReadPermission(business, document, unitNames, groupNames, effectivePerson, null);
if (!check) {
throw new ExceptionAccessDenied(effectivePerson, document);
}
}
wo.setIsManager( isManager );
wo.setIsAppAdmin( isAppAdmin );
wo.setIsCategoryAdmin( isCategoryAdmin );
......
......@@ -214,6 +214,10 @@ public class BaseAction extends StandardJaxrsAction {
}
protected boolean hasReadPermission(Business business, Document document, List<String> unitNames, List<String> groupNames, EffectivePerson effectivePerson, String queryPerson) throws Exception{
if("数据".equals(document.getDocumentType())){
return true;
}
String personName = effectivePerson.getDistinguishedName();
if(effectivePerson.isManager()){
if(StringUtils.isNotEmpty(queryPerson)){
......@@ -227,6 +231,13 @@ public class BaseAction extends StandardJaxrsAction {
return true;
}
}
if(ListTools.isEmpty(document.getReadPersonList())
&& ListTools.isEmpty(document.getReadUnitList())
&& ListTools.isEmpty(document.getReadGroupList())){
return true;
}
//是否是读者
if(ListTools.contains(document.getReadPersonList(), getShortTargetFlag(personName)) ||
ListTools.contains(document.getReadPersonList(), "所有人")){
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册