1、首先去功能注册那里找到需要添加按钮的节点所应的xml文件。
2、在xml注册按钮的动作类名,如图下:
3、在需要显示的列表或卡片区域中注册按钮动作,如图下:
4、在client包新建按钮动作的类文件,如图下:
5、重启client端就能看到所注册的按钮了,如图下:
6、前端刷新方法:
//刷新卡片数据
AbstractBill oldVO = (AbstractBill)obj;
String pk = oldVO.getParentVO().getPrimaryKey();
IBillQueryService billQuery = (IBillQueryService)NCLocator.getInstance().lookup(IBillQueryService.class);
AbstractBill abstractBill = billQuery.querySingleBillByPk(oldVO.getClass(), pk);
if (abstractBill == null)
{
throw new BusinessException(NCLangRes.getInstance().getStrByID(“uif2”, “RefreshSingleAction-000000”));
}
this.model.directlyUpdate(abstractBill);
7、按钮动作完成的提示语
showQueryInfo();
protected void showQueryInfo() { /*ShowStatusBarMsgUtil.showStatusBarMsg(NCLangRes4VoTransl.getNCLangRes().getStrByID(“pubapp_0”, “0pubapp-0267”), getModel().getContext()); */
ShowStatusBarMsgUtil.showStatusBarMsg(“调整成功。”, getModel().getContext());
}
8、根据实际情况设置按钮置不置灰,如下图:
protected boolean isActionEnable() {
AggBudgetcommreplyVO vo = (AggBudgetcommreplyVO) getModel().getSelectedData();
if (null == vo) {
return false;
}
Integer taskstatus = vo.getParentVO().getTaskstatus();
Integer approvestatus = vo.getParentVO().getApprovestatus();
if (approvestatus != null && BillStatusEnum.APPROVED.toIntValue() == approvestatus)// 审批
{
if (TaskstageEnum.OneUp.toIntValue() == taskstatus || TaskstageEnum.TwoUp.toIntValue() == taskstatus) {
return true;
}
}
return false;
}