<?xml version="1.0" encoding="gbk"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 环境变量 -->
<bean id="context" class="nc.vo.uif2.LoginContext" />
<!-- 管理应用模型 -->

<!--树开始 -->
<!-- 对象转换器工厂,由此获取操作对象的特征信息 -->
<!--<bean id="boadatorfactory" class="nc.ui.pubapp.uif2app.view.value.AggVOMetaBDObjectAdapterFactory"
/> -->

<!-- 对于有元数据的VO,可以使用下面的配置 -->
<bean id="boadatorfactory" class="nc.vo.bd.meta.BDObjectAdpaterFactory" />

<!--Service -->
<bean id="TreeModelService" class="nc.ui.chs.cs12.treeClass.CS12TreeService" />
<bean id="BillModelService" class="nc.ui.chs.cs12.treeClass.CS12BillService" />

<!-- 树的层次结构构造策略 -->
<bean id="treeCreateStrategy" class="nc.vo.bd.meta.BDObjectTreeCreateStrategy">
<property name="factory" ref="boadatorfactory" />
<property name="rootName" value="部门" />
</bean>
<!--树的model -->
<bean id="TreeModel" class="nc.ui.uif2.model.HierachicalDataAppModel">
<property name="service" ref="TreeModelService"></property>
<property name="treeCreateStrategy" ref="treeCreateStrategy"></property>
<property name="businessObjectAdapterFactory" ref="boadatorfactory"></property>
<property name="context" ref="context"></property>
</bean>
<!-- 数据模型管理器,主要负责各种方式的模型初始化 -->
<bean id="TreeDataManager" class="nc.ui.chs.cs12.treeClass.CS12TreeDataManager">
<property name="treeModel" ref="TreeModel"></property>
</bean>
<!-- 树控件,如果进行管理,需要实现接口IComponentWithActions存储动作 lxiaofan -->
<bean id="treePanel" class="nc.ui.uif2.components.TreePanel"
init-method="initUI">
<property name="model" ref="TreeModel"></property>
</bean>

<!--分页控件 -->
<bean id="paginationModel" class="nc.ui.chs.cs12.treeClass.PaginationModel"
init-method="init">
<property name="paginationQueryService" ref="maintainProxy" />
<property name="billModelService" ref="BillModelService" />
</bean>
<!--表的数据模型管理器 -->
<bean id="BillDataManager" class="nc.ui.chs.cs12.treeClass.CS12BillDataManager">
<property name="billModel" ref="manageAppModel"></property>
<property name="paginationModel" ref="paginationModel" />
<property name="listView" ref="listView" />
<property name="billFormEditor" ref="billFormEditor" />
</bean>

<!-- a)层次模型和管理模型之间的协调者,以Mediator结尾,不区分大小写; b)该类对两个模型进行监听,负责相互事件的中转; c)属性可以扩展; -->
<bean id="TreeBillMediator" class="nc.ui.chs.cs12.treeClass.CS12Mediator">
<property name="treeModel" ref="TreeModel"></property>
<property name="manageAppModel" ref="manageAppModel"></property>
<property name="billDataManager" ref="BillDataManager"></property>
</bean>

<!--专供查询使用的manager -->
<bean id="PaginationModelDataManager"
class="nc.ui.pubapp.uif2app.model.pagination.PaginationModelDataManager">
<property name="model" ref="manageAppModel"></property>
<property name="paginationModel" ref="paginationModel" />
<property name="pageQueryService" ref="pageQueryService" />
</bean>

<!-- 查询按钮 -->
<bean id="queryAction" class="nc.ui.pubapp.uif2app.query2.action.DefaultQueryAction">
<property name="model" ref="manageAppModel" />
<property name="dataManager" ref="PaginationModelDataManager" />
<property name="qryCondDLGInitializer" ref="qryCondInitializer" />
<property name="showUpComponent" ref="listView" />
<property name="templateContainer" ref="queryTemplateContainer" />
</bean>

<!-- 列表下刷新 -->
<bean id="refreshAction" class="nc.ui.pubapp.uif2app.query2.action.DefaultRefreshAction">
<property name="dataManager" ref="TreeDataManager" />
<property name="model" ref="manageAppModel" />
</bean>
<!--树结束 -->

