1.场景:针对某一个页签中的某几行不可编辑。此处针对审批确认按钮不能进行单据不让修改。
2.思路:编辑前事件会返回一个值,利用返回值来控制是否可以编辑
3.xml配置:
XML配置
<!-- 卡片表体编辑前事件-->
<bean class="nc.ui.pubapp.uif2app.event.EventHandlerGroup">
//导入表体编辑前类
<property name="event" value="nc.ui.pubapp.uif2app.event.card.CardBodyBeforeEditEvent" />
<property name="handler">
//导入自己代码类
<bean class="nc.ui.pu.metsettle.ace.handler.ReviseBodyBeforeEditHandler" >
<property name="model"><ref bean="bmModel"/></property>
<property name="editor"><ref bean="billForm"/></property>
</bean>
</property>
</bean>
4.代码逻辑
package nc.ui.pu.metsettle.ace.handler;
import nc.ui.pubapp.uif2app.event.IAppEventHandler;
import nc.ui.pubapp.uif2app.event.card.CardBodyBeforeEditEvent;
import nc.ui.pubapp.uif2app.model.BillManageModel;
import nc.ui.uif2.editor.BillForm;
import nc.vo.pu.metsettle.entity.AggMetSettleBillHeaderVO;public class ReviseBodyBeforeEditHandler implements IAppEventHandler<CardBodyBeforeEditEvent> {
private BillManageModel model;
private BillForm editor;@Override
public void handleAppEvent(CardBodyBeforeEditEvent e) {//获取关键字
String key = e.getKey();//获取的关键字和元数据中的字段进行对比
if(key.equals("settlesample")) {//获取所有的数据
AggMetSettleBillHeaderVO selectedData = (AggMetSettleBillHeaderVO) getModel().getSelectedData();//获取到条件单据
String approveconfirm = selectedData.getParentVO().getApproveconfirm().toString();
if("Y".equals(approveconfirm)) {
e.setReturnValue(false);
}
} e.setReturnValue(true);
}
public BillManageModel getModel() {
return model;
}public void setModel(BillManageModel model) {
this.model = model;
}
public BillForm getEditor() {
return editor;
}public void setEditor(BillForm editor) {
this.editor = editor;
}
}
nc.ui.pubapp.uif2app.event.card | |
CardBodyAfterEditEvent.java | 卡片表体编辑后 |
CardBodyAfterRowEditEvent.java | 卡片表体行编辑后 |
CardBodyAfterSortEvent.java | 卡片表体排序后 |
CardBodyBeforeBatchEditEvent.java | 卡片表体批编辑前 |
CardBodyBeforeEditEvent.java | 卡片表体编辑前 |
CardBodyBeforeSortEvent.java | 卡片表体排序前 |
CardBodyMenuActionEvent.java | 卡片表体菜单点击 |
CardBodyRowChangedEvent.java | 卡片表体行选择改变 |
CardBodyRowEditEvent.java | 卡片表体行编辑后 |
CardBodyTabChangedEvent.java | 卡片表体页签改变 |
CardBodyTotalEvent.java | 卡片表体汇总计算 |
CardHeadTailAfterEditEvent.java | 卡片表头表尾编辑后 |
CardHeadTailBeforeEditEvent.java | 卡片表头表尾编辑前 |
nc.ui.pubapp.uif2app.event | |
AppUiStateChangeEvent.java | UI状态改变 |
OrgChangedEvent.java | 组细改变 |
PubAppEvent.java | 事件基类 |
nc.ui.pubapp.uif2app.event.list | |
ListBodyAfterSortEvent.java | 列表表体排序后 |
ListBodyBeforeSortEvent.java | 列表表体排序前 |
ListBodyDoubleClickEvent.java | 列表表体鼠标双击 |
ListBodyRowChangedEvent.java | 列表表体行改变 |
ListBodyTabChangedEvent.java | 列表表体页签改变 |
ListBodyTotalEvent.java | 列表表体汇总计算 |
ListHeadAfterSortEvent.java | 列表表头排序后 |
ListHeadBeforeSortEvent.java | 列表表头配徐前 |
ListHeadDoubleClickEvent.java | 列表表头鼠标双击 |
ListHeadRowChangedEvent.java | 列表表头行改变 |
ListPanelLoadEvent.java | 列表加载 |