ATM系统开发日志[2] [00原创]

 今天修改了Client的界面显示。
需求里要求操作界面显示,我把所有操作界面做在了一个Window里,每一步的操作界面都继承org.eclipse.swt.widgets.Composite去实现,但是在overwite
setVisible方法的时候出现问题了,在上一步操作界面里不能把当前的界面都隐藏,所以只能为每个控件都setVisible,郁闷。

另外,今天开始了取款操作的业务逻辑实现,再看下需求:
取款:
进入取款后选择账户类型(活期账户,定期账户,信用卡帐户),选好账户类型后,提示该ATM机一次能取款的最大金额-2000元
该用户的一个帐户(用户可能有多个帐户)一天取款累计的最大金额为5000。
用户选择“取款”后,选取系统界面上的固定金额(500,1000,1500,2000),或是输入要取的金额,进行取款
若是取款金额大于余额,提示余额不足
若是所取金额大于ATM机一次能取款的最大金额2000,给出提示,重新输入取款金额或是选择退卡
若是一天所取累计金额大于该帐户一天取款累计金额(5000)的限制,给出提示信息,重新输入取款金额或是选择退卡
信用卡帐户可透支取款,透支额为2000元,其他帐户不允许透支取款
取款后,给出提示选择退卡或是继续服务
定期账户取款,如定期账户没有到期,一次取款交易收取手续费10元,从余额中扣除
活期账户取款,如当月取款交易数累计不大于5次(<=5),无交易手续费,如超过5次,一次取款交易收取手续费2元,从余额中扣除
信用卡帐户取款,业务规则无(不用实现)
完成后用户可选择退卡或是继续选择服务

看了需求,先实现下数据库。连上前面登录的表在内,现在共3张表,分别是LoginAccount, Balance, Account
Login表5个字段:
CardID: 卡号
Pwd: 密码
CurID: 活期帐户帐号
DepID: 定期帐户帐号
CredID: 信用卡帐户帐号

Balance表2个字段:
AccountID: 帐户帐号
Balance:结余

Account表4个字段:
AccountID: 帐户帐号
TransactionType:交易类型(主要是有取款,存款)
Amount:本次交易金额
Time: 日期时间

刚才把取款基本功能做完了,但还没有实现对取款的约束,不过这个应该比较好做:-)

另外,上次的问题还没解决,主要是乱码问题,MySQL的远端访问配置应该是搞好了,先不急这个。部署的时候在弄:-)

你可能感兴趣的:(ATM系统开发日志[2] [00原创])