提交 c492c379 编写于 作者: Mosher's avatar Mosher

update:更新面板支持按钮权限控制

上级 30b2892e
......@@ -8,7 +8,8 @@ new PanelFieldModel({ ${detail} })
<#elseif item.getItemType() == 'CONTROL'>
new PanelControlModel({ ${detail} })
<#elseif item.getItemType() == 'BUTTON'>
new PanelButtonModel({ ${detail} })
new PanelButtonModel({ ${detail}<#if item.getPSUIAction()??><#assign uiaction=item.getPSUIAction()>, uiaction: { type: '${uiaction.getUIActionType()}',
tag: '${uiaction.getUIActionTag()}'<#if (uiaction.getActionTarget()!="")>, actiontarget: '${uiaction.getActionTarget()}'</#if><#if uiaction.getNoPrivDisplayMode(view)??>,noprivdisplaymode:${uiaction.getNoPrivDisplayMode(view)}</#if><#if uiaction.getDataAccessAction()??>,dataaccaction:'${uiaction.getDataAccessAction()}'</#if>,visabled: true,disabled: false }</#if> })
<#elseif item.getItemType() == 'USERCONTROL'>
new PanelUserControlModel({ ${detail} })
</#if>
\ No newline at end of file
......@@ -25,6 +25,7 @@ import { PanelUserControlModel, PanelButtonModel, PanelControlModel, PanelFieldM
if(this.item){
this.data = this.item;
this.panelLogic({ name: '', newVal: null, oldVal: null });
this.computeButtonState();
return;
}
if (this.viewState) {
......@@ -160,6 +161,36 @@ import { PanelUserControlModel, PanelButtonModel, PanelControlModel, PanelFieldM
</#list>
};
/**
* 部件刷新
*
* @param {any[]} args
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
protected refresh(args: any[]): void {
this.$emit('refresh',args);
}
/**
* 计算面板按钮权限
*
* @param {any[]} args
* @memberof ${srfclassname('${ctrl.codeName}')}
*/
protected computeButtonState() {
const targetData = JSON.parse(JSON.stringify(this.data));
if(this.detailsModel && Object.keys(this.detailsModel).length >0){
Object.keys(this.detailsModel).forEach((name:any) =>{
if(this.detailsModel[name] && this.detailsModel[name].uiaction && this.detailsModel[name].uiaction.dataaccaction && Object.is(this.detailsModel[name].itemType,"BUTTON")){
let tempUIAction:any = JSON.parse(JSON.stringify(this.detailsModel[name].uiaction));
this.$viewTool.calcActionItemAuthState(targetData,[tempUIAction], this.deUIService);
this.detailsModel[name].visible = tempUIAction.visabled;
this.detailsModel[name].disabled = tempUIAction.disabled;
}
})
}
}
<#ibizinclude>
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
</#ibizinclude>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册