今日思考,完成一个电话计费系统项目,需要实现哪些功能?
此类项目常见描述如下:
电话交换机计费系统是一种接收交换机/集团电话发送的SMDR数据,并处理输出的一种计费系统,该系统可运行于/ME/Windows2000/XP/Vista/Win7 操作系统,系统支持简体中文,繁体中文,英文,越南语,阿拉伯等多种语言的操作系统。软件依据电信收费标准设有最新国内,国际资费及各种资费的优惠方案、服务费设置等;用户可随时调整系统的资费参数。本软件适用于各种类型的集团电话/程控交换机,能为您提供出色的电话系统监控与话费管理。软件已被大量装机在政府机构、银行、酒店、企业及部队。产品已出口港澳台、马来西亚、葡萄牙、印尼、乌克兰、俄罗斯、蒙古、叙利亚、沙特等20多个国家及区域。
SSM(MYECLIPSE)框架及其适合本类项目,使用MVC的思想可以极大程度减少重复工作量。和SSM(MYECLIPSE)框架最配的开发工具是MYECLIPSE。MYECLIPSE集成了大量插件,可以更好的使用SSM(MYECLIPSE)进行项目的开发,使得项目开发时事半功倍。
通过对电话计费系统系统的仔细分析,可以得出电话计费系统系统是一个 后台项目。
在这样一个项目中,系统的登录角色是必不可少的,对每个登录角色设置账号、密码。以确保系统可以正常登录使用。SSM(MYECLIPSE)项目中包含的登录角色有管理员、用户。
总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、收费标准(shoufeibiaozhun)、话费管理id(huafeiguanli)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id xingming | VARCHAR(255) | | 姓名 xingbie | VARCHAR(255) | | 性别 nianling | VARCHAR(255) | | 年龄 quanxian | VARCHAR(255) | | 权限 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
收费标准表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 收费标准id guoneishoufei | VARCHAR(255) | | 国内收费 guojishoufei | VARCHAR(255) | | 国际收费 youhuifagnan | VARCHAR(255) | | 优惠方案 fuwufei | VARCHAR(255) | | 服务费
话费管理id表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 话费管理id guojichangtu | VARCHAR(255) | | 国际长途 guoneichangtu | VARCHAR(255) | | 国内长途 shengneitonghua | VARCHAR(255) | | 省内通话
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggdianhuajifeixingtong -- ---------------------------- DROP TABLE IF EXISTS `t_admin`; CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘管理员id‘,`username` VARCHAR(255) DEFAULT NULL COMMENT ‘账号‘,`password` VARCHAR(255) DEFAULT NULL COMMENT ‘密码‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘管理员‘; -- ---------------------------- DROP TABLE IF EXISTS `t_yonghu`; CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘用户id‘,`xingming` VARCHAR(255) DEFAULT NULL COMMENT ‘姓名‘,`xingbie` VARCHAR(255) DEFAULT NULL COMMENT ‘性别‘,`nianling` VARCHAR(255) DEFAULT NULL COMMENT ‘年龄‘,`quanxian` VARCHAR(255) DEFAULT NULL COMMENT ‘权限‘,`username` VARCHAR(255) DEFAULT NULL COMMENT ‘账号‘,`password` VARCHAR(255) DEFAULT NULL COMMENT ‘密码‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘用户‘; -- ---------------------------- DROP TABLE IF EXISTS `t_shoufeibiaozhun`; CREATE TABLE `t_shoufeibiaozhun` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘收费标准id‘,`guoneishoufei` VARCHAR(255) DEFAULT NULL COMMENT ‘国内收费‘,`guojishoufei` VARCHAR(255) DEFAULT NULL COMMENT ‘国际收费‘,`youhuifagnan` VARCHAR(255) DEFAULT NULL COMMENT ‘优惠方案‘,`fuwufei` VARCHAR(255) DEFAULT NULL COMMENT ‘服务费‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘收费标准‘; -- ---------------------------- DROP TABLE IF EXISTS `t_huafeiguanli`; CREATE TABLE `t_huafeiguanli` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘话费管理id‘,`guojichangtu` VARCHAR(255) DEFAULT NULL COMMENT ‘国际长途‘,`guoneichangtu` VARCHAR(255) DEFAULT NULL COMMENT ‘国内长途‘,`shengneitonghua` VARCHAR(255) DEFAULT NULL COMMENT ‘省内通话‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘话费管理id‘;
添加话费管理id模块:
通过添加话费管理id模块,可以完成话费管理id的添加操作。在页面中跳转到添加话费管理id页面,输入话费管理id的所有信息,点击添加操作,可以将话费管理id数据以post提交到huafeiguanliController中。话费管理id所包含的字段信息包括国际长途,国内长途,省内通话。在huafeiguanliController中通过定义huafeiguanli接受所有的话费管理id参数。使用huafeiguanlidao的insert方法将huafeiguanli实体插入到数据库中。完成数据的添加操作,在huafeiguanliMapper中匹配对应的huafeiguanlixml完成插入sql语句的执行操作。该部分核心代码如下:
通过huafeiguanlidao的insert方法将页面传输的话费管理id添加到数据库中 huafeiguanlidao.insert(huafeiguanli);
将添加话费管理id成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加话费管理id成功");
返回话费管理id管理界面
return "forward:/tianjiahuafeiguanli.action";
查询话费管理id模块:
在后台huafeiguanliguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成话费管理id查询操作。具体代码如下:
生成话费管理id样例类,通过example定义查询条件 HuafeiguanliExample example = new HuafeiguanliExample();
通过huafeiguanlidao的selectByExample方法查询出所有的话费管理id信息 List huafeiguanliall = huafeiguanlidao.selectByExample(example);
将话费管理id信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("huafeiguanliall", huafeiguanliall);
返回话费管理id管理界面
return "forward:/huafeiguanliguanli.action";
修改话费管理id模块:
在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaihuafeiguanli中,封装为一个话费管理id
,使用update方法修改该话费管理id信息,将数据同步到数据库,完成修改操作。
定义修改成功提示信息,修改话费管理id成功,并保存到request中具体代码如下:
通过huafeiguanlidao的修改方法根据id修改对应的话费管理id huafeiguanlidao.updateByPrimaryKeySelective(huafeiguanli);
将修改话费管理id成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改话费管理id信息成功");
返回话费管理id管理界面
return "forward:/huafeiguanliguanli.action";
删除话费管理id模块:
在页面中通过a标签,shanchuhuafeiguanli?id=将id传入到后台中,通过shanchuhuafeiguanli接收话费管理idid。使用deleteByid的方法
删除该话费管理id,完成删除操作。定义删除成功提示信息,删除话费管理id成功,并保存到request中,该部分代码如下:
通过huafeiguanlidao的删除方法根据id删除对应的话费管理id huafeiguanlidao.deleteByPrimaryKey(id);
将删除话费管理id成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除话费管理id成功");
返回话费管理id管理界面
return "forward:/huafeiguanliguanli.action";
原文地址:https://www.cnblogs.com/bzls/p/11599313.html