C/S模式下电信计费系统的设计与实现

来源 :硅谷 | 被引量 : 0次 | 上传用户:kathleen350191539
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要: 为进一步提高电信资费的查询速度和准确性,设计基于C/S模式下电信计费系统。该系统实现后台的数据采集、数据整合和数据模拟以及前台的账单管理、账务管理、用户管理、管理员管理,具有一定的实际应用价值。
  关键词: C/S模式;电信计费系统;设计
  中图分类号:F62 文献标识码:A 文章编号:1671-7597(2011)0810182-02
  
  0 引言
  我国电信业由于电信运营企业各大阵营的建立,竞争变得越来越激烈。电信业务个性化、多样化的发展方向对计费系统提出了更高的要求。作为一名成熟的消费者希望了解每一项电信业务的资费的消费细节,因此,电信运营企业只有确保计费的准确性、实时性,才能提高本企业的服务质量和企业的效益。现在,计费系统已经成为各个电信运营企业提升自身核心竞争力的重要砝码。准确、实时的计费系统不但能提高电信运营企业工作效率,降低其运营成本,而且还能有效支撑电信业各项业务的及时开展。
  1 C/S模式简介
  C/S(Client/Server,客户机/服务器)模式是基于企业内部网络的应用系统,C/S模式具有有以下响应速度快、操作界面漂亮,形式多样、具有较强的事务处理能力,能实现复杂的业务流程等优点。另外C/S模式的应用系统最大的好处是不依赖企业外网环境。典型的C/S模式应用系统网络结构如图1所示。
  2 电信计费系统功能模块设计
  根据电信业务的需求分析,该系统的功能模块划分为前台模块和后台两大块。其中前台模块分为数据采集、数据整合、数据模拟三个子模块,本系统是一个计费的系统,先从服务器上截取的8000多条记录,经过数据的采集也就是除去管理员和正在通话中的记录,剩下7851条记录可以使用。我们再经过数据的整合,分别整合成日月年表,然后再进行业务上的处理。后台模块分为账单管理模块,账务管理模块,用户管理模块,管理员管理模块四个子模块。系统总体用例图如图2所示。
  1)用户管理模块:管理员可以对该模块进行增改查操作,但是不可以删除,因为用户的信息对企业还说是一种资源。
  2)资费管理模块:管理员可以对资费进行增删改查操作。
  3)账单管理模块:可以针对某个帐号提供的总费用的查询,还提供对某个帐号上的每个业务帐号上产生的费用进行明细查询。
  4)账务管理模块:由于账务是有数据库自动生成的日月年表,所以管理员只能对账务进行查询操作;此子系统可以提供以月为周期的查询,也可以提供以年为周期的查询。
  5)管理员管理模块:管理员又分为超级管理员和普通管理员,超级管理员可以管理普通管理员,对管理员可以进行增删改查操作。
  3 电信计费系统的实现
  由于本系统的功能模块比较多,仅以资费模块为例介绍电信计费系统的实现,资费查询界面如图3所示。管理员对资费进行增删改查操作的部分代码如下:
  public class MEA extends MDA{
   private EB biz;
   /查询所有的资费/
   public AF qA (AM map,AF form,HSR request,HSR response){
   try{
  Request.getSession(true).setAttribute("expenses",biz.qA ());
   return mapping.findForward("qA");
   }catch(Exception e){
   e.printStackTrace();
   return mapping.findForward("error");
   }
   }
   /分页查询/
   public AF fen(AM mapping,AF form,HSR request,HSR response){
   try{
   int expenseNumber=biz.qA().size();//总记录条数
   int maxNumber=2;//maxNumber一页显示多少条记录
   //总共有几页
   int pageSize=(expenseNumber+maxNumber-1)/maxNumber;
   //第几页
   int pageNo=Integer.parseInt(request.getParameter
  ("pageNo"));
  
   List list=biz.fen(pageNo,maxNumber );
   request.getSession(true).setAb ("pageSize", pageSize);
   request.getSession(true).setAb ("expenses", list);
   request.getSession(true).setAb ("pageNo", pageNo);
   return mapping.findForward("qA");
   }catch(Exception e){
   e.printStackTrace();
   return mapping.findForward("error");
   }
   }
   /更改资费/
   public AF updateExpense(AM mapping,AF form,HSR request,HSR response)
   throws Exception{
   try{
   DynaAF daf=(DynaAF)form;
   Expense ex=biz. Name(daf.get ("name"));
   BU.copyP (ex, daf.getMap());
   biz.updateExpense(ex);
   return mapping.findForward("updateExpense");
   }catch(Exception e){
   Request.getSession(true).setAb ("e", e.getMessage());
   return mapping.findForward("error");
   }
   }
  
   /根据名字查找资费/
   public AF queryByName(AM mapping,AF form,HSR request,HSR response){
   try{
  
   String name=request.getParameter("name");
   request.getSession(true).setAb ("expense",biz.querName(name));
   return mapping.findForward("queryName");
   }catch(Exception e){
   e.printStackTrace();
   return mapping.findForward("error");
   }
   }
   /添加资费/
   public AF addExpense(AM mapping,AF form,HSR request,HSR response){
   DynaAF daf=(DynaAF)form;
   Expense ex=new Expense();
   try{
   //把map里面的数据放到ex里面
   BU.copyProperties(ex, daf.getMap());
   biz.insertExpense(ex);
   return mapping.findForward("addExpense");
   }catch(Exception e){
   e.printStackTrace();
   return mapping.findForward("error");
   }
   }
   /删除资费/
   public AF deleteExpense(AM mapping,AF form,HSR request,HSR response){
   Try{
  Integer id=Integer.valueof(request.getParameter("id"));
   biz.deleteById(id);
   return mapping.findForward("ok");
   }catch(Exception e){
   Request.getSession().setAb ("e", e.getMessage());
   return mapping.findForward("error");
   }
   }
  }
  4 结束语
  本文主要完描述了小型的电信系统的设计与部分模块的实现。该系统的功能能够满足电信计费的基本需求,具有一定的使用价值。但是该系统由于采用的是C/S结构,因此在安全性比较差,这一点也是今后我们工作当中需要的解决问题,进而使该系统能够实现更高的要求。
  
  参考文献:
  [1]http://050347zhu.blog.163.com/blog/static/212679682009220100
  13981/.
  [2]张友生、王勇,系统架构设计教程,北京:电子出版社,2009年6月.
  [3]斯马特,Java开发超级工具集,清华大学出版社,2009年11月.
