机房收费系统--各个窗体功能实现的基本要点
来源:互联网 发布:安卓app 知乎 编辑:程序博客网 时间:2024/05/16 08:31
各窗体是按照权限分类的
操作员
1.学生注册:涉及两个表(student_info和recharge_info),注册成功时在学生表增加一条记录同时充值表也增加一条记录.界面上,本次要充入的金额可以输入但是最终"充值金额"不可输入.代码则不要忘mrc.addnew和mrc.update
2充值:首先判断该卡是否已注册,若注册则充值成功时在充值表增加一条记录,同时更新学生表中的余额数据.
3.退卡:判断该卡是否注册是否正在上机,已注册未上机则办理退卡,退卡成功不删除学生表中的记录,而是将state由"使用"改为"不使用".
4.收取金额查询:用到一个日期控件,DTPicker,然后查询两个日期之间的所有记录.导出为Excel的方法在上一篇博客中有详细介绍.
5.退还金额查询:即由于退卡而退回的金额,在学生表中查询两个日期之间的status为"不使用"的记录.
6.学生基本信息维护
7.学生上下机统计信息
8.操作员工作记录
这三个都是组合查询,通过字段名(卡号,姓名等),操作符(<=等)和组合关系(and,or)的组合构成查询条件,在相应的表中的找到记录并用MXFlexGrid控件显示.其中用到的方法是定义一组变量Field(2),通过select语句判断combo控件的comboField.listindex属性值给变量Field(0)赋值,其他两个条件同上,然后构造SQL语句.用到的思想是用变量将字段内容取出,在处理多个类型相同的数据时,数组不失为一种极佳的选择.
一般用户1学生查看余额
2学生上机记录查看
3.学生充值记录查询
输入卡号,进行一些条件的判断,如是否注册,卡号是否为空,然后分别在学生表,上下机表,充值表中查询并显示符合条件的记录.
4.学生上机状态查看:
该窗体有四个菜单选项,
(1)上机状态查询,是一个组合查询,查找符合某些条件的正在上机的记录.
(2)显示全部,将正在上机表中的所有记录查询出来显示.
(3)上机管理,包括全部下机和选中学生强制下机,参考下机的事件过程即可.
(4)退出.
5.修改密码:输入旧密码和新密码,在user表中查询该userID的PWD,若和输入的旧密码,则更新user表数据,改为新密码.
6退出
退出时,用到QueryUnload事件,对参数UnloadMode进行判定,若为0-5则提示是否退出,退出时在操作员工作记录表中补充相应信息.
管理员
1.结账
分别从student_info,recharge_info和cancelcard_info中查询userid为某个操作员且status为未结账的记录,结账时将各个记录集的个数赋值给汇总部分的相应文本框,更改status为已结账.选择操作员的意义在于管理员可以核对该操作员所上交的钱和系统的账目上的收入金额是否一致,对于后台数据库没有多少影响.此处的操作员应为广义上的操作员,即包括有注册,充值,退卡等权限的管理员.
2.添加删除用户:
选择用户级别,填写用户信息,然后更新user_info中的数据.
3.基本数据设定:
该表的意义在于为上下机的结账提供依据.表中数据分别有一下意义:
(1)准备时间:为上机学生提供一定的准备时间,该时间段内不收费
(2)最少上机时间:如果上机时间少于该数,则按照最少上机时间收费
(3)递增单位时间:在上机时间大于最少上机时间的情况下,按照递增单位时间计算上机时间,不足一个单位时间的按照一个单位时间计算.
(4)每半小时费用:根据实际情况,递增单位时间应该是半小时的整数倍,所以设定每半小时的费用,依此计算上机费用.
4正在值班教师查询:
在教师工作记录表中查询status为"true"的记录即可.
5日结账单
6周结账单
共用checkday_info一张表,日结时只对当天的充值金额,消费金额和退卡金额各进行求和结算,更新数据,然后用报表显示出来.有打印和打印预览功能.周结时,选择起止日期,为防止有某日未结账而直接从数据库中读取数据将漏掉数据的情况,先将该时间段内的记录删除,然后执行日结的过程,重复次数为该时间段的天数.然后再从数据库中读取这些记录并显示.
登录窗体
1.考虑是否在线
2.判断用户名是否合法
3.判断用户名和密码是否一致
4.判断权限
上机
判断是否注册,
是否正在上机,
判断最小余额,小于最少余额,提示余额不足.
满足条件开始上机
下机
准备时间内不收费
消费时间consumetime=offtime-ontime
计费时间=consumetime-preparetime
如果上机时间<准备时间,则直接下机不收费
如果准备时间<上机时间<至少上机时间,则按照至少上机时间收费
如果上机时间>至少上机时间,则按照递增单位时间收费
- 机房收费系统--各个窗体功能实现的基本要点
- 机房收费系统之窗体遍历的实现
- vb.net机房收费系统一个小功能的实现
- 机房收费系统之功能实现
- 机房收费系统思路要点
- 机房收费系统(五)有关子窗体的最小化功能
- 机房收费系统-MDI窗体与子窗体的问题
- 机房收费系统窗体功能分析
- 机房收费系统 窗体归类
- 登录窗体--机房收费系统
- 查询窗体--机房收费系统
- 机房收费系统-登录窗体
- 机房收费-小功能的实现
- 机房收费系统中各个表的应用
- C#编写机房收费系统的登录窗体
- 机房收费系统之子窗体显示的那些事儿
- 机房收费系统之结账窗体的思考
- 机房收费系统基本流程
- 盘点国内知名LBS签到产品归宿
- JavaSE第十五讲:方法参数传递详解
- AIX 平台上基于 IBM JDK 的 Java 应用内存泄漏分析
- linux 下 .sh 文件语法
- linux 命令备忘
- 机房收费系统--各个窗体功能实现的基本要点
- No.1: autoconf automake
- LRU cache implementation in C++
- android开发中代码片段集合 (一)
- poj 1845 Sumdiv
- 用WPF和WinForms实现的几个控件,带Tick的ProgressBar和TrackBar。
- redhat5中文显示乱码的解决方案
- 对于矩阵类型的一些算法的总结(一)
- 机房收费系统--对象图