<!-- 模型部分配置 -->

<!-- 单据操作代理 -->
<bean id="maintainProxy" class="nc.ui.chs.cs12.ace.serviceproxy.AceCs12MaintainProxy" />
<!-- 单据删除代理,支持批操作 -->
<bean id="deleteProxy" class="nc.ui.chs.cs12.ace.serviceproxy.AceCs12DeleteProxy" />

<!-- 管理应用模型 -->
<bean id="manageAppModel" class="nc.ui.pubapp.uif2app.model.BillManageModel">
<property name="businessObjectAdapterFactory" ref="boadatorfactory"></property>
<property name="context" ref="context"></property>
</bean>

<bean id="pageQueryService"
class="nc.ui.pubapp.uif2app.model.pagination.UIPageQueryService">
<property name="allPagePkQueryServiceMethod" value="nc.itf.chs.cs12.ICs12Maintain.queryPKs"></property>
<property name="dataOfPksQueryServiceMethod" value="nc.itf.chs.cs12.ICs12Maintain.queryBillByPK"></property>
</bean>
<bean id="paginationBar" class="nc.ui.uif2.components.pagination.PaginationBar"
init-method="onStructChanged">
<property name="paginationModel" ref="paginationModel" />
</bean>

<!-- 模板容器,负责对模板的统一装载 -->
<bean id="templateContainer" class="nc.ui.pubapp.uif2app.view.TemplateContainer">
<property name="context" ref="context" />
<property name="nodeKeies">
<list>
<value>bt</value>
</list>
</property>
</bean>

<!-- 查询模板加载bean -->
<bean id="queryTemplateContainer" class="nc.ui.uif2.editor.QueryTemplateContainer">
<property name="context" ref="context"></property>
<property name="nodeKey" value="qt"></property>
</bean>

<!-- 界面元素 -->
<!-- 列表视图 -->
<bean id="listView" class="nc.ui.pubapp.uif2app.view.ShowUpableBillListView"
init-method="initUI">
<property name="paginationBar" ref="paginationBar" />
<property name="model" ref="manageAppModel"></property>
<property name="templateContainer" ref="templateContainer"></property>
</bean>

<!--卡控件 -->
<bean id="billFormEditor" class="nc.ui.pubapp.uif2app.view.ShowUpableBillForm"
init-method="initUI">
<property name="model" ref="manageAppModel"></property>
<property name="templateContainer" ref="templateContainer" />
<property name="showOrgPanel" value="true" />
</bean>

<!-- 快速查询区域 -->
<bean id="queryArea" class="nc.ui.pubapp.uif2app.tangramlayout.UEQueryAreaShell"
init-method="initUI">
<property name="queryAreaCreator" ref="queryAction" />
</bean>
<!-- 查询信息栏 -->
<bean id="queryInfo" class="nc.ui.uif2.tangramlayout.CardLayoutToolbarPanel">
<property name="model" ref="manageAppModel" />
</bean>

<!-- 卡片界面的工具栏和返回按钮 -->
<bean id="cardInfoPnl"
class="nc.ui.pubapp.uif2app.tangramlayout.UECardLayoutToolbarPanel">
<property name="titleAction">
<bean id="returnaction" class="nc.ui.pubapp.uif2app.actions.UEReturnAction">
<property name="goComponent" ref="listView" />
<property name="saveAction" ref="saveAction" />
<property name="model" ref="manageAppModel" />
</bean>
</property>
<property name="model" ref="manageAppModel" />
</bean>

