NC实战开发笔记

开发笔记

NC6系列前端开发

事件处理

package nc.ui.test.app;
import nc.ui.pub.bill.BillCardPanel;
import nc.ui.pubapp.uif2app.event.IAppEventHandler;
import nc.ui.pubapp.uif2app.event.card.CardHeadTailAfterEditEvent;
/**
 * 

卡片界面表头编辑后事件处理示例,不同处理场景只需替换泛型参数CardHeadTailAfterEditEvent

*

扩展:

*

1.卡片界面事件包:nc.ui.pubapp.uif2app.event.card

*

2.列表界面事件包:nc.ui.pubapp.uif2app.event.list

* @author mickkong */
public class CardHeadTailAfterHandler implements IAppEventHandler<CardHeadTailAfterEditEvent> { @Override public void handleAppEvent(CardHeadTailAfterEditEvent e) { // 常用API String key = e.getKey(); BillCardPanel billCardPanel = e.getBillCardPanel(); } }

动作处理

package nc.ui.test.app;
import java.awt.event.ActionEvent;
import nc.ui.pub.bill.BillCardPanel;
import nc.ui.pubapp.uif2app.actions.DifferentVOSaveAction;
import nc.ui.pubapp.uif2app.view.BillForm;
/**
 * 

界面保存动作示例,不同处理场景只需替换继承的DifferentVOSaveAction类

*

扩展:

*

1.Action父类包:nc.ui.pubapp.uif2app.actions

*

2.审批流相关:nc.ui.pubapp.uif2app.actions.pflow

* @author mickkong */
public class TestSaveAction extends DifferentVOSaveAction { @Override public void doAction(ActionEvent e) throws Exception { // 常用API BillCardPanel billCardPanel = ((BillForm)getEditor()).getBillCardPanel(); super.doAction(e); } }

查询初始化

package nc.ui.test.app;
import java.util.ArrayList;
import java.util.List;
import nc.ui.pubapp.uif2app.query2.IQueryConditionDLGInitializer;
import nc.ui.pubapp.uif2app.query2.QueryConditionDLGDelegator;
import nc.ui.pubapp.uif2app.query2.refregion.QueryDefaultOrgFilter;
/**
 * 查询界面初始化类
 * @author mickkong
 */
public class TestQueryConditionInitializer implements IQueryConditionDLGInitializer {
	@Override
	public void initQueryConditionDLG(QueryConditionDLGDelegator qcDLGDelegator) {
		// 常用API
		qcDLGDelegator.setPowerEnable(true);
		List targetFields = new ArrayList();
		targetFields.add("pk_project");
		targetFields.add("pk_dept");
		QueryDefaultOrgFilter orgFilter = new QueryDefaultOrgFilter(qcDLGDelegator, "pk_org", targetFields);
	}
}

参照开发

package nc.ui.test.app;
import nc.ui.bd.ref.AbstractRefTreeModel;
/**
 * 

树模型参照

*

扩展:

*

1.参照包:nc.ui.bd.ref

* @author mickkong */
public class TestRefTreeModel extends AbstractRefTreeModel { public TestRefTreeModel() { // 常用API setRefTitle("标题"); setRootName("根名"); setPkFieldCode("pk"); setRefCodeField("code"); setRefNameField("name"); setFatherField("pid"); setChildField("pk_child"); setTableName("table"); setFieldCode(new String[] {"code", "name"}); setFieldName(new String[] {"编码", "名称"}); setHiddenFieldCode(new String[] {"pk_child", "pid"}); resetFieldName(); } }

校验规则

package nc.ui.test.app;
import nc.bs.uif2.validation.IValidationService;
import nc.bs.uif2.validation.ValidationException;
/**
 * 校验规则
 * @author mickkong
 *
 */
public class TestValidate implements IValidationService {
 @Override
 public void validate(Object obj) throws ValidationException {
 }
}

NC5系列前端开发

Controller类

package nc.ui.demo.course;
import nc.ui.trade.bill.AbstractManageController;
import nc.ui.trade.button.IBillButton;
public class ClientCtrl extends AbstractManageController {
 public String[] getCardBodyHideCol() {
  return null;
 }
 public int[] getCardButtonAry() {
  return new int[]{ 
   IBillButton.Brow, 
   IBillButton.Query, 
   IBillButton.Add, 
   IBillButton.Edit, 
   IBillButton.Line, 
   IBillButton.Save,
   IBillButton.Delete, 
   IBillButton.Cancel, 
   // 返回按钮 
   IBillButton.Return, 
   IBillButton.Refresh
  };
 }
 public boolean isShowCardRowNo() {
  return false;
 }
 public boolean isShowCardTotal() {
  return false;
 }
 public String getBillType() {
  return null;
 }
 public String[] getBillVoName() {
  return null;
 }
 public String getBodyCondition() {
  return null;
 }
 public String getBodyZYXKey() {
  return null;
 }
 public int getBusinessActionType() {
  return 0;
 }
 public String getChildPkField() {
  return null;
 }
 public String getHeadZYXKey() {
  return null;
 }
 public String getPkField() {
  return null;
 }
 public Boolean isEditInGoing() throws Exception {
  return null;
 }
 public boolean isExistBillStatus() {
  return false;
 }
 public boolean isLoadCardFormula() {
  return false;
 }
 public String[] getListBodyHideCol() {
  return null;
 }
 public int[] getListButtonAry() {
  return new int[] { 
   IBillButton.Query, 
   IBillButton.Add, 
   IBillButton.Edit, 
   IBillButton.Line, 
   IBillButton.Save,
   IBillButton.Delete, 
   IBillButton.Cancel,
   // 卡片按钮
   IBillButton.Card, 
   IBillButton.Refresh
  };
 }
 public String[] getListHeadHideCol() {
  return null;
 }
 public boolean isShowListRowNo() {
  return false;
 }
 public boolean isShowListTotal() {
  return false;
 }
}

EventHandler类

package nc.ui.demo.course;
import nc.ui.pub.ButtonObject;
import nc.ui.trade.controller.IControllerBase;
import nc.ui.trade.manage.BillManageUI;
import nc.ui.trade.manage.ManageEventHandler;
public class ClientEventHandler extends ManageEventHandler {
 public ClientEventHandler(BillManageUI billUI, IControllerBase control) {
  super(billUI, control);
 }
 @Override
 public void onBoAdd(ButtonObject bo) throws Exception {
  // TODO 自动生成的方法存根
  super.onBoAdd(bo);
 }
 @Override
 protected void onBoElse(int intBtn) throws Exception {
  super.onBoElse(intBtn);
 }
}

UI类

package nc.ui.demo.course;
import nc.ui.trade.bill.AbstractManageController;
import nc.ui.trade.manage.BillManageUI;
import nc.vo.pub.CircularlyAccessibleValueObject;
public class ClientUI extends BillManageUI {
 @Override
 protected AbstractManageController createController() {
  return null;
 }
 @Override
 public void setBodySpecialData(CircularlyAccessibleValueObject[] arg0) throws Exception {
 }
 @Override
 protected void setHeadSpecialData(CircularlyAccessibleValueObject arg0, int arg1) throws Exception {
 }
 @Override
 protected void setTotalHeadSpecialData(CircularlyAccessibleValueObject[] arg0) throws Exception {
 }
 @Override
 protected void initSelfData() {
 }
 @Override
 public void setDefaultData() throws Exception {
 }
 /**
  * 当单据不走平台时,单据 UI 类应该重载基类的 createBusinessDelegator 方法,并返回不走平台的业务代理类
  */
 // @Override
 // protected BusinessDelegator createBusinessDelegator() {
 //  return new BDBusinessDelegator();
 // }
}

你可能感兴趣的:(开发笔记,NC)