单据体根据条件隐藏操作列某一个操作项原创
10人赞赏了该文章
1,712次浏览
编辑于2022年02月19日 18:13:10
1.首先在单据体中添加操作列控件配置操作项【修改】【删除】
2.编写页面插件类,实现其中的initialize()方法 根据操作项的标识和需要的条件去判断操作项的隐藏
操作项的标识是通过操作项配置时获取的。
public class OperationColitemsPlugin extends AbstractFormPlugin{ @Override public void initialize() { super.initialize(); EntryGrid entryGrid=this.getControl("kdec_entryentity"); entryGrid.addPackageDataListener(pkEvent -> { Object str = pkEvent.getRowData().get("model"); //获取了规格型号 if (pkEvent.getSource() instanceof OperationColumn && "kdec_operationcolumnap".equalsIgnoreCase(((OperationColumn) pkEvent.getSource()).getKey())) { List<OperationColItem> operationColItems = (List<OperationColItem>) pkEvent.getFormatValue(); for (OperationColItem operationColItem : operationColItems) { if ("delete".equalsIgnoreCase(operationColItem.getOperationKey()) && str.toString().equals("44452322222")) { //匹配操作项的标识跟规格型号 operationColItem.setVisible(false); operationColItem.setLocked(true); } } } }); } }
3.最终达到的效果
推荐阅读