<!-- 界面布局总装 -->
<bean id="container" class="nc.ui.uif2.TangramContainer"
init-method="initUI">
<property name="model" ref="manageAppModel" />
<property name="tangramLayoutRoot">
<bean class="nc.ui.uif2.tangramlayout.node.TBNode">
<property name="showMode" value="CardLayout" />
<property name="tabs">
<list>
<bean class="nc.ui.uif2.tangramlayout.node.HSNode">
<property name="left">
<bean class="nc.ui.uif2.tangramlayout.node.CNode">
<property name="component" ref="treePanel" />
</bean>
</property>
<property name="right">
<bean class="nc.ui.uif2.tangramlayout.node.VSNode">
<property name="up">
<bean class="nc.ui.uif2.tangramlayout.node.CNode">
<property name="component" ref="queryInfo" />
</bean>
</property>
<property name="down">
<bean class="nc.ui.uif2.tangramlayout.node.CNode">
<property name="name">
<bean class="nc.ui.uif2.I18nFB">
<property name="resDir" value="common"></property>
<property name="resId" value="UC001-0000107"></property>
<property name="defaultValue" value="列表"></property>
</bean>
</property>
<property name="component" ref="listView" />
</bean>
</property>
<property name="dividerLocation" value="25f" />
</bean>
</property>
<property name="dividerLocation" value="0.22f" />
</bean>
<bean class="nc.ui.uif2.tangramlayout.node.VSNode">
<property name="up">
<bean class="nc.ui.uif2.tangramlayout.node.CNode">
<property name="component" ref="cardInfoPnl" />
</bean>
</property>
<property name="down">
<bean class="nc.ui.uif2.tangramlayout.node.CNode">
<property name="name">
<bean class="nc.ui.uif2.I18nFB">
<property name="resDir" value="common"></property>
<property name="resId" value="UC001-0000106"></property>
<property name="defaultValue" value="卡片"></property>
</bean>
</property>
<property name="component" ref="billFormEditor" />
</bean>
</property>
<property name="dividerLocation" value="30f" />
</bean>
</list>
</property>
</bean>
</property>
</bean>

<!-- 事件监听 -->
<bean id="eventMediator" class="nc.ui.pubapp.uif2app.model.AppEventHandlerMediator">
<property name="model" ref="manageAppModel" />
<property name="handlerGroup">
<list>
<!-- 表头表尾字段编辑前事件 -->
<bean class="nc.ui.pubapp.uif2app.event.EventHandlerGroup">
<property name="event"
value="nc.ui.pubapp.uif2app.event.card.CardHeadTailBeforeEditEvent" />
<property name="handler">
<bean class="nc.ui.chs.cs12.ace.handler.AceHeadTailBeforeEditHandler" />
</property>
</bean>
<!-- 表头表尾字段编辑后事件 -->
<bean class="nc.ui.pubapp.uif2app.event.EventHandlerGroup">
<property name="event"
value="nc.ui.pubapp.uif2app.event.card.CardHeadTailAfterEditEvent" />
<property name="handler">
<bean class="nc.ui.chs.cs12.ace.handler.AceHeadTailAfterEditHandler" />
</property>
</bean>
<!-- 新增事件 -->
<bean class="nc.ui.pubapp.uif2app.event.EventHandlerGroup">
<property name="event"
value="nc.ui.pubapp.uif2app.event.billform.AddEvent" />
<property name="handler">
<bean class="nc.ui.chs.cs12.ace.handler.AceAddHandler" >
<property name="treeModel" ref="TreeModel" />
</bean>
</property>
</bean>
<!-- 组织改变事件 -->
<bean class="nc.ui.pubapp.uif2app.event.EventHandlerGroup">
<property name="event"
value="nc.ui.pubapp.uif2app.event.OrgChangedEvent" />
<property name="handler">
<bean class="nc.ui.chs.cs12.ace.handler.AceOrgChangedHandler">
<constructor-arg ref="billFormEditor" />
</bean>
</property>
</bean>

</list>
</property>
</bean>

<!-- Actions -->
<bean id="toftpanelActionContributors" class="nc.ui.uif2.actions.ActionContributors">
<property name="contributors">
<list>
<ref bean="actionsOfList" />
<ref bean="actionsOfCard" />
</list>
</property>
</bean>

