📄 editui.java
字号:
package com.cownew.PIS.ui.commonUI;
import java.awt.event.ActionEvent;
import com.cownew.PIS.framework.client.ClientMetaDataLoaderFactory;
import com.cownew.PIS.framework.client.RemoteServiceLocator;
import com.cownew.PIS.framework.common.IBaseDAO;
import com.cownew.PIS.framework.common.IValueObject;
import com.cownew.PIS.framework.common.db.Selectors;
import com.cownew.PIS.framework.common.metaDataMgr.EntityModelInfo;
import com.cownew.PIS.framework.common.metaDataMgr.IMetaDataLoader;
import com.cownew.PIS.ui.commonUI.databind.UIDataBinder;
import com.cownew.ctk.ui.swing.MsgBox;
import com.cownew.ctk.ui.swing.SwingUtils;
public abstract class EditUI extends AbstractEditUI
{
protected UIDataBinder dataBinder;
protected IValueObject modelVO;
private EditUIModeEnum mode;
public EditUI() throws Exception
{
super();
dataBinder = new UIDataBinder();
}
/**
* 得到远程服务类
* @return
*/
public abstract Class getServiceIntfClass();
public String getUITitle()
{
IMetaDataLoader metaLoader = ClientMetaDataLoaderFactory.getLoader();
String entityPath = getRemoteService().getEntityPath();
EntityModelInfo eInfo = metaLoader.loadEntityByEntityPath(entityPath);
return eInfo.getAlias();
}
protected IBaseDAO getRemoteService()
{
return (IBaseDAO) RemoteServiceLocator
.getRemoteService(getServiceIntfClass());
}
/**
* 设定界面状态
* @param mode
*/
public void setMode(EditUIModeEnum mode)
{
this.mode = mode;
if (mode.equals(EditUIModeEnum.VIEW))
{
SwingUtils.setChildEnabled(this, false);
actionSubmit.setEnabled(false);
}
}
/**
* 得到界面状态
* @return
*/
public EditUIModeEnum getMode()
{
return mode;
}
/**
* 初始化数据绑定
*
*/
protected void initDataBind()
{
dataBinder.setValueObject(modelVO);
}
/**
* 设定界面要操纵的vo
* @param ov
*/
public void setModelVO(IValueObject ov)
{
modelVO = ov;
initDataBind();
}
/**
* 将vo加载到界面
*
*/
public void loadToUI()
{
dataBinder.loadToUI();
}
/**
* 保存数据前的校验
* @param vo
* @throws Exception
*/
protected void verifyBeforeSubmit(IValueObject vo) throws Exception
{
}
/**
* 界面数据装载到vo
*
*/
public void storeToVO() throws Exception
{
dataBinder.storeToVO();
}
/**
* 根据id加载记录
* @param pkId
* @
*/
public void loadById(String pkId)
{
IBaseDAO baseDAO = getRemoteService();
IValueObject ov = baseDAO.loadByPK(pkId, getSelectors());
setModelVO(ov);
loadToUI();
}
public void actionSubmit_actionPerformed(ActionEvent e) throws Exception
{
IBaseDAO baseDAO = getRemoteService();
storeToVO();
verifyBeforeSubmit(modelVO);
if (getMode().equals(EditUIModeEnum.UNSAVED))
{
String id = baseDAO.save(dataBinder.getValueObject());
modelVO.setId(id);
setMode(EditUIModeEnum.EDIT);
} else
{
baseDAO.update(dataBinder.getValueObject());
}
MsgBox.showInfo(this, "保存成功!");
}
public Selectors getSelectors()
{
Selectors selector = new Selectors();
return selector;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -