【BOS基础系统_权限】EAS按钮事件验权代码调试案例分享

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

【BOS基础系统_权限】EAS按钮事件验权代码调试案例分享

背景:越秀提单 R20210309-2197,某用户在当前登录组织A下对 某通知单 点 生成凭证,提示该用户 没有组织B的 通知单生成凭证 的业务权限

image.webp


按钮事件验权流程:


com.kingdee.bos.ctrl.swing.KDWorkButton.fireActionPerformed(ActionEvent)


com.kingdee.bos.appframework.client.servicebinding.ActionProxy.actionPerformed(ActionEvent)


com.kingdee.bos.appframework.client.servicebinding.ActionProxy.actionPerformedInvoke(ActionParams)


com.kingdee.bos.appframework.client.servicebinding.ActionProxy.beforeAction()


com.kingdee.eas.framework.client.service.PermissionService.beforeActionPerformed(Map)


com.kingdee.eas.framework.client.service.PermissionService.handlePermissionForItemAction(IItemAction)


com.kingdee.eas.base.permission.client.util.PermissionHelper.checkFunctionPermission(IObjectPK, IObjectPK, IMetaDataPK, ItemAction, String, boolean, Map)

...



框架初始化上下文uiContext对象中orgPk的流程:


业务继承com.kingdee.eas.framework.client.ListUI 可能重写initMainBizOrg方法,导致最终uiContext中的org非当前登录组织

如:

com.kingdee.eas.fi.gl.cslacct.client.RequisitionListUI.initMainBizOrg(List)


com.kingdee.eas.framework.client.ListUI.initMainBizOrg(List)


com.kingdee.eas.framework.client.CoreUI.initUIMainOrgContext(String)

(getUIContext().put(this.getMainBizOrgType(),FrameWorkUtils.getCurrentOrgUnit(mainOrgContext,getMainBizOrgType()));)


com.kingdee.bos.ui.face.BOSUIContext.put(Object, Object)


【BOS基础系统_权限】EAS按钮事件验权代码调试案例分享

背景:越秀提单 R20210309-2197,某用户在当前登录组织A下对 某通知单 点 生成凭证,提示该用户 没有组织B的 通知单生成凭证 的业务...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息