<!-- 列表显示下的按钮 -->
<bean id="actionsOfList" class="nc.ui.uif2.actions.StandAloneToftPanelActionContainer">
<constructor-arg ref="listView" />
<property name="model" ref="manageAppModel" />
<property name="actions">
<list>
<ref bean="addAction" />
<ref bean="editAction" />
<ref bean="deleteAction" />
<ref bean="copyAction" />
<ref bean="separatorAction" />
<ref bean="queryAction" />
<ref bean="refreshAction" />
<ref bean="separatorAction" />
<ref bean="printMenuAction" />
<ref bean="separatorAction" />
</list>
</property>
</bean>

<!-- 卡片显示下的按钮 -->
<bean id="actionsOfCard" class="nc.ui.uif2.actions.StandAloneToftPanelActionContainer">
<constructor-arg ref="billFormEditor" />
<property name="model" ref="manageAppModel" />
<!-- 此处配置的Action浏览态始终可见 -->
<property name="actions">
<list>
<ref bean="addAction" />
<ref bean="editAction" />
<ref bean="deleteAction" />
<ref bean="copyAction" />
<ref bean="separatorAction" />
<ref bean="queryAction" />
<ref bean="cardRefreshAction" />
<ref bean="separatorAction" />
<ref bean="printMenuAction" />
<ref bean="separatorAction" />
</list>
</property>

<!-- 此处配置的Action编辑态始终可见 -->
<property name="editActions">
<list>
<ref bean="saveAction" />
<ref bean="cancelAction" />
</list>
</property>
</bean>

<!-- 分隔按钮 -->
<bean id="separatorAction" class="nc.funcnode.ui.action.SeparatorAction" />
<!-- 显示列表的拦截器 -->
<bean id="showListInterceptor"
class="nc.ui.pubapp.uif2app.actions.interceptor.ShowUpComponentInterceptor">
<property name="showUpComponent" ref="listView" />
</bean>
<!-- 显示卡片的拦截器 -->
<bean id="showCardInterceptor"
class="nc.ui.pubapp.uif2app.actions.interceptor.ShowUpComponentInterceptor">
<property name="showUpComponent" ref="billFormEditor" />
</bean>

<bean id="addAction" class="nc.ui.pubapp.uif2app.actions.AddAction">
<property name="model" ref="manageAppModel" />
<property name="interceptor" ref="showCardInterceptor" />
</bean>
<bean id="editAction" class="nc.ui.pubapp.uif2app.actions.EditAction">
<property name="model" ref="manageAppModel" />
<property name="interceptor" ref="showCardInterceptor" />
</bean>
<bean id="deleteAction" class="nc.ui.pubapp.uif2app.actions.DeleteAction">
<property name="model" ref="manageAppModel" />
<property name="singleBillService" ref="deleteProxy" />
</bean>

<bean id="saveAction" class="nc.ui.pubapp.uif2app.actions.DifferentVOSaveAction">
<property name="model" ref="manageAppModel" />
<property name="editor" ref="billFormEditor" />
<property name="service" ref="maintainProxy" />
<property name="validationService" ref="validateService" />
</bean>

<!-- 保存组合校验 -->
<bean id="validateService" class="nc.ui.pubapp.uif2app.validation.CompositeValidation">
<property name="validators">
<list>
<bean class="nc.ui.pubapp.uif2app.validation.TemplateNotNullValidation">
<property name="billForm" ref="billFormEditor" />
</bean>
</list>
</property>
</bean>
<bean id="cancelAction" class="nc.ui.pubapp.uif2app.actions.CancelAction">
<property name="model" ref="manageAppModel" />
</bean>
<!-- 复制 -->
<bean id="copyAction" class="nc.ui.pubapp.uif2app.actions.CopyAction">
<property name="model" ref="manageAppModel" />
<property name="interceptor" ref="showCardInterceptor" />
<property name="editor" ref="billFormEditor" />
<property name="copyActionProcessor">
<bean class="nc.ui.chs.cs12.action.CopyActionProcessor"></bean>
</property>
</bean>

<bean id="qryCondInitializer" class="nc.ui.chs.cs12.query.Cs12QueryConditionInitializer" />

<!-- 卡片下刷新 -->
<bean id="cardRefreshAction" class="nc.ui.pubapp.uif2app.actions.RefreshSingleAction">
<property name="model" ref="manageAppModel" />
</bean>

