业务场景:特定状态下的数据不允许修改或删除。在编辑界面上的话,需要重写修改、删除操作对应的action。
通常还需在序时簿界面也重写修改、删除功能。
/**
* 已启用数据不允许修改
*/
public void actionEdit_actionPerformed(ActionEvent e) throws Exception {
if(editData.getIsUsed().equals(YesOrNoEnum.YES)){
Utils.log(editData, DataTypeEnum.REPORTING, false, "修改数据失败!", "已启用数据不允许修改!");
Utils.warning(this, "已启用数据不允许修改!");
}
super.actionEdit_actionPerformed(e);
}
/**
* 已启用数据不允许删除
*/
public void actionRemove_actionPerformed(ActionEvent e) throws Exception {
if(editData.getIsUsed().equals(YesOrNoEnum.YES)){
Utils.log(editData, DataTypeEnum.REPORTING, false, "删除数据失败!", "已启用数据不允许删除!");
Utils.warning(this, "已启用数据不允许删除!");
}
if(Utils.hasQuoted(editData)){
Utils.log(editData, DataTypeEnum.REPORTING, false, "删除数据失败!", "被引用数据不允许删除!");
Utils.warning(this, "被引用数据不允许删除!");
}
super.actionRemove_actionPerformed(e);
}
/**
* 警告并中断程序,用于前端
* @param comp 父控件
* @param msg 警告消息
*
*/
public static void warning(Component comp, String msg){
MsgBox.showWarning(comp, msg);
SysUtil.abort();
}