




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.系统概要设计OICS-20-01-系统概要设计v1.00微软(中国)有限公司顾问咨询部2007年7月修订说明修改日期修改人修改内容2007-7-31戴辉江V1.00发布1 系统架构1.1 业务模块1.2 系统模块1.3 接口服务模块2 主要用例逻辑说明2.1 查询列表2.1.1 界面设计2.1.2 逻辑图2.1.3 EntityBusinessDataQueryEntity1) 查询字段与值Property2) 当前页,页记录数,3) 是否取缓冲数据(数据为SESSION缓冲)4) 表,字段,条件(配置文件)BusinessDataQueryResultEntity1) 本次结果的查询字段与
2、值2) 总记录数,页记录数,当前页,总页数3) 数据记录集合(代码翻译附加,表头信息,)4) 执行过程状态标识2.1.4 配置文件BusinessDataQueryStringConfiguration<QueryCodes> <QueryCode Code =" 0001"> <TableName name=”UserInfo” ><Field name=”ID,username,DateTime” ><PageSize value=”20” > <Conditions> <Condition&
3、gt;UserID;EqualsTo</Condition> <Condition>TransactionDate;GreaterThan</Condition> <Condition>TransactionCode;EqualsTo</Condition> <Condition>BusinessStatus;EqualsTo</Condition> </Conditions> <AdConditions> <AdConditions>OrganizationId IN 90
4、15,9016,9018</AdConditions></AdConditions><AdInfo value=” > </QueryCode></QueryCodes>2.2 界面控件的生成2.2.1 界面设计2.2.2 逻辑图2.2.3 配置文件<QueryCodes> <表1 name=”用户表” key=”ID” ><字段1 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” ><字段2 name=”ID” discripe=”
5、 width=” MaxLength=” Type=” Code=” ><字段3 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” ><字段4 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” ><字段5 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” > </表1><表2 name=”用户表” key=”ID” ><字段1 name=”ID”
6、 discripe=” width=” MaxLength=” Type=” Code=” ><字段2 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” ><字段3 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” ><字段4 name=”ID” discripe=” width=” MaxLength=” Type=” Code=” ><字段5 name=”ID” discripe=” width=” MaxLength=”
7、Type=” Code=” > </表1></QueryCodes>2.3 应用数据新添/修改/删除2.3.1 界面设计2.3.2 逻辑图2.3.3 配置文件2.4 应用数据查询2.4.1 界面设计2.4.2 逻辑图2.4.3 配置文件<QueryCodes> <QueryCode Code =" 0001"> <TableName name=”UserInfo” ><Field name=”ID,username,DateTime” > <Conditions> <Condit
8、ion>UserID;EqualsTo</Condition> <Condition>TransactionDate;GreaterThan</Condition> <Condition>TransactionCode;EqualsTo</Condition> <Condition>BusinessStatus;EqualsTo</Condition> </Conditions> <AdConditions> <AdConditions>OrganizationId I
9、N 9015,9016,9018</AdConditions></AdConditions><AdInfo value=” > </QueryCode></QueryCodes>2.5 准实时处理2.6 联动处理2.6.1 流程设计说明:蓝色的为OICS部分,灰色的为CPC部分,红色框内的部分是联动处理整个过程。流程说明:1. 在相应的流程处理过程中,业务系统首先进行原有的授权处理(金额授权)。只有需要授权的业务才需要进行内控监测。2. 在授权处理后,业务系统继续原有的处理,直到获取了所有信息,并组织完核心请求报文。在完成后,业务系统
10、将这部分交易的内容发送到运营内控系统。3. 运营内控系统在对报文进行预处理后,首先通过过滤矩阵进行自动判定。在判定后通过报文回复业务系统,并将判定结果标志包含在应答消息中,以提示业务系统是否需要等待调查处理。4. 业务系统在极短的时间内获得应答,当应答报文中标志为不需要等待时,业务系统继续原有的流程;当应答报文中标志为需要等待时,业务系统挂起当前的流程,等待运营内控系统的调查处理结果。此时,业务处理岗位可以通过流程查看了解到当前的业务状态(例如:在运营内控系统进行人工调查状态)5. 当需要进一步调查时,运营内控系统通过调查处理功能模块对业务进行进一步的分析,并在分析完成后返回业务系统判定结果:
11、通过还是退回。此后,业务系统获取调查结论,以决定是继续业务处理还是返回该业务流程上一节点。2.6.2 逻辑图2.6.3 EntityCPCSOPEntity2.7 批后处理2.8 系统管理2.8.1 异常捕获2.8.2 日志管理2.8.3 缓存管理3 主要前台控件设计3.1 业务信息显示控件3.2 应用数据处理控件(?)4 主要系统配置文件说明4.1 业务数据库查询管理配置文件(2)4.2 通用字段信息配置文件5 与其他系统接口设计5.1 影像接口5.1.1 逻辑结构5.1.2 接口格式运营内控系统与总行影像调用总控的接口格式如下(影像组提供的原始接口材料):<?xml version=
12、"1.0" encoding="UTF-8"?><ImageSearch provide="要调阅的系统别名(约定配置)" orgid="调阅者机构号" userid="调阅者用户id" type="searchbusinessid"> <InitSoapAdd
13、ress>影像调阅平台WebService(固定)</InitSoapAddress> <InitSoapService>Service名称(固定)</InitSoapService> <InitSoapAction>方法名称(固定)</InitSoapAction> &
14、#160; <Input> <BusinessId>100000001</BusinessId>
15、 <EEId>203010303</EEId>
16、 <ImageId>20101011</ImageId> </Input></ImageSearch>Provide: 调阅的系统别名:业务集中系统,核心系统,单证系统,个贷系统 (双方事先约定配置)orgid: 发起调阅的用户所在机构userid: 发起调阅的用户号type: 调阅方式,如一般方式和高亮显示(双层模版叠加,突出要查阅的区域)InitSoapAddress: 影像调阅平台的WebService地址InitSoap
17、Service: 影像调阅平台的WebService名称InitSoapAction: 影像调阅平台的WebService方法名称以上三项都为双方事先约定。在Input项下:BusinessId,EEId,ImageId都为不同系统的业务流水号,建议根据不同影像源确认好相关的流失号,然后确认统一的流水号参数输入,接口根据不同的影像调阅系统替换成相关的流水号。5.2 数据仓库接口5.2.1 接口规范建议采用Web Service通讯机制,以获取最佳的跨平台、异构系统的通讯。消息数据类型遵循XML语言定义规范, 调用采用SOAP调用方法。消息承载在HTTP协议上。所有SOAP调用的XML编码均采用
18、UTF-8方式5.2.2 消息格式请求消息建议一:采用直接传输SQL语句的方式名称说明SqlStatement对数据仓库查询的Select指令(为了满足分页显示的需求,所有的查询均需要排序)LastRecord上一次查询返回的最后纪录编号RowSet每次返回的纪录行数这种做法需要通过严格的操作权限设定确保数据访问的安全性。例如,操作、访问对象、访问方式等的限定。优点:查询语句不用服务端构造,只需要执行语句。缺点:需要通过严格的操作权限设定确保数据访问安全性。建议二:通过Schema的形式传输查询要素,由数据仓库段负责生成查询语句优点:安全性比较高,用户只能在预先设置的范围进行查询,不能做其他修
19、改类操作。缺点:需要数据仓库构造完整的查询语句。名称说明SqlStatementElements包括查询所需要的元素,供数据仓库组织查询语句LastRecord上一次查询返回的最后纪录编号RowSet每次返回的纪录行数Xmlschema截取(SqlStatementElements部分):<?xml version="1.0" encoding="utf-8"?><xs:schema id="NewDataSet" xmlns="" xmlns:xs="/
20、2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xs:element name="SQLStatementElements"> <xs:complexType> <xs:sequence> <xs:element name="AggregationKey" type="xs:string" minOccurs="0" /> <xs:el
21、ement name="Join" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="JoinFlag" type="xs:string" minOccurs="0" /> <xs:element name="JoinMethod" type="xs:string" m
22、inOccurs="0" /> <xs:element name="JoinKeyColumn" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Table" minOccurs="0" maxOccurs="unbounded"> <x
23、s:complexType> <xs:sequence> <xs:element name="TableName" type="xs:string" minOccurs="0" /> <xs:element name="ColumnName" nillable="true" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:simp
24、leContent msdata:ColumnName="ColumnName_Text" msdata:Ordinal="0"> <xs:extension base="xs:string"> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs
25、:element name="Conditions" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="Condition" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element
26、name="ConditionColumn" type="xs:string" minOccurs="0" /> <xs:element name="ConditionOperator" type="xs:string" minOccurs="0" /> <xs:element name="ConditionValue1" type="xs:string" minOccurs="0" />
27、; <xs:element name="ConditionValue2" type="xs:string" minOccurs="0" /> <xs:element name="ConditionConnection" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence>
28、; </xs:complexType> </xs:element> <xs:element name="OrderBy" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="OrderKey" type="xs:string" minOccurs="0" /> <xs:elemen
29、t name="OrderSort" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Group" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:e
30、lement name="Groupkey" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="NewDataSet" msdata:IsDataSet="true" msd
31、ata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element ref="SQLStatementElements" /> </xs:choice> </xs:complexType> </xs:element></xs:schema>消息内容示例:<?xml version
32、="1.0" encoding="utf-8" ?><SQLStatementElements> <AggregationKey>Count</AggregationKey> <Join> <JoinFlag>0</JoinFlag> <JoinMethod>inner</JoinMethod> <JoinKeyColumn>Column1</JoinKeyColumn> </Join> <Table> &
33、lt;TableName>TableName</TableName> <ColumnName>Column1</ColumnName> <ColumnName>Column2</ColumnName> </Table> <Conditions> <Condition> <ConditionColumn>Column1</ConditionColumn> <ConditionOperator>LESSTHAN</ConditionOperator>
34、 <ConditionValue1>100</ConditionValue1> <ConditionValue2></ConditionValue2> <ConditionConnection>OR</ConditionConnection> </Condition> </Conditions> <OrderBy> <OrderKey>Column</OrderKey> <OrderSort>DESC</OrderSort> </Or
35、derBy> <Group> <Groupkey>Column</Groupkey> </Group></SQLStatementElements>应答消息名称说明QueryResult查询结构矩阵LastRecord最后一条纪录的编号QueryFlag查询是否结束ErrorMessage返回查询中出现的错误Xmlschema:<?xml version="1.0" encoding="utf-8"?><xs:schema xmlns="" xmlns
36、:xs="/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="NewDataSet"><xs:element name="OICSRequest"><xs:complexType><xs:sequence><xs:element name="QueryResult" minOccurs="0" maxOc
37、curs="unbounded"><xs:complexType><xs:sequence><xs:element name="Row" minOccurs="0" maxOccurs="unbounded"><xs:complexType><xs:sequence><xs:element name="ColumnResult" nillable="true" minOccurs="0"
38、; maxOccurs="unbounded"><xs:complexType><xs:simpleContent><xs:extension base="xs:string"/></xs:simpleContent></xs:complexType></xs:element></xs:sequence></xs:complexType></xs:element></xs:sequence></xs:complexType&
39、gt;</xs:element><xs:element name="LastRecord" type="xs:string" minOccurs="0"/><xs:element name="QueryFlag" type="xs:string" minOccurs="0"/><xs:element name="ErrorMessage" type="xs:string" minOccurs=&
40、quot;0"/></xs:sequence></xs:complexType></xs:element><xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"><xs:complexType><xs:choice minOccurs="0" maxOccurs="unbounded"><x
41、s:element ref="OICSRequest"/></xs:choice></xs:complexType></xs:element></xs:schema>消息内容示例:<?xml version="1.0" encoding="utf-8" ?><OICSRequest xmlns:xsd="/2001/XMLSchema"> <QueryResult> <Row> &l
42、t;ColumnResult>ColumnResult11</ColumnResult> <ColumnResult>ColumnResult12</ColumnResult> <ColumnResult>ColumnResult13</ColumnResult> </Row> <Row> <ColumnResult>ColumnResult21</ColumnResult> <ColumnResult>ColumnResult22</ColumnResult&g
43、t; <ColumnResult>ColumnResult23</ColumnResult> </Row> <Row> <ColumnResult>ColumnResult31</ColumnResult> <ColumnResult>ColumnResult32</ColumnResult> <ColumnResult>ColumnResult33</ColumnResult> </Row> </QueryResult> <LastRecord
44、>ColumnResult31</LastRecord> <QueryFlag>1</QueryFlag> <ErrorMessage>000000</ErrorMessage></OICSRequest>5.3 业务集中系统(CPC)接口5.3.1 数据源分析CPC系统中相关表结构及其关系如下:CPC DB:Table NameDescriptionSOPTaskDetailCPC调用核心交易,保存每次调用的结果,存储核心流水号与CPC任务流水号对应的关系WorkflowTaskDataCPC每笔流程对应的任务节点
45、,保存每个任务节点相关参数,存储CPC任务流水号与CPC业务流水号对应的关系Workflow DB:Table NameDescriptionWorkflowBusinessCPC每笔流程在工作流中对应的流程数量,如果一个CPC有1个主流程和1个子流程,那对应的InstanceId就有2个。存储CPC流水号与流程流水号对应的关系。WorkflowInstance每个InstanceId对应的相关信息,比如描述、发生时间WorkflowBusinessData每个InstanceId对应的工作流参数,存储每个流程流水号下流程内参数值CPC DB和 Workflow DB之间通过BusinessI
46、d来关联。上述几张表涉及字段很多,只有很少部分才是核心流水号对应验印结果标志用的到的,以下列出所需要的字段:Table NameField NameField TypeField DescriptionSOPTaskDetailSOPTaskIdIntCPC调用SOP流水号CPCTaskIdIntCPC节点流水号UserSSNVarchar(12)柜员流水号SOPSSNVarchar(12)后台流水号WorkflowTaskDataCPCTaskIdIntCPC节点流水号BusinessIdVarchar(20)CPC业务流水号WorkflowBusinessInstanceIdVarchar(40)工作流流程流水号BusinessIdVarchar(20)CPC业务流水号WorkflowInstanceInstanceIdVarchar(40)工作流流程流水号ParentTaskIdVarchar(40)父流程节点流水号WorkflowBusinessDataInstanceIdVarchar(40)工作流流程流水号ParameterKeyVarchar(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合伙出资开店经营合同范本
- 厚街工厂蔬菜配送合同范本
- 展会广告服务合同范本
- 木材粉碎合同范本
- 乡级学校保安合同范本
- 2025年静止无功发生器项目建议书
- 卫浴拆装服务合同范本
- 加盟酒店品牌合同范本
- 原木板材加工合同范本
- 生鲜业务采购合同范本
- 2023年第九届中国国际互联网+大学生创新创业大赛解读
- 直播电商可行性分析
- 建筑工程施工安全管理网络图
- 电子商务法律法规高职PPT完整全套教学课件
- 人教版四年级数学下册教材分析精讲课件
- 《龙族设定全解析》
- 产品手绘设计表现技法PPT完整全套教学课件
- GA/T 1988-2022移动警务即时通信系统功能及互联互通技术要求
- 农业政策学PPT完整全套教学课件
- 国家电网招聘之其他工学类复习资料大全
- 天山天池景区介绍-天山天池景点PPT(经典版)
评论
0/150
提交评论