<!-- 打印 -->
<bean id="printAction" class="nc.ui.pubapp.uif2app.actions.MetaDataBasedPrintAction">
<property name="preview" value="false" />
<property name="model" ref="manageAppModel" />
<property name="nodeKey" value="ot" />
</bean>

<!-- 预览 -->
<bean id="previewAction" class="nc.ui.pubapp.uif2app.actions.MetaDataBasedPrintAction">
<property name="preview" value="true" />
<property name="model" ref="manageAppModel" />
<property name="nodeKey" value="ot" />
</bean>

<!-- 输出 -->
<bean id="outputAction" class="nc.ui.pubapp.uif2app.actions.OutputAction">
<property name="model" ref="manageAppModel" />
<property name="parent" ref="billFormEditor" />
<property name="nodeKey" value="ot" />
</bean>

<!-- 打印按钮组 -->
<bean id="printMenuAction" class="nc.funcnode.ui.action.GroupAction">
<property name="code" value="printMenuAction" />
<property name="name">
<bean class="nc.ui.uif2.I18nFB">
<property name="resDir" value="common"></property>
<property name="resId" value="UC001-0000007"></property>
<property name="defaultValue" value="打印"></property>
</bean>
</property>
<property name="actions">
<list>
<ref bean="printAction" />
<ref bean="previewAction" />
<ref bean="outputAction" />
</list>
</property>
</bean>

<!-- 打开节点监听 -->
<bean id="InitDataListener"
class="nc.ui.pubapp.uif2app.model.DefaultFuncNodeInitDataListener">
<property name="model" ref="manageAppModel" />
<property name="context" ref="context"></property>
<!-- VO的类名 -->
<property name="voClassName" value="nc.vo.chs.cs12.AggCs12VO" />
<!-- 打开节点节点后要显示的界面 -->
<property name="autoShowUpComponent" ref="billFormEditor" />
</bean>

<!-- 节点关闭的校验 -->
<bean id="ClosingListener" class="nc.ui.pubapp.common.validateservice.ClosingCheck">
<property name="model" ref="manageAppModel" />
<property name="saveAction" ref="saveAction" />
</bean>

<!-- 自动修正卡片界面的分数显示控件(换算率) -->
<bean id="fractionFixMediator" class="nc.ui.pubapp.uif2app.view.FractionFixMediator"
init-method="initUI">
<constructor-arg ref="billFormEditor" />
</bean>

<!-- 双击列表行后显示卡片 -->
<bean id="mouseClickShowPanelMediator" class="nc.ui.pubapp.uif2app.view.MouseClickShowPanelMediator">
<property name="listView" ref="listView" />
<property name="showUpComponent" ref="billFormEditor" />
<property name="hyperLinkColumn" value="vbillno" />
</bean>

<bean id="remoteCallCombinatorCaller" class="nc.ui.uif2.editor.UIF2RemoteCallCombinatorCaller">
<property name="remoteCallers">
<list>
<ref bean="queryTemplateContainer" />
<ref bean="templateContainer" />
</list>
</property>
</bean>

</beans>

