欢迎来到天天文库
浏览记录
ID:34416345
大小:177.66 KB
页数:5页
时间:2019-03-05
《eeplat7自定义动作扩展》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、自定义动作扩展(以删除多条记录为例)自定义动作是平台功能的扩展,即为了完成平台不能配置的功能。自定义动作有两种实现方式:(1)通过脚本在线编写(2)实现com.exedosoft.plat.action.Action接口或继承com.exedosoft.plat.action.DOAbstractAction抽象类自定义动作的应用场景:(1)服务使用自定义动作:这时服务的执行委托给自定义动作,不再执行服务定义的SQL语句(2)参数使用自定义动作:自定义动作的返回值为参数的值(3)编码(CodeMain
2、)使用自定义动作:自定义动作的返回值编码的值(4)编码项(CodeItem)目使用自定义动作:自定义动作的返回值为编码项目的值(5)通过平台提供的javascriptcallAction的函数,直接调用自定义动作,完成前台和后台的直接交互这里以两种实现方式分别写一个批量删除人员的自定义动作扩展,作为例子。(一)脚本在线编写步骤:新建自定义动作=》新建删除服务配置其自定义动作为新添加的动作=》配置人员result表格并在其中添加批量删除按钮使之连接的服务为新建的删除服务步骤明细:1.新建自定义动作点击开
3、发平台首页中基础设施管理的自定义动作管理,进入自定义动作管理页面,然后点击按钮,在弹出的新增页面中配置批量删除人员的自定义动作并保存,配置明细页面如下:脚本实现代码明细:varret;//返回值声明varDEFAULT_FORWARD="success";varNO_FORWARD="noforward";varsSubmit=doservice.getService("tbl_person_delete");//调用删除人员的服务varchecks=doform.getValueArray("che
4、ckinstance");//获取Form节点中name为checkinstance的属性的值if(checks!=null&&checks.length>0){//循环调用删除服务for(vari=0;i5、lue("批量删除完成!");ret=DEFAULT_FORWARD;}else{SessionContext.getInstance().getThreadContext().setEchoValue("没有数据!");ret=NO_FORWARD;}ret;//返回值1.新建删除服务配置其自定义动作为新添加的动作打开人员业务对象的服务包,新建一个删除服务,配置明细如下:2.配置人员result表格并在其中添加批量删除按钮使之连接的服务为新建的删除服务配置人员result表格如下:在人员result6、表格中新增“批量删除”表格元素,配置如下:(一)继承com.exedosoft.plat.action.DOAbstractAction抽象类步骤:新建自定义动作类=》将其添加到平台自定义动作中=》新建删除服务配置其自定义动作为新添加的动作=》配置人员result表格并在其中添加批量删除按钮使之连接的服务为新建的删除服务步骤明细:1.新建package,路径如下:com.eeplat.action.myself,在其中新建人员批量删除自定义动作类:DeleteAllPerson,然后重启tomcat。7、(可参照里的)代码明细如下:publicclassDeleteAllPersonextendsDOAbstractAction{@OverridepublicStringexcute()throwsExedoException{//TODOAuto-generatedmethodstub//获取Form节点BOInstanceform=DOGlobals.getInstance().getSessoinContext().getFormInstance();//调用删除人员的服务DOServicede8、leteService=DOService.getService("tbl_person_delete");//获取Form节点中name为checkinstance的属性的值//因为表格用的GridList控制器,在其配置的checkbox的name为checkinstance,(明细请//参照/exedo/webv3/template/grid/GridList.ftl)//因此获取Form节点中name为checkinstance的属性的值即可获得
5、lue("批量删除完成!");ret=DEFAULT_FORWARD;}else{SessionContext.getInstance().getThreadContext().setEchoValue("没有数据!");ret=NO_FORWARD;}ret;//返回值1.新建删除服务配置其自定义动作为新添加的动作打开人员业务对象的服务包,新建一个删除服务,配置明细如下:2.配置人员result表格并在其中添加批量删除按钮使之连接的服务为新建的删除服务配置人员result表格如下:在人员result
6、表格中新增“批量删除”表格元素,配置如下:(一)继承com.exedosoft.plat.action.DOAbstractAction抽象类步骤:新建自定义动作类=》将其添加到平台自定义动作中=》新建删除服务配置其自定义动作为新添加的动作=》配置人员result表格并在其中添加批量删除按钮使之连接的服务为新建的删除服务步骤明细:1.新建package,路径如下:com.eeplat.action.myself,在其中新建人员批量删除自定义动作类:DeleteAllPerson,然后重启tomcat。
7、(可参照里的)代码明细如下:publicclassDeleteAllPersonextendsDOAbstractAction{@OverridepublicStringexcute()throwsExedoException{//TODOAuto-generatedmethodstub//获取Form节点BOInstanceform=DOGlobals.getInstance().getSessoinContext().getFormInstance();//调用删除人员的服务DOServicede
8、leteService=DOService.getService("tbl_person_delete");//获取Form节点中name为checkinstance的属性的值//因为表格用的GridList控制器,在其配置的checkbox的name为checkinstance,(明细请//参照/exedo/webv3/template/grid/GridList.ftl)//因此获取Form节点中name为checkinstance的属性的值即可获得
此文档下载收益归作者所有