69宽带电视新装与续包软件设计与实现【软件工程毕业论文设计说明书开题翻译PPT代码】.zip
收藏
资源目录
压缩包内文档预览:(预览前15页/共38页)
编号:22640743
类型:共享资源
大小:1.18MB
格式:ZIP
上传时间:2019-10-23
上传人:小***
认证信息
个人认证
林**(实名认证)
福建
IP属地:福建
50
积分
- 关 键 词:
-
软件工程毕业论文设计说明书开题翻译PPT代码
- 资源描述:
-
69宽带电视新装与续包软件设计与实现【软件工程毕业论文设计说明书开题翻译PPT代码】.zip,软件工程毕业论文设计说明书开题翻译PPT代码
- 内容简介:
-
目 录摘 要IIIAbstractIV1 绪 论11.1 开发背景11.2 开发目的11.3 开发工具简介11.4相关技术知识22 需求分析42.1 可行性分析42.2 系统功能分析43 系统设计63.1架构设计63.2系统功能模块设计63.3 数据库设计104 系统实现194.1 宽带电视新装模块194.2宽带电视续费模块255系统测试295.1 测试目的295.2 测试方法295.3 自动化接口用例执行295.4 测试结果316 结 论32参考文献33致 谢34IV宽带电视新装与续包软件设计及实现摘 要本课题基于浙江移动宽带的现有业务,利用软件工程,数据库技术及相应软件开发工具完成宽带电视新装与续包系统的设计和开发工作。本系统主要做的是浙江全渠道融合项目中宽带业务下的宽带电视新装与续包功能。该系统采用敏捷开发的方式,在系统开发阶段,每完成一项功能,即刻上线,投入市场使用,让系统立即产生价值,让客户办理业务更加便捷,提高了效率,进而给公司带来更高的收益。本文对首先对宽带电视新装与续包系统的开发背景、开发目的做了相关的介绍,以及对系统使用的公司框架做了简要描述。接下来对需求做了详细的分析,对系统的功能进行设计。最后对系统的实现部分以及相关技术进行了详细描述。关键词:宽带电视新装与续包;全渠道融合;敏捷开发;系统设计;实现The design and implementation of broadband TV installation and prolong systemAbstractThe subject requirements based on Zhejiang already existed mobile business, using the software engineering, database technology and the corresponding software development tool to complete the design and development of broadband TV installation and prolong system. The system is mainly doing the development of the broadband TV installation and prolong of Zhejiang All Chanels System. The program taked the model of scrum software development, during the developing period, as long as the function is complete, it will be launched into the market, letting the system produce value immediately. Customers will transact business more easily after using the new system, and increase the efficiency. As a result, the new system will bring the company more profits.This thesis makes the relevant introduction of the development background and development purpose of broadband TV and the description of frame that is used by the AsiaInfo company firstly. Then, a detailed analysis of requirements and functions is made. At last, the reality and relevant technology is introduced.Key words: broadband TV installation and prolong; fusion of all channels; scrum; design of system; reality 1 绪 论1.1 开发背景计算机的诞生,说明了第三次工业时代的开始,随后,移动互联网以惊人的速度快发展。移动设备可以随时随地的访问互联网上的资源和应用。移动公司作为通讯行业的三大巨头之一,不断地创新,满足人们的生活需要,开发不同的产品,给人们带来便利。宽带电视新装与续包功能,随着网络电视在最近几年的迅速发展,使得该功能的需求日益增大。如今成为移动公司的基本宽带业务之一,办理的业务量非常之大,但是,目前移动的的系统繁多,导致会花费很多在维护上面,并且老的宽带系统业务办理流程复杂,给用户带来的体验并不好。亚信公司欲通过浙江省全渠道项目,旨在将移动的营业厅、合作式渠道融合在一起,既方便了用户,提高了效率,同时也大大减少了系统的维护成本。随着网络的普及,浙江作为全国的经济强省份,网络的发展更加迅速,并且为了满足人们的需要,提升人们的生活水平,网络电视的发展也更加迅速,基本上各家各户都需要办理网络电视,于是宽带电视的业务需求量越发增大,同时系统面临的压力也越来越大,需要在原来的基础上进行了改进,提高业务办理的效率,增加公司的收益。1.2 开发目的移动视频是利用互联网传送音视频内容,通过电视机屏幕为用户呈现的多媒体业务。该业务支持通过视频点播的形式为用户提供各种丰富的视频点播和电视节目准直播。用户订购移动视频包年,想继续使用时,可到营业厅办理续包。本课题通过亚信公司自己的框架开发出web以及app两种模式下的宽带电视新装与续包。同时将移动之前的营业厅、合作式渠道两种办理渠道综合在一个系统里面,使系统显现的更加人性化以及更加智能。对用户来说,宽带电视新装与续包功能的app使其更加容易的通过手边的工具办理宽带电视新装与续包。对于移动营业员来说,依托手机平台的便利性,可以随时随地发展客户,扩大移动的用户群,增加公司效益,而web则有更好的可操作性以及交互的实用。1.3 开发工具简介主要开发工具(1) Myeclipse于整个系统的Java编码开发(2) Oracle 用于系统数据库的搭建与维护(3) Tomcat 用于发布服务主要测试工具(1)SOAPui用于检测接口在测试环境是否正确(2)SecureCRT用于跟踪后台日志,调试代码(3)pl/sql用于开发完成之后数据的稽核,防止因为数据存入、处理方式不对导致业务纠纷(4)jmeter用于接口的压力测试1.4相关技术知识1.4.1公司框架appframe电信亲情通主要采用三层客户/服务器体系结构作为基本架构,而三层结构目前的开发工具不够成熟,许多工具对服务器没有完善的开发能力,这对信息系统组织的简化维护与代码重用是一种障碍。APPFrame框架与其他框架相比,有效解决了B/S系统技术曲线长,开发工具不足的问题,提升了系统的快速开发能力,提高了代码的规范性,极大的提高了系统的稳定性和运行性能。并且与其他框架相比 APPFrame框架具有高度可扩展性,该框架已经由当初APPFrame1.0纯粹解决B/S问题,发展到APPFrame5.0可提供SOA架构的基础开发环境,实现了业务系统的松散耦合,开发与部署的无关性,提升了系统的管控能力。发展至今已经是包括WebFrame(Web开发框架),BLFrame(业务逻辑开发框架)、OPFrame(数据持久化开发框架)、TLFrame(配置管理工具)、SecFrame(权限管理框架)和AppMonitor(系统管控工具)在内的多功能的全面开发框架工具。1.4.2 SOASOA提供了实现无关的服务管理,支持简单对象服务。因为系统实现会用到大量的java对象以及ejb实例,所以SOA服务必不可少。在实现系统的时候后台的交互都是通过service调用esb接口来实现,实现与数据库的完全分离,结构清晰,易于维护。所以使用SOA服务不仅可以调用信息输出给监控模块,也可以实现事务的管理控制提供服务属性以及服务监听的配置。1.4.3 数据存储宽带电视新装与续包功能有大量的数据需要存储、分析,比如:产品信息,生失效时间,价格等信息,产品实例,送开通、计费的数据等,如何将对应的数据存至对应的表中并保证数据存入正确是一件至关重要的事情。通过公司的工具,将设计好的表,生成对应的java实例。通过service层调用ESB接口,使用http协议,service层实现与数据库完全分离,只负责数据的输入与输出。通过http协议,调用ESB总线,ESB总线里实现数据的封装,以及相应的业务逻辑的处理,然后调用DAO层,再使用公司的工具生成的数据库操作引擎,对数据库进行增、删、改、查的操作,极大地降低了耦合度,同时ESB总线的使用,也极大提高了代码的复用率,同时易于扩展与维护。312 需求分析2.1 可行性分析2.1.1市场可行性根据统计浙江老CRM系统以及新版营业厅的宽带业务量来看,浙江省各个地市每年办理的宽带业务量来分析,市场的份额巨大,全部宽带业务有着上千万的业务量,所以市场可行性分析,有着足够大的市场,因此经济收益是非常庞大的。现如今的信息时代,每家每户都有着办理宽带的需求。本系统作为宽带的一个分支,从如今已经上市的新版营业厅的台州地市,生产的业务统计量为每天五百多笔,仅仅台州每年就有两万笔左右的业务量,因此宽带电视新装与续包的系统急需改造完成上市,替换老系统。使用户办理业务更加方便,给公司带来更多的收益。2.1.2 技术可行性本系统基于公司成熟的APPframe以及Pgeframe框架,与其它已经在老CRM系统中投入使用的相关技术,对新系统的设计做出了详细的功能性需求及安全性需求分析,前期做了充分的准备,给出了系统的设计方案,在系统的实现过程中基于公司现有框架以及相关技术进行开发,即可用顺利完成新系统的开发任务,并使新系统的使用更加方便、业务办理效率更高、用户体验更加完美。2.2 系统功能分析本系统包含如下两大模块:1.宽带电视新装模块宽带电视新装模块主要的功能包括:用户信息查询功能、可订购策划信息查询功能、用户信息查询功能、费用信息查询功能、生失效时间查询功能、支付方式查询功能、受理提交功能。2.宽带电视续包模块宽带电视新装模块主要的功能包括:用户信息查询功能、可订购策划信息查询功能、已订购策划信息查询功能、费用信息查询功能、生失效时间查询功能、支付方式查询功能、受理提交功能。系统总体功能模块如下图2-1所示:宽带电视新装与续包 宽带电视续包宽带电视新装可订购策划查询用户信息查询受理提交支付方式查询用户信息添加用户信息查询可订购策划查询受理提交支付方式查询已订购策划查询图2-1 宽带电视新装与续包功能模块图3 系统设计3.1架构设计本系统框架采用亚信的appframe和pageframe,Pagerame框架:前端获取用户输入的相关数据,使用seajs组件对js代码进行模块化,使用jquery对遍历DOM元素进行相关操作,通过ajax技术与json数据格式,与服务层进行交互,服务层对数据做简单的处理,同时也做了相关必要逻辑的处理。因为系统使用异步处理的方式,所以有的逻辑必须在服务层也要做相关的处理,否则后台进行处理最终会报错。然后调用ESB服务总线。Appgrame框架:通过ESB服务总线,获取服务层传递过来的相关数据,解析数据以后作相关的逻辑处理以及规则校验,相关逻辑处理通过后通过调用BOEngine,将数据持久化,保存到对应的数据表里。如下图3-1所示,就是简单的数据传递方式:图3-1 系统架构图3.2系统功能模块设计本系统主要包括两大功能模块:宽带电视新装和宽带电视续包。信息设计如下:1. 宽带电视新装宽带电视新装模块包括以下功能:(1)用户信息查询功能。该功能主要实现对所登录的用户账户,查询该用户的相关信息。例如姓名,账户,地址,性别等信息。功能模块流程图如下图3-2所示:查询用户信息结果返回前端登录判断开始Y结束图3-2 登录功能模块流程图(2)可订购策划信息查询功能。该功能主要实现从产品缓存中查询用户可以订购的策划信息,并根据渠道组织类型进行过滤。并且查询出策划的费用信息与生失效时间信息。功能模块流程图如下图3-3所示:查询策划的费用信息调用查询策划信息接口对查询出的策划进行过滤开始结束查询策划的生失效时间图3-3 查询可订购策划模块流程图 (3)用户信息添加功能。该功能主要实现对宽带电视新装用户在第一次安装宽带电视时,需要登记用户的安装宽带电视的地址与联系人相关信息。功能模块流程图如下图3-4所示:结束输入用户信息进行校验开始图3-4 用户信息添加模块流程图(4)支付方式查询功能。该功能主要实现从配置表里读出各个地市分别单独配置的支付方式,供用户选择自己的付费方式。功能模块流程图如下图3-5所示:返回支付方式给前端调用查询支付方式接口对支付方式进行过滤处理开始结束图3-5 查询支付方式功能模块流程图(5)受理提交功能。该功能主要实现用户在办理业务,填完相关信息,最后点击受理提交,进行宽带电视新装业务的办理。功能模块流程图如下图3-6所示:调用提交ESB接口规则校验调用规则校验接口开始Y受理成功结束返回订单成功编号Y 返回报错原因N图3-6 宽带电视新装受理提交功能模块流程图2. 宽带电视续包(1)用户信息查询功能。该功能主要实现对所登录的用户账户,查询该用户的相关信息。例如姓名,账户,地址,性别等信息。功能模块流程图如下图3-7所示:查询用户信息结果返回前端登录判断开始Y结束图3-7 登录功能模块流程图(2)可订购策划信息查询功能。该功能主要实现从产品缓存中查询用户可以订购的策划信息,并根据渠道组织类型进行过滤。并且查询出策划的费用信息与生失效时间信息。功能模块流程图如下图3-8所示:查询策划的费用信息调用查询策划信息接口对查询出的策划进行过滤开始结束查询策划的生失效时间图3-8 查询可订购策划功能模块流程图(3)已订购策划查询功能。该功能主要实现调用ESB服务总线,查询策划。功能模块流程图如下图3-9所示:查询策划的费用信息调用查询策划信息接口查询出已订购策划开始结束查询策划的生失效时间图3-9 查询已订购策划功能模块流程图(4)支付方式查询功能。该功能主要实现从配置表里读出各个地市分别单独配置的支付方式,供用户选择自己的付费方式。功能模块流程图如下图3-10所示:返回支付方式给前端调用查询支付方式接口对支付方式进行过滤处理开始结束图3-10 查询支付方式功能模块流程图(5)受理提交功能。该功能主要实现用户在办理业务,填完相关信息,续费的策划的生失效时间处理,最后点击受理提交,进行宽带电视新装业务的办理。功能模块流程图如下图3-11所示:调用提交ESB接口规则校验调用规则校验接口开始Y受理成功结束返回订单成功编号Y 返回报错原因N图3-11 宽带电视续包功能模块流程图3.3 数据库设计3.3.1概念结构设计数据库概念设计是使用E-R模型和视图集成设计法进行设计的。它的设计过程是:首先设计局部应用,再进行局部视图(局部E-R图)设计,然后进行视图集成得到概念模型(全局E-R图)。本系统的主要数据库表的设计如下图3-12所示:包含业务订单 1 N N N处理业务属性订单归属 1客户交易订单 1 1处理成功处理消息处理 N N处理失败图3-12 实体关系图1. ORD_CUST_TRANS(客户交易订单表)的实体设计,如图3-13所示:所属地市客户名称客户编号 客户类型 客户交易订单订单创建日期客户订单编号 操作员编号订单完成日期组织编号图3-13 客户交易订单E-R图2. ORD_BUSI(业务订单表)的实体设计,如图3-14所示:手机号码业务类型业务编码 客户订单编号 业务订单订单创建日期业务订单编号 订单完成日期营销案编号档次名称档次编号营销案名称图3-14 业务订单E-R图3. ORD_BUSI_ATTR(业务属性表)的实体设计,如图3-15所示:属性编号属性类型属性订单编号 客户订单编号 业务属性订单订单创建日期业务订单编号 订单完成日期属性值受理成功流水号图3-15 业务属性订单E-R图4. ORDX_MESSAGE_WAIT(消息等待表)的实体设计,如图3-16所示:订单完成日期业务订单编号 消息表订单创建日期消息编号 受理流水号客户订单编号图3-16 消息表E-R5. ORDX_MESSAGE_WAIT_ERR(消息错误表)的实体设计,如图3-17所示:业务订单编号受理流水号 消息错误表订单创建日期错误消息编号 客户订单编号订单完成日期图3-17 客户交易订单E-R图6. ORDX_MESSAGE_WAIT_ERR(消息错误表)的实体设计,如图3-18所示:受理流水号业务订单编号 消息错误表订单创建日期错误消息编号1. 2. 3.客户订单编号订单完成日期4.图3-18 消息错误表E-R图3.3.2物理结构设计本系统数据库表设计主要有六张主表,物理结构设计分别为:1.ORD_CUST_TRANS(客户交易订单表):客户订单编号;客户类型;客户姓名;客户编号;用户所属的地市;创建日期;完成日期;操作员编号;系统操作员编号。2.ORD_BUSI(业务订单表):业务订单编号;客户订单编号;业务编号;业务操作类型;操作员编号;组织编号;手机号;营销案编号;营销案名称;档次编号;档次名称;客户订单编号;受理流水号;创建日期;完成日期。3.ORD_BUSI_ATTR(业务属性表):业务订单属性编号;业务订单编号;客户订单编号;属性类型;属性编号;属性值;受理流水号;创建日期;完成日期。4.ORDX_MESSAGE_WAIT(消息等待表):消息编号;业务订单编号;客户订单编号;属性编号;受理流水号;创建日期;完成日期。5.ORDX_MESSAGE_WAIT_ERR(消息错误表),消息错误编号;业务订单编号;客户订单编号;属性编号;受理流水号;创建日期;完成日期。6.ORDX_MESSAGE_WAIT_H(消息历史表),消息成功编号;业务订单编号;客户订单编号;属性编号;受理流水号;创建日期;完成日期。以下是上述设计的主要表的数据字典:1.ORD_CUST_TRANS(客户交易订单表),如表3-1所示:表3-1 客户交易订单表字段名称数据类型字段大小主键空注释cust_order_idNumber14 是否客户订单编号cust_typechar1 否是客户类型cust_nameVarchar220 否是客户姓名cust_idNumber14 否是客户编号region_idVarchar26 否是用户所属的地市create_datedate20否是创建日期done_datedate20否是完成日期op_idNumber12否是操作员编号sys_op_idNumber15否是系统操作员编号2.ORD_BUSI(业务订单表),如表3-2所示:表3-2 业务订单表字段名称数据类型字段大小主键空注释busi_order_idNumber 14 是否业务订单编号cust_order_idNumber14 否否客户订单编号,外键business_idNumber12 否否业务编号business_typeVarchar240 否否业务操作类型op_idNumber12 否否操作员编号org_idNumber12否否组织编号bill_idVarchar230否否手机号prod_idNumber20否否营销案编号prod_nameVarchar230否否营销案名称prod_kind_idNumber20否否档次编号prod_kind_nameVarchar230否否档次名称org_idNumber12否否组织编号customer_order_idNumber14否否客户订单编号done_codeNumber14否否受理流水号create_datedate20否是创建日期done_datedate20否是完成日期3.ORD_BUSI_ATTR(业务属性表),如表3-3所示:表3-3 业务属性表 字段名称数据类型字段大小主键空注释busi_attr_idNumber14是否业务订单属性编号busi_order_idNumber 14 否否业务订单编号cust_order_idNumber14 否否客户订单编号,外键attr_typeVarchar240 否否属性类型attr_idVarchar220 否否属性编号attr_valueVarchar22000 否否属性值done_codeNumber14否否受理流水号create_datedate20否是创建日期done_datedate20否是完成日期4. ORDX_MESSAGE_WAIT(消息等待表),如表3-4所示:表3-4 消息等待表字段名称数据类型字段大小主键空注释message_idNumber14是否消息编号busi_order_idNumber 14 否否业务订单编号,外键cust_order_idNumber14 否否客户订单编号,外键region_idVarchar220 否否属性编号done_codeNumber14否否受理流水号create_datedate20否是创建日期done_datedate20否是完成日期5. ORDX_MESSAGE_WAIT_ERR(消息错误表),如表3-5所示:表3-5 消息错误表字段名称数据类型字段大小主键空注释message_idNumber14是否消息错误编号busi_order_idNumber 14 否否业务订单编号,外键cust_order_idNumber14 否否客户订单编号,外键region_idVarchar220 否否属性编号done_codeNumber14否否受理流水号create_datedate20否是创建日期done_datedate20否是完成日期6.ORDX_MESSAGE_WAIT_H(消息历史表),如表3-6所示:表3-6 消息历史表字段名称数据类型字段大小主键空注释message_idNumber14是否消息成功编号busi_order_idNumber 14 否否业务订单编号,外键cust_order_idNumber14 否否客户订单编号,外键region_idVarchar220 否否属性编号done_codeNumber14否否受理流水号create_datedate20否是创建日期done_datedate20否是完成日期所有主表关系如图3-19所示:图3-19 数据库主表关系图4 系统实现该系统主要基于公司的Pageframe与APPframe成熟的框架,前端主要使用html5+css3+jquery+ajax+json+handlebars+webUI+seajs技术进行页面开发,后端使用Java语言开发后台逻辑代码,产品使用memcache缓存技术,产品校验使用的rule规则实现jar包也是项目的核心部分,实现部分过于复杂,目前并没有看懂实现的过程。浙江省全渠道融合项目在开发设计阶段,设计了新订单模型,采用异步处理的方式,首先保存到新订单表中,同时保存订单到消息表中,通过调用后台进程,去扫描消息表中的订单数据,如果成功扫描到消息表中的数据,则调用进程处理类,扫描新订单中的数据,进行逻辑处理,出入参数的拼装。采用这种技术,可以显著提升业务办理效率。进程处理新订单中数据成功后,调用老ESB(企业服务总线)接口,接着调用工作流(公司其它部门开发的系统,为了便于维护,将系统进行分离,降低耦合度),最终将数据成功保存到老订单中,并且回写老订单编号到新订单的业务订单表中。4.1 宽带电视新装模块宽带电视新装业务是:已经办理了宽带的用户,初次办理宽带电视的业务,需要进行宽带电视新装。如果不是宽带用户,需要先进行宽带开户。宽带开户成功以后,才可以进行宽带电视的安装。4.1.1用户信息查询功能首先根据用户登录的账号,查询该用户的相关信息。将查询出来的用户信息进行处理,展示到前台页面。如图4-1所示:图4-1 系统登录界面图Map custInfo = (Map)userAllInfoList.get(1);if(custInfo != null)Map rtnCustInfo = new HashMap();rtnMap.put(CUST_INFO, rtnCustInfo);rtnCustInfo.put(CUST_ID, custInfo.get(custId);rtnCustInfo.put(CUST_TYPE, custInfo.get(custType);rtnCustInfo.put(BIRTH_DATE, custInfo.get(custBirthday)=null?null:format.format(custInfo.get(custBirthday);rtnCustInfo.put(CARD_CODE, custInfo.get(idCardNum); if(retMap.containsKey(REAL_NAME_FLAG) rtnCustInfo.put(REAL_NAME_FLAG,retMap.get(REAL_NAME_FLAG);outputCommit.setERROR_LIST(errList);return outputCommit;rtnCustInfo.put(NON_REAL_DESC,retMap.get(DESC);else rtnCustInfo.put(REAL_NAME_FLAG,RBossConst.REAL_NAME_1+);用户信息查询的关键代码如下:4.1.2可订购策划查询功能根据地市编号,组织编号以及渠道类型,调用Pce产品缓存,过滤出用户可以订购的相关策划,返回并展示给前台。如图4-2所示:图4-2 可订购策划图IMarketProgramValue programs =fsv.getMarketProgramByMpTypeAndRegionAndSType(26, regionId,50001, 500012);IMarketProgramValue programsAllProvince = fsv.getMarketProgramByMpTypeAndRegionAndSType(26, 0, 50001,500012);IMarketProgramValue value =CollectionsUtil.concat(programs,programsAllProvince);IBOBsParaDetailValue yearOffer=NcrmBsParaDetailUtils.getBsParaDetail(X, BROADBAND_NETTV_OFFER, BROADBAND_NETTV_OFFER_YEAR);Map yearOfferMap = new HashMap();if (yearOffer != null & yearOffer.getPara1() != null) String strs = yearOffer.getPara1().split(,);for (int i = 0; i strs.length; i+) yearOfferMap.put(strsi, strsi);查询可订购策划的关键代码如下:4.1.3用户信息添加功能宽带电视新装的用户,需要登记用户的相关信息,以便于后期工作人员联系用户,进而上门为用户安装宽带电视。如图4-3所示:图4-3 用户信息添加图用户信息添加的关键代码如下:IInsxAgentInfoSV insxAgentInfoSV = (IInsxAgentInfoSV) ServiceFactory.getService(IInsxAgentInfoSV.class);IBOInsxAgentInfoValue insxAgentInfoValue = insxAgentInfoSV.getAgentInfoValByCustId(custId);HashMap agentOrOwnerExtMap = new HashMap();agentOrOwnerExtMap.put(CUST_TYPE, 1);/经办人证件不能是集团证件if( insxAgentInfoValue = null |insxAgentInfoValue.isNew()| RealNameCheckUtil.isGroupCertType(String.valueOf(insxAgentInfoValue.getAgencyCertType() )/单位类型没有经办人的,返回非实名agentRetMap.put(IS_SUCCESS, N);else /校验经办人是否符合实名规则String agentCertCode = insxAgentInfoValue.getAgencyCertCode();if(agentCertCode.contains(BOMaskConst.MASK_SYMBOL) agentCertCode = String.valueOf(insxAgentInfoValue.getOldObj(IBOInsxAgentInfoValue.S_AgencyCertCode);insxAgentInfoValue.getAgencyCertAddress();String.valueOf(insxAgentInfoValue.getOldObj(IBOInsxAgentInfoValue.S_AgencyCertAddress);agentRetMap = RealNameCheckUtil.realNameRule(agentCertCode, agentCertType, agentName, agentAdress, true, agentOrOwnerExtMap); 4.1.4支付方式查询功能用户在办理业务,进行受理提交之前,需要缴纳相关费用,根据不同的组织类型,例如是营业厅,还是渠道,合作厅,加盟厅,需要展示不同的支付方式。通过该功能,从表中读取相关配置的支付方式,展示给前台,让用户选择自己的支付方式。如图4-4所示:图4-4 支付方式图4.1.5受理提交功能用户确认办理该业务,进行受理提交。若该业务办理成功,该功能将用户的订单保存到新老订单中,若该业务办理失败,则提示用户办理失败的原因。如图4-5所示:图4-5 宽带电视新装受理提交图for (int i = 0; i priceList.size(); i+) PRICE_PLAN_INFO pricePlanInfo = new PRICE_PLAN_INFO();TvNewInstallFee tvNewInstallFee = priceList.get(i);pricePlanInfo.setPRICE_PLAN_ID(tvNewInstallFee.getPRICE_PLAN_ID();String contact_name = broadBandInfo.getCON_NAME();else if(broadBandInfo.getOPER_TYPE().equals(2)|broadBandInfo.getOPER_TYPE().equals(3)RespParam respParam= EsbSoapUtil.invokeMethod(ESBInterFaceCode.SRV_ESB_CS_DM_CONTACT_QRY_001, ESBInterFaceCode.MN_ESB_CS_DM_CONTACT_QRY_001,busiInfoCust);if(respParam.isSuccess()CONTACT_LIST=(Map)respParam.getBusiInfo().get(CONTACT_LIST);Map custInfoMap=(Map)CONTACT_LIST.get(CONTACT_INFO);contact_mobile_num = String.valueOf(custInfoMap.get(CONT_BILL_ID); catch (Exception e) LOG.error(查询客户信息出错: + e.getMessage();List device = broadBandInfo.getAttrs();/ 下面是设置设备信息的com.asiainfo.ncrm.module.rboss.broadband.xbeans.esb_so_personal_web_order_101.request.EXTEND_LIST extend_LIST = new com.asiainfo.ncrm.module.rboss.broadband.xbeans.esb_so_personal_web_order_101.request.EXTEND_LIST();com.asiainfo.ncrm.module.rboss.broadband.xbeans.esb_so_personal_web_order_101.request.EXTEND_INFO extend_INFO = null;boolean flag = true;for (int i = 0; i 0) IBOSecOpStationValue opStationValue = sec4PublicRemote.getOpStationByOpIdAndStationId(opId,stationValues0.getStationId();if (opStationValue != null) oper.set(LOGIN_STATION_KEY,opStationValue.getOpStationId();if (StringUtil.isNull(validType) busiInfo.setVALID_TYPE(validType);return EsbSoapUtil.invokeMethod(ESBInterFaceCode.SRV_ESB_CS_QRY_MULTI_MULTIQRY_012,ESBInterFaceCode.MN_ESB_CS_QRY_MULTI_MULTIQRY_012,)busiInfo);已订购策划的关键代码如下:4.2.4支付方式查询功能用户在办理业务,进行受理提交之前,需要缴纳相关费用,根据不同的组织类型,例如是营业厅,还是渠道,合作厅,加盟厅,需要展示不同的支付方式。通过该功能,从表中读取相关配置的支付方式,展示给前台,让用户选择自己的支付方式。如图4-9所示:图4-9 查询支付方式图查询支付方式关键代码如下:OutputPayMethodInfo outputPayMethodInfo = new OutputPayMethodInfo();List payMethodList = new ArrayList();IBOBsParaDetailValue paymethodValues = NcrmBsParaDetailUtils.getBsParaDetail(PAY_METHOD_ENUM3, 0);if (paymethodValues != null& StringUtil.isNotBlank(paymethodValues.getPara1() String payMethods = paymethodValues.getPara1().split(;);if (payMethods != null & payMethods.length 0) for (String payMethodString : payMethods) String payType = payMethodString.split(:);/ 判断资金池开关是否开启String useChnlFundsPool = ; / 资金池开关,0不启用, IMarketProgramSV marketProgramSV = (IMarketProgramSV) ServiceFactory.getService(IMarketProgramSV.class);Map rtnMap = marketProgramSV.getAgentAcctInfo();CommConstants.EsbConstant.ESB_SUCCESS_CODE.equals(rtnMap.get(RETURN_RESULT)rtnMap.get(IS_SWITCH_OPEN);4.2.5受理提交功能用户确认办理该业务,进行受理提交。若该业务办理成功,该功能将用户的订单保存到新老订单中,若该业务办理失败,则提示用户办理失败的原因。如图4-10所示:图4-10 宽带电视续包受理提交图宽带续费受理提交关键代码如下:Map busiParams = new HashMap();busiParams.put(BUSICODE, String.valueOf(ordBusi.getBusinessId();busiParams.put(BILL_ID, ordBusi.getBillId();String.valueOf(ordBusi.getBusinessId();Map paramListMap = new HashMap();List paramInfoList = new ArrayList();paramListMap.put(PARAM_INFO, paramInfoList);Map paramInfo = new HashMap();paramInfoList.add(paramInfo);paramInfo.put(PARAM_CODE, user_id);String.valueOf(insUser.getCustId();paramInfoList.add(paramInfo);paramInfo.put(PARAM_CODE, bill_id);Map offerListMap = new HashMap();userInfo.put(OFFER_LIST, offerListMap);List offerInfoList = new ArrayList();offerListMap.put(OFFER_INFO, offerInfoList);/所有的策划信息都往offerInfoList里面添加IProductFSV productFSV = (IProductFSV)ServiceFactory.getService(IProductFSV.class);IOfferValue offers = null;JSONObject busiInfo = JSONObject.fromObject(ordBusiAttrs.get(0).getAttrValue();if(ordBusi.getProdKindId()0)productFSV.getUpOfferByProgramKindId(ordBusi.getProdKindId();else/续费的时候,没有档次编号,获取老策划编号offers = new IOfferValue1;String oldOfferInstId = busiInfo.getString(OLD_OFFER_INST_ID);if(StringUtils.isBlank(oldOfferInstId)/策划编号不能为空!ExceptionUtil.throwBusinessException(INS5060056);IOfferValue offer = productFSV.getOfferById(SoServiceFactory.getInstanceQrySV().getInsOfferByInsOfferId(Long.valueOf(oldOfferInstId).getOfferId();if(offer=null)ExceptionUtil.throwBusinessException(INS5000004);offers0 = offer;5系统测试5.1测试目的本项目的开发采用敏捷开发模式,每个敏捷小组的人员,由产品经理、Scrum master、开发与测试人员组成。并且敏捷开发的目的就是,在每个功能模块开发完成以后,测试完成通过,立即投入市场,创造价值。因此,测试显得必不可少,每个迭代,测试人员都要进行严格的测试,对质量进行把关控制,降低生产上的bug,从而有效的提高软件的安全性能及发现软件的不足。5.2测试方法软件测试方法: 1.黑盒测试2.白盒测试 3.自动化测试软件测试步骤: (1)单元测试(模块测试) (2)子系统测试(3)系统测试(4)验收测试(5)平行运行。5.3自动化接口用例执行通过SoapUI工具,封装接口入参报文,调用接口,进行接口的测试。自动化用例如表5-1所示:表5-1接口自动化用例表测试场景用soupUI调用ESB_SO_PERSONAL_VAS_ORDER_100前置条件无需要实现自动化否用例执行情况成功操作步骤预期结果soapenv:Envelope xmlns:xsi=/2001/XMLSchema-instance xmlns:xsd=/2001/XMLSchema xmlns:soapenv=/soap/envelope/ xmlns:esb= !CDATA 100108527c6a180b36896a0a8c02787eeafb0e4c 10189988 10013691 6000060783896000060783900浙江省杭州市滨江fdsaf15651898388CMCC_GPON+FTTH212312320160315600000006796宽带电视新装与续包受理提交接口DESCRIPTION:null,LIST,OFFER_ID:600000006486,OFFER_TYPE:OFFER_PLAN_BROADBAND,OPTION:1,OFFER_NAME:20
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。