nc63 树管理型单据的开发的更多相关文章

  1. U9单据UI开发--单据类型UI开发

    1.在解决方案下新建UI界面项目,命名以UI作为后缀 2.先删除系统默认新建的UI界面数据模型,并新建界面数据 3.新建单据类型UIModel(界面数据),以model作为界面数据后缀名 4.修改单据 ...

  2. 基于xml 实现动态加载权限功能树列表---EFSFrame企业级开发架构

    在学习EFSFrame框架的过程中,感触最深的就是通过xml来实现前台与后台数据的交互,页面设计灵活,不用管后台如何写的,前台与后台的交互唯一的交互通道都是xml,在我们需要添加页面.添加规定的格式的 ...

  3. jeecg入门操作—树型表单开发

    树表类型表单 表单创建,基础配置如下: 1.设置表单类型为:单表; 2.是否树选择:是; 3.设置特殊字段:[树形表单父id][树开表单列] 结果测试

  4. Destoon系统目录树SEO属性目录开发实例

    如何在destoon里设置树形目录结构的SEO优化方式官方给的SEO伪静态实例是没有这个方式的 楼主后来想了一下,就干脆自己做一个吧,已经测试完全无误通过,特意分享给大家 目前比如sell模块下类别[ ...

  5. 驰骋工作流引擎-ccflow单据模式介绍与使用

    Ccflow单据模式 关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎.  表单引擎  表单单据模式增删改查   应用场景: 一些客户在使 ...

  6. 一、CoreAnimation之图层树详解

    CoreAnimation :在字面意思为“核心动画”,但是如果您认为它仅仅是一个动画框架,那可能就要错过一些经典功能了.动画,只是CoreAnimation功能的一小部分,毕竟人家的源头是一个叫做L ...

  7. ExtJS 4 树

    Tree Panel是ExtJS中最多能的组件之一,它非常适合用于展示分层的数据.Tree Panel和Grid Panel继承自相同的基类,所以所有从Grid Panel能获得到的特性.扩展.插件等 ...

  8. FineUI开发实践-目录

    点我订阅 目前所有博客的截图,方便离线观看,点图片 FineUI初学手册 下载,实例项目搭建 FineUI初学手册-部分JS整理 部分JS整理 ASP.NET-FineUI开发实践-1 实际开发环境是 ...

  9. FineUI开源版(ASP.Net)开发实践-目录

    点我订阅 目前所有博客的截图,方便离线观看,点图片 FineUI初学手册 下载,实例项目搭建 FineUI初学手册-部分JS整理 部分JS整理 ASP.NET-FineUI开发实践-1 实际开发环境是 ...

随机推荐

  1. [USACO06DEC] 牛奶模式Milk Patterns

    题目链接:戳我 我们知道后缀数组的h数组记录的是后缀i和后缀i-1的最长公共前缀长度,后缀的前缀其实就是子串. 因为是可以重复出现的子串,所以我们只要计算哪些h数组的长度大于等于x即可.这一步操作我们 ...

  2. WPF MVVM 网易云音乐

    前言: 写的不多. 随时会更新吧 涉及到的技术有很多 绑定 集合 命令 MVVM 自定义控件 事件 用户控件 附加属性 依赖属性 动画 Style Tmepate 装饰器 转换器 ********** ...

  3. list页面-按照choice筛选丶传condition过滤筛选项丶筛选与显示同步

    1.list页面:筛选功能优化,显示choices,传condition过滤筛选项 list_filter = [     # sites.FilterOption("name", ...

  4. 数组序列化serialize

    1,数据在网络中是以字符串形式传输,这样如果传输的是数组,首先将数组内容拼接成字符串进行发送,接收方拿到字符串,没法将其还原为数组.因此在网络传输的时候,为了保证数据类型的不丢失,先序列化,再发送. ...

  5. Java对象的大小及应用类型

    基础类型数据的大小是固定的,对于非基本类型的java对象,其大小就值得商榷了.      在java中一个空Object对象的大小是8byte,这个大小只是保存堆中没有任何属性的对象的大小,看下面的语 ...

  6. 【xsy1131】tortue FFT

    题目大意: 一次游戏要按N个按键.每个按键阿米巴有P[i]的概率按错.对于一串x个连续按对的按键,阿米巴可以得分 $f(x)=tan(\dfrac{x}{N})\times e^{arcsin(0.8 ...

  7. OAuth 2.0 - Authorization Code授权方式详解

    I:OAuth 2.0 开发前期准备 天上不会自然掉馅饼让你轻松地去访问到人家资源服务器里面的用户数据资源,所以你需要做的前期开发准备工作就是把AppKey, AppSecret取到手 新浪获取传送门 ...

  8. error 'there is already an open datareader associated with this command which must be closed first'

    This can be easily solved by allowing MARS in your connection string. Add MultipleActiveResultSets=t ...

  9. Filter应用之-验证用户是否已经登录

    过滤器: public class LoginFilter implements Filter{ @Override public void init(FilterConfig filterConfi ...

  10. Liunx安装Git

    环境:CentOS 6.5 min 安装git yum -y install gcc curl curl-devel zlib-devel openssl-devel perl cpio expat- ...