其他文献
前几年,成都的几家知名餐饮企业以“品牌+实力”作为本钱,“营销理念+媒体包装”作为武器,大举进军重庆餐饮市场。短时间内,重庆市场便已成了成都中餐老板们拓展事业的淘金热土。为
对有冠心病者应用药物,应慎重小心,防止其心绞痛发作或恶化。可引起或可加重心绞痛的药物,归纳起来有以下几类: 1.降压药:有冠心病者不宜快速降压和使血压降得太低。因为冠
在英语学习时,教师要让学生养成经常归纳总结的好习惯,比如同音词、同义词、反义词等等。学生总结同音词后,怎样记呢?俗话说:“词不离句。”同音词在一个句子中同时出现,学生
该文从挂篮荷载计算、施工流程、支座及临时固结施工、挂篮安装及试验、合拢段施工、模板制作安装、钢筋安装、混凝土的浇筑及养生、测量监控等方面人手,介绍了S226海滨大桥
期刊
摘 要: 国际漫游来访业务测试是在与对方国家签订开通协议前的测试,测试中主要是业务功能验证、计费验证等。通过对手机终端QOS (Quality of Service)版本导致国际漫游数据业务PDP(Packet Data Protocol)激活失败的典型案例分析,分别从理论分析、信令跟踪等方面,探讨GPRS(General Packet Radio Service)PDP激活中QOS协商的过程。
作者应用前列腺素E_1治疗冠心病,经临床、心电图、左心功能、血液流变学、血小板聚集功能、血液渗透压及有关实验检查证实,缓解心绞痛总有效率为92.4%,改善缺血心电图有效率为
请下载后查看,本文暂不支持在线获取查看简介。 Please download to view, this article does not support online access to view profile.
摘 要: 根据推挽变换器的原理,深入分析偏磁情况的产生以及因此对电路造成的影响,列举数种抑制偏磁产生的方法,用实验结果表明方法的可行性与变换器依此运行的可靠性。  关键词: 推挽变换器;偏磁;抑制  中图分类号:TM464 文献标识码:A 文章编号:1671-7597(2011)0810181-01    0 引言  推挽变换器应用广泛,优点是电路简单,成本低,电压利用效率高,并有着较高的电
随着秋天的到来、气温的下降,有不少老年人开始犯困、精神疲乏,染上了“情绪疲软”的抑郁症。家住河北邯郸市68岁的刘老伯近日总觉得心烦意乱,注意力难以集中,甚至还会出现心
摘 要: 通过ASP技术调用Excel数据表作为数据源,可以很方便的统计出补考生的信息。为广大软件使用者提供有益借鉴。  关键词: ASP;数据连接;Excel  中图分类号:TP317.3 文献标识码:A 文章编号:1671-7597(2011)0810180-01    0 前言  每个学期开始,组织学生补考是一件必做的事情,而从成绩单中挑出补考学生的信息是一件很繁琐的事情。通过ASP技