链接:https://pan.baidu.com/s/1va5_BZpvDmXvMhRo_V2vhw
提取码:oxq9
针对传统人工进行学生宿舍电量查询、交费与管理过程繁琐的问题,使用统一终端设备查询、交费与管理的方法,达到简化流程、方便实用、提高效率的效果。
数据项名 | 含义说明 | 数据类型 | 长度 | 取值范围 |
---|---|---|---|---|
fid | 栋号 | varchar | 2 | 最长2位 |
flevel | 楼层数 | varchar | 2 | 最长2位 |
froom | 房间数 | int | 最长3位 | |
fexpect | 宿舍楼可住人数 | int | 最长3位 | |
freal | 宿舍楼实住人数 | int | 最长3位 | |
did | 宿舍号 | varchar | 4 | 最长4位 |
dexpect | 宿舍可住人数 | int | 最长1位 | |
dreal | 宿舍实住人数 | int | 最长1位 | |
stuid | 学号 | varchar | 13 | 13位 |
name | 姓名 | varchar | 10 | 最长10位 |
sex | 性别 | varchar | 2 | 2位 |
age | 年龄 | Int | 0-65 | |
depart | 系别 | varchar | 20 | 最长20位 |
major | 专业 | varchar | 20 | 最长20位 |
phone | 手机号 | varchar | 11 | 最长11位 |
year | 年份 | varchar | 4 | 4位 |
month | 月份 | varchar | 2 | 最长2位 |
electric | 电量度数 | varchar | 4 | 最长4位 |
fare | 用电费用 | double | ||
money | 欠费总额 | double | ||
password | 普通用户密码 | varchar | 20 | 最长20位 |
rid | 工号 | varchar | 20 | 最长20位 |
rname | 管理员用户名 | varchar | 10 | 最长10位 |
rpassword | 管理员密码 | varchar | 20 | 最长20位 |
数据结构名 | 组成 |
---|---|
宿舍楼 | 栋号,楼层数,房间数,可住人数,实住人数 |
宿舍 | 栋号,宿舍号,可住人数,实住人数,居住性别,欠费总额 |
学生 | 学号,姓名,性别,年龄,系别,专业,栋号,宿舍号,手机号 |
用电量 | 栋号,宿舍号,年份,月份,用电度数,用电费用 |
普通用户 | 学号,普通用户密码 |
管理员 | 工号,管理员用户名,管理员密码 |
数据流 |
---|
数据流名:宿舍楼表 说明:宿舍楼的信息 数据流来源:系统录入 数据流去向:宿舍楼表 组成:栋号,楼层数,房间数,可住人数,实住人数 |
数据流名:宿舍表 说明:宿舍的信息 数据流来源:系统录入 数据流去向:宿舍表 组成:栋号,宿舍号,可住人数,实住人数,居住性别,欠费总额 |
数据流名:学生表 说明:学生的信息 数据流来源:系统录入 数据流去向:学生表 组成:学号,姓名,性别,年龄,系别,专业,栋号,宿舍号,手机号 |
数据流名:用电量表 说明:用电信息 数据流来源:系统录入 数据流去向:用电量表 组成:栋号,宿舍号,年份,月份,用电度数,用电费用 |
数据流名:普通用户表 说明:普通用户信息 数据流来源:用户注册录入 数据流去向:普通用户表 组成:学号,普通用户密码 |
数据流名:管理员表 说明:管理员信息 数据流来源:管理员注册录入 数据流去向:管理员表 组成:工号,管理员用户名,管理员密码 |
数据存储 |
---|
数据存储名:宿舍楼信息表 说明:存储了宿舍楼的基本信息 输入的数据流:系统宿舍楼信息录入 输出的数据流:录入数据库 组成:宿舍楼信息=栋号+楼层数+房间数+可住人数+实住人数 |
数据存储名:宿舍信息表 说明:存储了宿舍的基本信息 输入的数据流:系统宿舍信息录入 输出的数据流:录入数据库 组成:宿舍信息=栋号+宿舍号+可住人数+实住人数+居住性别+欠费总额 |
数据存储名:学生信息表 说明:存储了学生的基本信息 输入的数据流:系统学生信息录入 输出的数据流:录入数据库 组成:学生信息=学号+姓名+性别+年龄+系别+专业+栋号+宿舍号+手机号 |
数据存储名:用电信息表 说明:存储了每个宿舍每个月用电的基本信息 输入的数据流:系统用电信息录入 输出的数据流:录入数据库 组成:用电信息=栋号+宿舍号+年份+月份+用电度数+用电费用 |
数据存储名:用户注册信息表 说明:存储了学生注册的基本信息 输入的数据流:用户注册信息录入 输出的数据流:录入数据库 组成:注册用户信息=学号+密码 |
数据存储名:管理员注册信息表 说明:存储了管理员注册的基本信息 输入的数据流:管理员注册信息录入 输出的数据流:录入数据库 组成:管理员信息=工号+管理员用户名+管理员密码 |
处理过程 |
---|
处理过程名:注册检验 说明:检验要注册的信息是否合理 输入:输入要注册的信息 处理:检验信息格式是否正确,检验数据库是否已经存在该信息 输出:原注册页面或注册成功页面 |
处理过程名:登录检验 说明:检验要登录的信息是否合理 输入:输入要登录的信息 处理:检验信息格式是否正确,检验数据库是否存在该信息 输出:原登录页面或系统主界面 |
处理过程名:查询信息 说明:通过联合查询的方式查询所需信息 输入:输入查询的条件 处理:在数据库中查询符合条件的数据 输出:符合条件的数据信息页面 |
处理过程名:添加信息 说明:添加学生信息 输入:输入要添加的学生信息 处理:在数据库中添加输入的学生信息 输出:新的信息表页面 |
处理过程名:修改信息 说明:修改学生信息 输入:输入修改的学生信息 处理:在数据库中修改学生信息 输出:新的信息表页面 |
处理过程名:删除信息 说明:删除学生信息 输入:选择要删除的学生信息 处理:在数据库中删除该学生信息 输出:新的信息表页面 |
处理过程名:更新欠费总额 说明:模拟交电费的过程 输入:输入要支付的金额 处理:将数据库中原欠费总额减去输入的支付金额并更新 输出:更新后的欠费总额 |
处理过程名:修改密码 说明:用户进行密码的修改 输入:输入旧密码、新密码、确认密码信息 处理:检验旧密码是否与数据库中的密码一致,将旧密码更新为新密码 输出:修改成功提示框 |
- 注册:通过用户注册页面用学号、密码注册一个新的账户,来使用此系统。
- 登录:通过学号、密码登录此系统。
- 查询:通过搜索指定的栋号、宿舍号、年份、月份,能够查询到每月对应的用电度数和用电费用。
- 交费:在交费页面中输入相应金额后可进行模拟交费。
- 修改密码:为了提高密码安全性,用户能够进行密码的修改。
- 注册:通过管理员注册页面用工号、用户名、密码注册管理员账号。
- 登录:通过工号、密码登录后使用管理学生信息功能。
- 查询
- 学生页面:通过学号、栋号、宿舍号查询学生的具体信息。
- 宿舍楼页面:通过栋号查询宿舍楼具体信息。
- 宿舍页面:通过栋号、宿舍号查询宿舍具体信息。
- 修改:管理员能修改学生的某些信息。
- 添加:添加一条学生记录。
- 删除:删除一条学生记录。
- 宿舍楼(栋号,楼层数,房间数,可住人数,实住人数)
- 宿舍(栋号,宿舍号,可住人数,实住人数,居住性别,欠费总额)
- 学生(学号,姓名,性别,年龄,系别,专业,栋号,宿舍号,手机号)
- 用电量(栋号,宿舍号,年份,月份,用电度数,用电费用)
- 普通用户(学号,普通用户密码)
- 管理员(管理员号,管理员用户名,管理员密码)
create table floor (
fid varchar(2) not null ,
flevel varchar(2) not null ,
froom int not null ,
fexcept int not null ,
freal int not null ,
primary key(fid)
);
create table dorm (
fid varchar(2) not null ,
did varchar(4) not null ,
dexcept int not null ,
dreal int not null ,
dsex varchar(2) not null ,
dmoney double not null ,
primary key (fid, did),
foreign key (fid) references floor (fid)
);
create table ele (
fid varchar(2) not null ,
did varchar(4) not null ,
year varchar(4) not null ,
month varchar(2) not null ,
electric varchar(4) not null ,
fare double not null ,
primary key (fid,did, year, month),
foreign key (fid, did) references dorm (fid, did);
);
create table stu (
stuid varchar(13) not null ,
name varchar(10) not null ,
sex varchar(2) not null ,
age int not null ,
depart varchar(20) not null ,
major varchar(20) not null ,
phone varchar(11) not null ,
fid varchar(2) not null ,
did varchar(4) not null ,
primary key (stuid)
);
create trigger tri1
after inster on stu
for each row
begin
update floor
set freal=(freal+1) where fid=new.fid;
update dorm
set dreal=(dreal+1) where fid=new.fid and did=new.did;
end;
create table user (
stuid varchar(13) not null ,
password varchar(20) not null ,
primary key (stuid)
);
create table root (
rid varchar(20) not null ,
rname varchar(10) not null ,
rpassword varchar(20) not null ,
primary key (rid)
);
部分功能界面展示