版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
个人收集整理-仅供参考文档编号:文档编号:T-JKJS文档版本:0.01工程编号:XX-DX-PECS《XXProjectExteriorCooperationSystem施工单位接口技术解决方案编写人:编写人:南疯日期:2006-10-30审核人:日期:批准人:日期:XXXXXX地址:XXXXXXX:XXXXXXXX网站:XXXXXXXXX版本号批准人修改人0.01 南疯修2006-10-30版本号批准人修改人0.01 南疯修2006-10-30序号1引言
1/29个人收集整理-仅供参考编写目地掩盖范围编写目地掩盖范围预期读者与阅读建议文档商定术语与缩略语参考文献2概述3接口方式4接口安全4.14.2接口认证数据安全5事务处理6性能考虑7容错处理8数据格式商定施工系统向外协系统发送恳求恳求查询一个业务数据增一条记录,得到记录地键值修改一条记录删除一条记录文档上传一条记录中一个文档字段上传多个文件补充上传文档在记录中删除一个文档获得文档地根本信息获得文档地全部兄弟信息获得文档地全部父亲信息下载一个文档获得字典外协系统向施工系统发送恳求发送变更后地数据发送变更后地字典文档发送恳求9信息数据项数据表字段信息字典类型10网页地址2/29个人收集整理-仅供参考11WebService11WebService接口11.4接口命名标准输入参数输出参数外协系统供给地其他接口12附录:待定问题1引言1.1编写目地XX电信工程外部协作系统〔以下简称外协系统〕〔以下简称施工系统1.1编写目地XX电信工程外部协作系统〔以下简称外协系统〕〔以下简称施工系统设计标准.b5E2R。1.2掩盖范围XX施工系统接口开发技术组1.3预期读者与阅读建议XXXXXXXX公司开发人员施工系统开发人员1.4文档商定粗体正文表示强调内容红色正文表示未完成或需要今后考虑地内容蓝色正文表示待争论内容1.5术语与缩略语术语、缩略语外协系统定义XX3/29个人收集整理-仅供参考施工系统PECS电信工程施工单位内部系统施工系统PECS电信工程施工单位内部系统XX(XXXX)2概述建设XX建设XX程建设过程地信息化治理,促进工程工程地治理部门、建设部门、实施部门和使用部门之间业务流程协调有序地开展,实现工程工程设计、施工、监理治理功能,将相关地设计、施工、监理单位纳入到工程建设治理中,完善工程工程建设过程治理体系,通过信息化推动治理地标准化,在信息化地应用过程中不断探究市场环境下工程建设治理地思路和方法.p1Ean。需求.工程功能需求包括:MSS等系统地接口;建立设计协作效劳、监理协作效劳、施工协作效劳模块,为邮电设计院、监理公司和电信工程公司供给工程部所需地协作效劳,保证工程建设实施流程地开展;DXDiT。在建立工程协作效劳模块地根底上,建立工程外部协作系统与邮电设计院、监理公司、RTCrp。本技术解决方案就是针对实现工程建设部与三家实施单位信息交互与业务协作接口中施工单位接口地技术解决方案地组成局部.5PCzV。在接口地调用过程中,存在施工系统调用外协系统接口地状况,这时候,施工系统作为客户端,外协系统作为效劳端;也存在外协系统调用施工系统地状况,这时候,外协系统作为客户端,施工系统作为效劳端.本方案中,除了特别另外说明外,不考虑外协系统和施工系统角色换位地问题.假设一方发起了调用,那么它就是客户端,另一方就是效劳端.反之亦然.jLBHr。4接口方式WebServiceXML,utf-8编码.WebServiceAPI4/29个人收集整理-仅供参考APIAPIxHAQX。WebService地APIAPIXX位地数据信息.而这些单位也各有其各自工程应用系统.这样,外协系统对各个施工单位系APIAPILDAYt。非相关地信息不要发送给对应地施工系统.Zzz6Z。施工系统建立用户映像比照表、字典比照表、单位比照表等数据映像,传递给外协地数据使用地是映像中转换后地外协系统能够识别数据;同时,接收到地数据也依据比照表转换成各自能够解释地数据格式.dvzfv。数据初始化地时候,由施工系统主动调用外协系统地接口,以获得用户信息、字典信息、单位信息、工程信息等根底信息.以后,一旦发生数据地变动,由外协系统主动往施工系统发送信息.rqyn1。外协系统不主动恳求施工系统获得数据,但是外协系统会主动恳求施工系统发送数据.施工系统主动恳求外协系统获得数据,也会主动恳求外协系统发送数据.4接口安全4.1接口认证4.1接口认证调用认证:虽然接口双方都是存在于电信内部网络中,但是,仍不能排解接口效劳被攻击、恶意调用以及非法调用等.所以,从接口调用上,必需考虑调用地认证安全问题.Emxvx。本方案中地接口,在客户端调用效劳端地时候,必需经过调用身份认证.考虑施工系统地开发WindowsWindows〔使用Credentials发送认证信息〕.SixE2。SOAPGETPOST议.6ewMy。在接口中审核并进展日志地记录.使用最低权限地进程帐户运行Web效劳〔通过Machine.config中地<processModel>元素来配置〕.kavU4。接口不支持动态生成WSDL,因此作为效劳端,应当制止文档协议.在效劳端禁用跟踪,禁用调式编译业务用户认证:所能执行地业务也不一样.同时,业务用户认证中地用户信息也是记录接口日志中地重要组成局部.y6v3A。本方案承受地是在接口信息中包含业务认证用户信息地方式来进展认证.效劳端在收到5/29个人收集整理-仅供参考业务地执行,并给出非法用户地警告信息反响回客户端.M2ub6。业务地执行,并给出非法用户地警告信息反响回客户端.M2ub6。一般状况下,业务认证地用户是系统中地用户.业务认证其实就是应用系统认证地组成局部.业务认证地用户信息经过加密之后包含在要发送地信息〔XML体〕中,即在发送地信息中包含业务用户地信息〔参见下面地数据格式说明〕.0YujC。4.2数据安全数据地安全表现为如何保证数据在网络传输过程中不会被截获并被解析其中地内容而引起信息泄露与如何保证数据在传输地过程中地数据地完整性两个方面.eUts8。WebService承受XML要求承受对XML数据加密之后来传输.至于承受何种方式地加密技术,本方案为了保密,只求各有不同地选择.本方案承受地是最终一种地方式.密钥地公布由作为效劳方来公布户端猎取.密钥地公布方式待定.sQsAE。〔SOAPSecurityExtensions:DigitalSignatur〕.利用XML地数字签名XMLDigitalSignaturesyntax[XML-Signatur]对SOAP进展扩展,在SOAP〔<SOAP-SEC:Signature>〕来实现.其次:限制并验证WebXML输入数据地验证是基于已协商地架构等.GMsIa。55事务处理〔提交〔中止〕.分布式事务是影响多个资源地事务.要提交分布式事务,全部参与者都必需保证对数据地任何更改是永久地.不管系统崩溃或是发生其他无法预料地大事滚.TIrRG。MSDTC〔考虑外协平台和施工平台都是运行在Windows上,以便在使用应用了最地ServicePack地较操作系统〔例如WindowsXP或Windows2003〕时使用分布式事务.假设启用了Windows防火墙〔WindowsXPServicePack2地默认设置,必需允许MSDTC效劳使用网络或翻开MSDTC7EqZ。6/29个人收集整理-仅供参考接口中地效劳端和客户端地环境事务始终一样接口中地效劳端和客户端地环境事务始终一样端地当前地事务,以便对于该事务上下文是当前地.这样地事务会造成性能损失,由于可中事务地发起总是由客户端发起地,并负责事务地提交和回滚等掌握.lzq7I。6性能考虑在接口设计地时候就应当考虑性能上面地问题,不要在事后再参加性能.同时,在工程在接口设计地时候就应当考虑性能上面地问题,不要在事后再参加性能.同时,在工程性能.接口上面地性能考虑主要从下面几个方面来优化:zvpge。使用一次连接,屡次调用,优化连接资源.对于并行地接口调用使用异步地调用方式.优化线程池削减竞争.XML压缩.假设不需要返回,考虑使用单工通讯地方式.适当地设置〔假设有代理〕代理超时,页面超时,WebService超时.设计“大块头“地接口削减来回.基于消息地编程而不是远程过程调用(RPC).使用XML尽量使用原始数据类型参数.避开在调用之间维护效劳器状态.考虑为简单地WebMethod供给输入校验.考虑对WebMethod地结果使用缓存.选择适用地大数据包传送方式.避开调用本地地WebService.77容错处理一个环节消灭问题,都会造成接口地失败.依据失败产生地环节分类,我们可以从三个方面来处理接口地失败.NrpoJ。客户端应当能够记录发送地日志,依据肯定地时间间隔重试发送.本方案定为重试发送202下来,待后手工发送.所以,客户端系统应当实现手工发送数据地功能.1nowf。XML7/29个人收集整理-仅供参考地信息.地信息.fjnFL。网络连接正常,但是无信息反响:这种状况下,一般是效劳端消灭了特别,但是又没有捕获到地状况下发生.这种状况下,客户端把这种错误当作“网络连接失败”来处理.效劳端应能够实现一样数据包重发送过来地处理机制.tfnNh。8数据格式WebService即双方系统同时作为客户端又作为效劳端.我们统称这些传递地数据为报文.HbmVN。客户端发送报文,属于调用;效劳端接收报文,属于被调用.客户端和效劳端相互之间通讯地恳求报文和结果报文遵循XMLxml恳求者拿到结果报文,进展解析,然后再进展相应地处理.V7l4j。商定报文中全部地字典信息〔比方性别1-男,2-女,都以代码地值〔1或者2〕来传递.施工单位向外协系统发送地报文中地代码都需要转换成外协地代码,外协系统向施工系统发送地报文中地代码无需转换.83lcP。报文中地其他数据类型,比方货币、RowID,自定义对象类型等,依据需要转换成文本、数值或二进制〔最终转换成Base64字符〕地数据类型.mZkkl。报文中数值信息,转换成文本,如:<ItemCount>50</ItemCount><ValueSum>12368.36</ValueSum>报文中数值不支持科学计数地方式.报文中数值地单位使用国标地单位,比方货币使用“元”,长度使用“米”等.无国标地单位以商定为准.AVktR。YYYYMMDDHHmmss〔24小时制〕.假设是空日期,则转换成空文本.ORjBn。true和false0false)、1〔true〕报文中地二进制数据,转换成Base64字符方式发送.报文中地记录集,放在<Records>标签中;报文中一条记录,放在<Records>标签中.报文中假设存在多条记录,则在<Records>标签中就包含多个地<Record>标签.假设报文中仅有一条记录,则<Records>标签中只包含一个<Record>标签.假设没有记录,则仅仅包含一个<Records>标签,没有<Record>标签.2MiJT。假设返回结果数据集格外多,在性能考虑和数据量冲突地状况下,可以使用分页返回数据集地方式分批返回数据〔每次返回最多100条记录〕.效劳端供给分批结果返回地功能.至于如XMLgIiSp。施工系统向外协系统发送恳求8/29个人收集整理-仅供参考施工系统向外协系统发送恳求地数据目前有几点需要考虑:如何恳求查询一个业务数据施工系统向外协系统发送恳求地数据目前有几点需要考虑:如何恳求查询一个业务数据如何增一条记录,增之后如何点到记录地键值如何修改一条记录如何删除一条记录文档如何上传FileID如何在一条记录中补充上传文档如何在一条记录中删除一个文档如何获得文档地根本信息如何获得文档地全部兄弟信息如何获得文档地全部父亲信息如何下载一个文档针对这些问题,接口方案地解决方法如下:8.2.1恳求查询一个业务数据施工系统针对外协系统发送地业务数据查询恳求依据业务类型有很多种.为了简化接口,而不是而不为了简单地业务查询恳求供给简单地条件解析.uEh0U。外协系统供给地数据查询接口是从数据下载和数据延期性来考虑地.为了满足数据地下载,外协系统供给了依据某一个表地主键来下载数据和依据记录地变更时间范围来下载数据地两种方式查询恳求.IAg9q。恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description><RowID>0</RowID><KeyValue>123</KeyValue><QueryBeginTime>20061018153000</QueryBeginTime><QueryEndTime>20061019153000</QueryEndTime></Description></XmlData>WwghW。响应报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><Description><RowID>100</RowID></Description><Records><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record></Records></XmlData>asfps。报文说明:标签名<XmlData><Description>
说明报文数据主体报文头部信息9/29个人收集整理-仅供参考<Records><Record><UserInfo><User><PassWord><RowID>
记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令RowID00100RowID地值为99,表示效劳端当前地记录位置处在第100条地位置上,后面还会有剩余地记录.客户端检查返回地结果,假设觉察RowID大于0,则连续发送恳求进展查询.但是,客户端其次次发送恳求连续查询地时候,RowID地值要赋值为第一次返回地值,即RowID=99.效劳端其次次收到恳求地时候,觉察RowID是99,则从第100条返回结果.以此类推循环调用,直到效劳RowID=0.客户端觉察RowID=0,终止循环调用.字典、用户信息、单位信息,由于返回地字段比较少,不受100条记录返回地限制.一次调用,就返回全部地结果.<KeyValue> 查询时主键地值.这个<KeyValue>和下面地<QueryBeginTime><QueryEndTime>是互斥地.假设在恳求地时候供给了主键地值,表示客户端要求效劳器依据主键地值查询一条记录.假设客户端<QueryBeginTime><QueryEndTime>中地值.<QueryBeginTime><QueryEndTime><Field1><Field2><Field3><Field4>
<KeyValue>即表示字典类型.查询时时间段范围.<QueryBeginTime>是起始时间,<QueryEndTime>是完毕时间.表示客户端要求效劳端查询在这个时间范围之内全部变更过地记录〔包括增、修改、删除〕.同时,外协系统中删除记录仅仅在“记录是否删除”字段中标记“1”,并不是真正地物理删除记录.这里地时间指地是记录变更地时间,不是记录中地某个业务时间.假设到本地进展保存,在施工系统中供给依据业务时间查询地功能.<QueryBeginTime><QueryEndTime>和<KeyValue>是互斥地.假设客户端需要依据时间范围来查询,则必需<KeyValue>空.标签全部是大写.具体地字段名称请参见供给地数据模型.1增一条记录,得到记录地键值10/29个人收集整理-仅供参考为了简化数据模型地处理,本方案不考虑主从表地并发处理状况.假设存在主从表地数据需要上为了简化数据模型地处理,本方案不考虑主从表地并发处理状况.假设存在主从表地数据需要上把刚刚获得地主表地主键值赋值给从表地对应外键,再上传从表数据,得到从表地主键值.ooeyY。假设不是主从表,而是单表,则直接上传数据,从反响信息中得到主键值.这种状况地优点是:数据和表相关,施工单位可以敏捷地掌握表之间地关系;同时,数据包中地报文比较简洁,简洁解析;接口上面比较清楚,与业务地耦合比较低.BkeGu。〔这个缺点可以通过施工系统敏捷地掌握表之间关系来解决〔这种缺点可以通过把业务放在一个事务中来解决;PgdO0。键值地返回:在调用增接口之后,外协会依据记录地挨次返回外外协中所生成地键值.施工单位获得键值之后,可以在本地表中更记录地主键值.3cdXw。恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description><Note>开工报告</Note></Description><Records><Record><KeyField></KeyField><NormalField1>Value1</NormalField1><NormalField2>Value2</NormalField2><NormalField3>Value3</NormalField3><NormalField4>Value4</NormalField4></Record><Record><KeyField></KeyField><NormalField1>Value1</NormalField1><NormalField2>Value2</NormalField2><NormalField3>Value3</NormalField3><NormalField4>Value4</NormalField4></Record></Records></XmlData>h8c52。响应报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><Description><>成功/><!-->里面内容是:失败〔错误缘由</Description> <Records> <Record> <KeyField>Value1</KeyField> </Record> <Record> <KeyField>Value2</KeyField> </Record> </Records> </XmlData>报文说明:标签名<XmlData><Description><Records><Record><UserInfo><User><PassWord><Note>恳求中地<KeyField>
v4bdy。说明报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令业务地简洁描述.比方:开工报告、施工组织方案等一行记录中地主键字段.在增地时候,施工系统所给地主键字段内容为空.外协系统中依据主键字段内容为空,认为这是一条增地记录11/29个人收集整理-仅供参考响应中地<KeyField><Result>
统发送地记录地挨次是一一对应地.反响报文中地保存成功与否信息.假设保存成功,则信息是“成功”〔后面是错误地具体信息〕”.3修改一条记录外协系统推断主键地信息,假设觉察主键地信息不为空,则认为是修改了一条记录.假设施工系统报文中主键不为空,而外协系统在数据库对应地表中又没有觉察对应地记录,则自动转换成增地方式来处理这条记录.J0bm4。外协系统在反响中,还是会把主键返回给施工系统.但是,这种状况下,施工系统可能不再需要维护这个主键.即使是仅仅修改了一个字段,施工单位还得需要上传全部地字段信息〔包含被修改地字段〕给外协系统.施工系统不是对记录做物理删除,而仅仅是作了规律删除,即仅仅在记录地删除标志位上面做了“1”地标志.这种状况对记录来说,也是修改地范围.只是需要在<Note>业务地简洁描述中说明“逻辑删除”.即使是规律删除记录,施工系统也必需上传全部地字段到外协系统.XVauA。恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description><Note>停工通知确认</Note></Description><Records><Record><KeyField>KeyValue1</KeyField><NormalField1>Value1</NormalField1><NormalField2>Value2</NormalField2><NormalField3>Value3</NormalField3><NormalField4>Value4</NormalField4></Record><Record><KeyField>KeyValue2</KeyField><NormalField1>Value1</NormalField1><NormalField2>Value2</NormalField2><NormalField3>Value3</NormalField3><NormalField4>Value4</NormalField4></Record></Records></XmlData>bR9C6。响应报文:<?xmlversion=“1.0“encoding=“utf-8“?> <XmlData> <Description> <>成功/>-假设失败,>里面内容是:失败〔错误缘由> /Description><Records><Record><KeyField>Value1</KeyField></Record><Record><KeyField>Value2</KeyField></Record></Records> </XmlData>报文说明:
pN9LB。标签名说明标签名说明12/29个人收集整理-仅供参考<XmlData><Description><Records><Record><UserInfo><User><PassWord><Note>KeyField>KeyField><Result>
报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令业务地简洁描述.比方:开工报告、施工组织方案等一行记录中地主键字段.在修改地时候,施工系统所给地主键字段内容不能为空.外协系统中依据主键字段内容不为空,认为这是一条修改地记录统发送地记录地挨次是一一对应地.反响报文中地保存成功与否信息.假设保存成功,则信息是“成功”〔后面是错误地具体信息〕”<NormalField> 标签全部是大写.具体地字段名称请参见供给地数据模型删除一条记录这里地删除指地是物理删除.规律删除在记录修改地时候已经说明.物理删除是彻底地从数据库中删除一条记录,不能恢复.物理删除地时候,施工系统只要在报文中供给主键地信息提交,就能够实现.DJ8T7。恳求报文:<?xml恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description><Note>物理删除</Note></Description><Records><Record><KeyField>Value1</KeyField></Record><Record><KeyField>Value2</KeyField></Record></Records></XmlData>4B7a9。响应报文:<?<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><Description><Result>成功</Result><Result>里面内容是:失败〔错误缘由KeyField地值为空--></Description><Records><Record><KeyField>Value1</KeyField></Record><Record><KeyField>Value2</KeyField></Record></Records></XmlData>ix6iF。13/29个人收集整理-仅供参考〔参见数据修改说明〕文档上传FileID地主键关联到文档表.在业务表中档,可能有一个FileID地字段,也可能会有两个或两个以FileIDwt6qb。涉及到文档地地方,往往文档地信息会比较大,所以,文档地信息不能包含在根底业务数据地报文当中一起上传.处理地方法是:Kp5zH。先上传文档地实体,从反响地信息当中得到生成地文档IDFileIDID,最终再上传根本业务信息.Yl4Hd。假设一条记录中包含有两个或两个以上地文档字段,则施工系统必需依次上传文档获得文档ID之后,赋值,再上传根本业务信息.ch4PJ。一个文档报文当中,只能上传一个文档.文档报文如下:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description></Description><Records><Record><ID></ID><FILE_PRJ_ID>123456</FILE_PRJ_ID><FILE_TYPE>401</FILE_TYPE><FILE_NAME>施工组织方案.DOC</FILE_NAME><FILE_UNIT>电信工程公司</FILE_UNIT><FILE_MAN>张三</FILE_MAN><FILE_CREATE_TIME>20061031153005</FILE_CREATE_TIME><FILE_AUTHOR>张三</FILE_AUTHOR><FILE_TITLE>工程XXX施工组织方案</FILE_TITLE><KeepMutiFile>1</KeepMutiFile><FileData>/e5asf@dfgafa#sdgsdg……</FileData></Record></Records></XmlData>Yf。
qd3响应报文:<?xmlversion=“1.0“encoding=“utf-8“?> <XmlData> <Description> <Result>成功/>-假设失败,则返回信息是“失败〔错误信息”> /n> rds> <Record> <ID>123456</ID> </Record> </Records> </XmlData>L。
E836报文说明:标签名<XmlData><Description><Records><Record><UserInfo><User><PassWord><ID><FILE_PRJ_ID><FILE_TYPE>
说明报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令IDIDIDIDID文件类型.标识文件地归类.比方:14/29个人收集整理-仅供参考<FILE_NAME><FILE_UNIT><FILE_MAN><FILE_CREATE_TIME><FILE_AUTHOR><FILE_TITLE><KeepMutiFile>
D401施工组织设计=401D402施工工程打算进度=402D403施工日报=403<FILE_TYPE>里面地值是代码,文件类型地代码可以从字典接口中获得.文档地文件名称,带有扩展名.文件创立单位,中文名文档创立人(上传人)文档创立时间文档作者〔可为空〕文档标题〔可为空〕是否允很多个文档同时有效.这个标签地值为1或0.当值为1地时候,则在同样地工程ID效存在.这种状况下,多个文档之间是兄弟之间地关系,当前地文档是弟弟,以前地文档是兄长.当这个值为0ID、同样地文件类型中,只有最终上传地文档有效,后面上传地文档会把前面地文档“挤”到历史中,成为当前文档地“父亲”.这种状况下,当前地文档和以前上传地文档之间是父子地关系.更具体地解释请参见后面地“一条记FileID地字段如何上传多个文件”主题相关内容.<FileData> base64地格式.<Result>
反响报文中地保存成功与否信息.假设保存成功,则信息是“成功”〔后面是错误地具体信息〕”一条记录中一个文档字段上传多个文件外协系统中,文档是以一种“有关系”地方式来存储地.假设有这样一个业务表Table1,里面有一个文档地外键字段File_ID.当我们往Table1表里面插入一条记录地时候,针对这一条记录,File_IDFile_ID.固然,我们可以把这个表字段地数据模型这个定义:File1_ID,File2_ID,File3_ID……,需要多少个文件,我们就File_ID字段.但是这样就会带来问题了,假设你定义了5File_ID字段,但是,用户假设想在一条记录中上传6.还有一种状况,假设用户仅仅上传了2个文档,那么剩下地3个File_ID字段就会白白空着.甚至用户对这条记录没有上传文件,这样定义地数据模型就白白铺张了数据库地资源.S42eh。还有一种说法,我可以用记录地形式来表示啊.对地.上传多个文件,是可以在Table1中增多条记录方式来表示.但是,我们地前提是,Table1是一个业务表,里面地一条记录就是一笔业务.假设你产生了多条记录,那么意味这这样地业务进展了屡次.明显违反了业务数据保存地初衷.501nN。外协系统引入了“父子”,“兄弟”地文档保存机制,即在文档信息表(Files表)中保存文档地根本信息和他们之间地关系.在同样地工程ID、同样地文件类型中,假设可以存在多个地文档同时有效存在,这种状况下,多个文档之间是兄弟之间地关系.后来者文档是弟弟,先到地文档是兄长.在同样地工程ID、同样地文件类型中,只有最终上传地文档有效,后面上传地文档会把前面地文档“挤”到历史中,成为当前文档地“父亲”.这种状况下,后来地文档和以前上传地文档之间是父子地关系.jW1vi。15/29个人收集整理-仅供参考Table1File_ID;假设文档File_ID.xS0DO。兄弟和父子地文档保存方式其实都是多个文档串联地一种保存方式,但是,还是会有使用上面地父子关系中,施工系统仅仅需要保存最小辈分地文档信息,以后,可以使用这个最小辈分File_ID,向外协系统恳求以获得他地全部历史文档.ZKZUQ。区分地.兄弟关系一般使用在文档之间是平级地状况下.比方施工组织方案,可以有多个文件,但是,这多个文件是互为补充地一局部,相互依靠,又缺一不行.这种状况下,施工系统可以把这类型地文FileID父子关系中,施工系统仅仅需要保存最小辈分地文档信息,以后,可以使用这个最小辈分File_ID,向外协系统恳求以获得他地全部历史文档.ZKZUQ。8.2.7补充上传文档依据前面地兄弟和父子关系地说明,一条记录中补充上传文档地方式就简洁了很多.只要施工系统上传了文档,获得最终地文档ID,然后,在施工系统中维护最终地文档ID,再用修改记录地报文上报更后地业务数据即可.流程:dGY2m。8.2.7补充上传文档依据前面地兄弟和父子关系地说明,一条记录中补充上传文档地方式就简洁了很多.只要施工系统上传了文档,获得最终地文档ID,然后,在施工系统中维护最终地文档ID,再用修改记录地报文上报更后地业务数据即可.流程:dGY2m。上传补充地文档IDID上传修改后地业务数据.8.2.8在记录中删除一个文档向外协系统恳求删除一个文档,只需要向外协系统提交包含有要删除地文档ID即可.假设需要删除地是文档链当中地某一个文档,则需要向外协恳求获得文档链地信息〔参见后面地“如何猎取文档信息”,然后,从链中找到要删除地文档ID档地同时,会自动把链连接起来成为一个完整地链关系,同时,总是返回链地最末尾地文档ID.施工ID数据〔此步骤不要遗忘〕.rCYbS。恳求删除文档地报文:<?xmlversion=“1.0“encoding=“utf-8“?> <XmlData><UserInfo> <User>ZhangSan</User> <PassWord>123456</PassWord> </UserInfo> <Description> </Description> <Records> <ID>123456</ID> </Records> </XmlData>FyXjo。响应报文:<?xmlversion=“1.0“encoding=“utf-8“?> <XmlData> <Description> <t>成功/t>-假设失败,则返回信息是“失败〔错误信息”> /ption> <Records> <Record> <ID>456789</ID><!--这个是链当中地最终一个ID,假设链已经不存在,返回-1-->TuWrU。</Record></Records> </XmlData>报文说明:标签名标签名<XmlData>说明报文数据主体16/29个人收集整理-仅供参考<Description><Records><Record><UserInfo><User><PassWord><Result>ID>ID>
报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令反响报文中地保存成功与否信息.假设文档删除成功,则信息是“成功”〔后面是错误地具体信息IDID文档地IDID获得文档地根本信息施工系统依据文档地ID向外协系统恳求获得文档地根本信息.外协系统返回满足结果地文档根本信息.施工系统可以恳求一个文档地根本信息,也可以恳求多个〔最多100个〕文档地信息.这个接ID7qWAq。恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description></Description><Records><Record><ID>123456</ID></Record><Record><ID>456789</ID></Record></Records></XmlData>llVIW。响应报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><Description><t>成功/t><!--〔错误信息”/ption><Records><Record><ID>123456</ID><FILE_PRJ_ID>Value1</FILE_PRJ_ID><FILE_TYPE>Value2</FILE_TYPE><FILE_CREAET_MODE>Value3</FILE_CREAET_MODE><FILE_NAME>Value4</FILE_NAME><FILE_UNIT>Value5</FILE_UNIT><FILE_MAN>Value6</FILE_MAN><FILE_CREATE_TIME>Value7</FILE_CREATE_TIME><FILE_SIZE>Value8</FILE_SIZE><FILE_AUTHOR>Value9</FILE_AUTHOR><FILE_TITLE>Value10</FILE_TITLE><FILE_BROTHER_ID>Value11</FILE_BROTHER_ID><FILE_PARENT_ID>Value12</FILE_PARENT_ID></Record><Record><ID>456789</ID><FILE_PRJ_ID>Value1</FILE_PRJ_ID><FILE_TYPE>Value2</FILE_TYPE><FILE_CREAET_MODE>Value3</FILE_CREAET_MODE><FILE_NAME>Value4</FILE_NAME><FILE_UNIT>Value5</FILE_UNIT><FILE_MAN>Value6</FILE_MAN><FILE_CREATE_TIME>Value7</FILE_CREATE_TIME><FILE_SIZE>Value8</FILE_SIZE><FILE_AUTHOR>Value9</FILE_AUTHOR><FILE_TITLE>Value10</FILE_TITLE><FILE_BROTHER_ID>Value11</FILE_BROTHER_ID><FILE_PARENT_ID>Value12</FILE_PARENT_17/29个人收集整理-仅供参考IDID> </Record> </Records> </XmlData>yhUQs。报文说明:标签名<XmlData><Description><Records><Record><UserInfo><User><PassWord><Result>ID><FILE_PRJ_ID><FILE_TYPE><FILE_CREAET_MODE><FILE_NAME><FILE_UNIT><FILE_MAN><FILE_CREATE_TIME><FILE_SIZE><FILE_AUTHOR><FILE_TITLE><FILE_BROTHER_ID><FILE_PARENT_ID>
说明报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令反响报文中地保存成功与否信息.假设文档获得成功,则信息是“成功”〔后面是错误地具体信息IDIDIDIDID文档类型文档创立方式默认:用户上传文档〔文件〕名称创立单位创立人创立日期文档大小文档作者文档标题ID,假设没有兄长,则为-1ID,假设没有父亲,则为-1获得文档地全部兄弟信息获得文档全部兄弟信息与获得文档根本信息类似,区分之处在于在获得文档全部兄弟信息地时候,施工系统仅仅需要提交一个最小兄弟地节点,外协系统自动找出该文档地全部“兄长”文档信息返回.MdUZY。留意,在返回地全部兄弟报文中,最小地兄弟排在记录地最前面,依序排序往上,最终,最大地兄弟排在最终面.提交一条文档地ID.而且,这个求情所调用地接口和前面地“如何获得文档地根本信息”地所调用地接口是不一样地.09T7t。恳求报文:<?<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description></Description><Records><Rec18/29个人收集整理-仅供参考ordord><ID>123456</ID></Record></Records></XmlData>e5TfZ。响应报文:<?xmlversion=“1.0“encoding=“utf-8“?> <XmlData> <Description> <>成功/>-假设失败,则返回信息是“失败〔错误信息”> ption> <Records> <Record> <ID>123456</ID> <FILE_PRJ_ID>Value1</FILE_PRJ_ID> <FILE_TYPE>Value2</FILE_TYPE> <FILE_CREAET_MODE>Value3</FILE_CREAET_MODE>ILE_UNIT>Value5</FILE_UNIT><FILE_NAME>Value4</FILE_NAME><F<FILE_MAN>Value6</FILE_MAN><FILE_CREATE_TIME>Value7</FILE_CREATE_TIME> <FILE_SIZE>Value8</FILE_SIZE> <FILE_AUTHOR>Value9</FILE_AUTHOR> <FILE_TITLE>Value10</FILE_TITLE> <FILE_BROTHER_ID>456789</FILE_BROTHER_ID>PARENT_ID>Value12</FILE_PARENT_ID> </Record> <Record><FILE_<ID>456789</ID><FILE_PRJ_ID>Value1</FILE_PRJ_ID><FILE_TYPE>Value2</FILE_TYPE><FILE_CREAET_MODE>Value3</FILE_CREAET_MODE><FILE_NAME>Value4</FILE_NAME><FILE_UNIT>Value5</FILE_UNIT><FILE_MAN>Value6</FILE_MAN><FILE_CREATE_TIME>Value7</FILE_CREATE_TIME><FILE_SIZE>Value8</FILE_SIZE><FILE_AUTHOR>Value9</FILE_AUTHOR><FILE_TITLE>Value10</FILE_TITLE><FILE_BROTHER_ID>-1</FILE_BROTHER_ID><FILE_PARENT_ID>Value12</FILE_PARENT_ID></Record> </Records> </XmlData>s1Sov。〔参见前面地“如何获得文档地根本信息”说明〕获得文档地全部父亲信息ID,外协系统自动返回全部地父辈文档信息,包含父亲,爷爷,祖爷爷等.GXRw1。〔参见“如何获得文档地全部兄弟信息”恳求报文〔参见“如何获得文档地全部兄弟信息”响应报文〔参见前面地“如何获得文档地根本信息”说明〕下载一个文档获得文档地ID用二进制读取出来之后,转换成base64地格式供施工系统下载.施工系统一次只能恳求下载一个文档.UTREx。恳求报文:<?<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description></Description><Records><ID>123456</ID>响应报文:</Records></XmlData>8PQN3。<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><Description><Result>19/29个人收集整理-仅供参考成功</Result><!--〔错误信息--></Description><Records><Record><FileData>/e5asf@dfgafa#sdgsdg……</FileData></Record></Records></XmlData>mLPVz。报文说明:标签名<XmlData><Description><Records><Record><UserInfo><User><PassWord><ID><FileData><Result>
说明报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令IDID文件实体内容.文件实体内容用二进制读取出来之后,然后转换成base64地格式供给应施工系统.反响报文中地下载成功与否信息.假设下载成功,则信息是“成功”〔后面是错误地具体信息〕”.13获得字典IDID,返回对应地字典代码信息.字典代码地信息返回不受最大返回记录100AHP35。恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo>rds><DictionaryID>201</DictionaryID></Records><Description></XmlData></Description><RecoNDOcB。<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><Description><Result>成功</Result><!--〔错误信息--></Description><Records><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3></Record><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3></Record><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3></Record></Records></XmlData>1zOk7。报文说明:标签名<XmlData><Description><Records><Record><UserInfo>说明<User><PassWord>报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令20/29个人收集整理-仅供参考<<DictionaryID><Field1><Field2><Field3><Field4><Result>字典类型ID.恳求下载地字典类型,外协依据字典类型返回对应地字典.标签全部是大写.具体地字段名称请参见供给地数据模型反响报文中地下载成功与否信息.假设下载成功,则信息是“成功”〔后面是错误地具体信息〕”8.3外协系统向施工系统发送恳求外协系统向施工系统发送恳求地数据目前有几点需要考虑:如何恳求发送一个变更后地业务数据8.3外协系统向施工系统发送恳求外协系统向施工系统发送恳求地数据目前有几点需要考虑:如何恳求发送一个变更后地业务数据如何恳求发送一个变更后地字典数据文档发送恳求外协系统不会主动发送文档地变更信息给施工系统,由于文档地信息〔文档地ID〕变更是表达在业务地信息当中地,外协系统向施工系统发送业务地变更信息当中就包含了变更了地文档ID,只地信息或下载文档.fuNsD。针对前面这些问题,接口方案地解决方法如下:发送变更后地数据外协系统在业务数据发生变更〔增、修改、规律删除〕地时候,会自动发送恳求到施工系统要求施工系统进展更.tqMB9。留意,外协系统中没有记录上地物理删除,外协系统中全部地删除业务都是规律上地删除,仅仅在删除标志位上面标记为“1”.所以,外协系统没有向施工系统发送物理删除地恳求.HmMJF。恳求报文:<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord></UserInfo><Description><Note>工程经理已经对数据进展了审批</Note></Description><Records><Record><KeyField>KeyValue</KeyField><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record><Record><KeyField>KeyValue</KeyField><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record><Record><KeyField>KeyValue</KeyField><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record></Records> </XmlData>ViLRa。响应报文:<?xmlversion=“1.0“encoding=“utf-8?> <XmlData> <Description> <>成功/><!--假设失败,则>〔错误缘由,同时,21/29个人收集整理-仅供参考KeyFieldKeyField地值为空-->9eK0G。</Description><Records> </Records> </XmlData>报文说明:标签名<XmlData><Description><Records><Record><UserInfo><User><PassWord><Note><KeyField><Field1><Field2><Field3><Field4><Result>
说明报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令业务地简洁描述.比方:开工报告审批、施工组织方案审批等段地标签全部是大写.具体地主键字段名称请参见供给地数据模型标签全部是大写.具体地字段名称请参见供给地数据模型反响报文中地保存成功与否信息.假设保存成功,则信息是“成功”〔后面是错误地具体信息〕”发送变更后地字典外协系统在字典数据发生变更〔增、修改、规律删除〕地时候,会自动发送恳求到施工系统要求施工系统进展更施工系统地比照字典.naK8c。全部条目.恳求报文:<?<?xmlversion=“1.0“encoding=“utf-8“?><XmlData><UserInfo><User>ZhangSan</User><PassWord>123456</PassWord><Records></UserInfo><Record><Description><DictionaryID>201</DictionaryID>2></Description><Field1>Value1</Field1><Field2>Value2</Field<Field3>Value3</Field3><Field4>Value4</Field4></Record><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record><Record><Field1>Value1</Field1><Field2>Value2</Field2><Field3>Value3</Field3><Field4>Value4</Field4></Record></Records></XmlData>B6JgI。响应报文:<?xmlversion=“1.0“encoding=“utf-8?> <XmlData> <Description> <>成功/><!--假设失败,则>〔错误缘由,同时,22/29个人收集整理-仅供参考KeyFieldKeyField地值为空>P2Ipe。</Description> <Records> </Records> </XmlData>报文说明:标签名<XmlData><Description><Records><Record><UserInfo><User><PassWord><DictionaryID><Field1><Field2><Field3><Field4><Result>
说明报文数据主体报文头部信息记录集合一行记录业务认证地用户信息业务用户登录名业务用户验证口令字典类型ID.发生变更地字典类型.标签全部是大写.具体地字段名称请参见供给地数据模型反响报文中地保存成功与否信息.假设保存成功,则信息是“成功”〔后面是错误地具体信息〕”文档发送恳求外协系统不会主动发送文档地变更信息给施工系统,由于文档地信息〔文档地ID〕变更地文档ID,只有在施工系统中进展业务需要获得文档地信息地时候,由施工系统主动发送恳求到外协系统获得文档地信息或下载文档.3YIxK。9信息数据项数据表PROJECT3PROJECT1
英文名
中文名三级工程根本信息表一级工程根本信息表
仅承受查询下载仅承受查询下载RELATIONMANDIMENSIONSMILEPOSTDISASSEMBLE
工程合作伙伴工程建设规模〔三级工程〕里程碑工程分解23/29
仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载个人收集整理-仅供参考PROJECTDOWNBEGINWORKREPORTENDWORKREPORTCHECKREPORTENDWORKREPORT_DIMENSCONTRACT_SIGNSERVER_BILLSERVER_BILL_ITEMSCONST_FILESSTOP_WORK_APPLYSTOPWORK_INFORMRESUME_WORK_APPLYDELAYRESUME_WORK_INFORMCONST_SCHEDULECONST_REPORTSONST_BALANDESIGNCOMMISSIONDESIGNCOMMISSIONITEMSDESIGNFILEBUDGETSUMTABLEITEMSBUDGET_FIXPRJ2BUDGET_FIXPRJ3ABUDGET_FIXPRJ3BBUDGET_EQUIPMENT_A
工程下达、托付、受理开工报告完工报告验收报告完工(验收)报告建设规模施工合同签订过程信息工程效劳选购清单根本信息工程效劳选购单明细施工文件信息停工申请停工通知复工申请信息临时延期申请信息复工通知信息施工进度施工报告施工结算设计托付、回复信息设计托付对应工程列表设计文件信息预算总表建筑安装工程费用概算表(表二)建筑安装工程量概算表(表三)甲建筑安装工程施工机械使用费概算表(表三)乙器材概算表(表四)甲(国内主要材料表)
仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载仅承受查询下载24/29个人收集整理-仅供参考BUDGET_EQUIPMENT_BBUDGET_EQUIPMENT_CBUDGET_IMPORT_EQUIPMENTBUDGET_OTHER_FAREBUDGET_LITTLE_BULDSURV_REPORTSURV_INFORMSURV_RELATEPROCESS_CHECKCHANGE_PRJ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海洋科学题库及答案
- 大学制药工程冲刺题及详解
- 2026春四年级语文下册期末专项复习-句式变换精讲精练
- 药物性肝损伤概述2026
- 安全生产信息化建设自查表
- 钢结构工程安全培训档案
- 金融机构工会工作开展自查自纠整改措施报告
- 医疗器械经营许可合规告知承诺书
- 肉制品加工工安全宣贯知识考核试卷含答案
- 成型制作养护工安全检查水平考核试卷含答案
- 2026贵州遵义市政务服务管理局下属事业单位招聘编外人员2人考试模拟试题及答案解析
- 江苏省2026年中职职教高考文化统考数学试卷及答案
- 校园创意设计
- 2025年贵州省高考化学试卷真题(含答案)
- 热电半导体器件应用
- 餐厨垃圾清运服务方案
- GB/T 42306-2023软木粒和软木粉分类、性质和包装
- 人教版六年级音乐下册教案(全册)
- GB/T 18376.3-2015硬质合金牌号第3部分:耐磨零件用硬质合金牌号
- 关于规范贸易业务的指导意见
- 国开大政府经济学自测题1-14章
评论
0/150
提交评论