一、项目难点
1.用户注册
思路:
-
查询所有可用卡 tb_card
-
查询所有的套餐类型, 用户选择套餐类型,
-
根据用户选择的套餐类型, 查询套餐信息
-
用户输入用户,密码. 输入充值金额
-
根据输入金额与用户选择套餐的月租比较, 输入金额小于月租, 错误提示, 用户再重新输入
-
如果大于等于, 往用户卡表(tb_mobole_card)插入一条记录
-
修改tb_card表,用户选择该手机号码的卡状态设置为不可用
-
往充值记录表中添加一条充值记录
-
显示办卡成功, 输出用户卡相关信息,以及套餐信息
-
跳转到一级菜单
2.使用嗖嗖
思路
1.输入手机号码查询到用户卡信息、查询套餐
2.如果卡冻结状态,无法使用嗖嗖,显示错误信息数据
3.查询所有场景,随机一个场景进行模拟得到场景类型
-
假设随机第一个场景, 通话场景, 打90分钟电话,
剩余免费余量 = 套餐最大免费量 - 月消费当月消费量(查询月消费)
-
如果用户的卡的剩余免费余量 > =场景的数量, 不需要扣钱, 在月消费记录表, 当月增加使用量的值
-
如果用户的卡的剩余免费余量 < 场景的数量, 需要扣钱, 在月消费记录表, 当月增加使用量的值,
超出的部分进行扣费, 修改的用户卡的余额
-
往消费记录表进行记录本次消费 消费记录表
二、完成项目的收获
在经历了一周时间的代码编写,我收获到了很多。这是自己参与的第一个项目,同时也将是我程序生涯的开头。这个项目作为我们java部分的总结训练,内容覆盖全面,涉及广泛,其中涉及到了数据库的知识,包括增删查改,还有JDBC操作数据库。还用到了java中的属性,方法,集合,接口,随机数,i语句,switch语句,while循环等,涉及到的知识面相当广泛,在我一开始写的时候根本不知道这些如何去使用,知识的理解程度不够,部分知识点未学习导致我只能跟着老师的视频敲,进度相对于其他人也慢了一些。在练习过程中也出现了一些结构上的问题,并且重新去组织思路,还有一些标点符号的错误,命名很多也很难,命名不规范对于自己查看代码也非常困难,总的来说,这次项目经历让我收获颇丰。