TC判断用户对某个对象是否有更改的权限
作者:互联网
/** * 获取是否有更改的权限 * @return */ public String getCanChangeString(){ String type=""; String property=""; try { type = target.getProperty("object_type"); property = target.getProperty("object_string"); } catch (Exception e) { e.printStackTrace(); } String msg="对"+type+" "+property+"没有更改的权限\n"; com.teamcenter.services.rac.administration._2010_04.IRM.ACLInfo aaclinfo[] = getAclInfos(); if(null!=aaclinfo){ int i = aaclinfo.length; for (int j = 0; j < i; j++) { //允许的操作 com.teamcenter.services.rac.administration._2010_04.IRM.DisplayNameInfo adisplaynameinfo[] = aaclinfo[j].grantedPrivsInfo; //不允许的操作 com.teamcenter.services.rac.administration._2010_04.IRM.DisplayNameInfo adisplaynameinfo1[] = aaclinfo[j].revokedPrivsInfo; for (int k = 0; k < adisplaynameinfo1.length; k++){ if("CHANGE".equals(adisplaynameinfo1[k].internalName)){ return msg; } ; } for (int k = 0; k < adisplaynameinfo.length; k++) { if("CHANGE".equals(adisplaynameinfo[k].internalName)){ return "yes"; } } } } return msg; }
/** * 通过IRMService获取该对象的ACLInfo * @return */ private com.teamcenter.services.rac.administration._2010_04.IRM.ACLInfo[] getAclInfos() { if (target == null) { return null; } else { TCComponent atccomponent[] = new TCComponent[1]; atccomponent[0] = (TCComponent) target; com.teamcenter.services.rac.administration._2010_04.IRM.ACLInfoResponse aclinforesponse = irms.getEffectiveACLInfo2(atccomponent); com.teamcenter.services.rac.administration._2010_04.IRM.ACLInfos aaclinfos[] = aclinforesponse.aclInfosList; com.teamcenter.services.rac.administration._2010_04.IRM.ACLInfos aclinfos = aaclinfos[0]; com.teamcenter.services.rac.administration._2010_04.IRM.ACLInfo aaclinfo[] = aclinfos.aclInfos; return aaclinfo; } }
标签:rac,04,更改,administration,teamcenter,IRM,._,权限,TC 来源: https://www.cnblogs.com/wwssgg/p/16625023.html