你知道一个简单的积分管理系统是怎么做的吗

1.1设计概述
中小学生积分管理系统是从学生管理的实际出发, 阐述了积分管理考核办法的意义、内容、步骤以及在实践中体会, 并从理论与实践上探索了学校对中小学生管理的新模式。积分考核管理能发挥学生自我管理 、自我教育、自我完善的作用。从而使中小学生更好的提高自己的各个方面的综合素质。
1.2设计目的
积分管理考核办法对学生的思想、行为实行了量化管理, 但这种量化管理不能理解为对人的控制, 它是教育的一种转化形式。积分管理考核的整个过程实际上就是一个教育过程, 是思想教育在实践中的延伸, 它是通过公正的切合实际的考核触动和转化学生的思想, 使学生的认知发生质的变化, 并在实际行为表现中得以体现。如检查测评、奖优罚劣等, 这些都起到了注重实际表现和教育引导的作用, 使教育寓管理之中, 使管理与教育达到统一。
实行积分管理考核,广大中小学生有了统一的评价标准, 以统一的评价标准教育规范学生, 同时又不断发挥每个学生的特点和个性, 使学生的特点和个性在中小学的学习、生活中得到进一步提炼和升华, 便于学生对照自我,规范自身行为, 极大地激励和鞭策了广大学生潜在能力的发挥和发展, 达到了自我教育、自我提高和自我管理的目的。
1.3系统设计
因为软件最终要将存储在计算机中的数据展现给用户,并与用户通过界面接口进行交互。因此除了对领域建模中寻找出来的“实体类”和“控制类”进行描述之外,还需要对用户界面进行描述,并把界面提取为“边界类”。
将领域模型分解成类,导出实体类,在增加边界类和控制类完成程序的交互与控制。
从领域模型转换的实体类:用户、积分记录、学生信息和积分类型
增加的控制类:积分管理
增加的边界类:积分记录登记单表增加后的类图设计如图1-1:
请点击此处输入图片描
利用顺序图进行uml中对象交互建模,可以更直观的了解系统的运行,如图1-2所示,:
1.4持久化到数据库
在程序中定义的对象,在系统运行期间其生命周期包含创建、使用和消亡三个阶段。因为程序所有代码和数据在运行时载入到内存,程序运行结束它们都要从内存中释放,所以这些对象实例都是瞬时的或暂时性的。
一个信息系统中的领域类指代了系统中有意义的事物,这些领域对象及其所承载的信息是长期的,甚至是永久的。这些持久对象就是指生存期可以超越软件的一次执行时间而长期存在的对象。
该中小学生积分管理系统所涉及到的实体类有四个,这里对每个对象进行研究和设计。
学生表的设计:存储学生信息,其中包括了学号,姓名,性别,班级,年级,出生日期。该表存储了所有学生的基本信息,用户在查看学生信息时需要调用该表内的信息,在查询时也可以对学生进行按条件查询。学生表如表3-1所示:
表1-1 学生表
字段名称
数据类型
是否允许为空
stu_id
varchar(50)

stu_name
stu_sex
stu_grade
stu_class
stu_born_date
积分类型表的设计:存储积分类型,其中包括了积分类型号,积分类型名称以及积分类型分值。积分类型表如表3-2所示:
表1-2 积分类型表
inte_type_id
inte_type_name
inte_type_value
积分记录的设计:存储积分记录,其中包括了积分类型号,学号,操作时间,操作员。积分记录表如图表3-3所示:
表1-3 积分记录表
time
operator
用户表的设计:存储用户信息,其中包括了用户名称,密码以及权限。用户表如表3-4所示:
表1-4 用户表
acco_numb
password
authority
持久化到数据库的关系模型如下:
学生信息(学号,姓名,年级,班级,年龄);
积分类型(积分类型号,类型名称,分值);
积分记录(学号,积分类型号,操作时间,操作员);
用户(用户名,密码,权限);
学生表stu_info中的学号stu_id是学生表的主键,且积分记录表中的学号是它的外键;积分类型表integral_type中的积分类型号inte_type_id是积分类型表的主键,且积分记录表中的积分类型号是它的外键;积分记录表integral_record中使用学号与积分类型号共同作为积分记录表的主键。数据库的表之间的关系图如下图3-3所示:
请点击此处输入
2中小学生积分管理系统实现与测试
本系统主要是通过页面的测试,来检验系统功能是否完善、判断系统是否达到性能需求,旨在找出系统的不足,进而完善系统功能、优化系统的性能。验证最终软件系统是否能够满足用户所规定的需求。
2.1系统登录界面
登录有两种权限,一个是学生,另一个是老师。学生用自己的姓名作为用户名,学号作为密码;老师用自己的姓名作为用户名,年级作为密码。
登录是要查找数据库中的数据,核心代码如下:
string sql = select acco_numb,password from users where acco_numb=' + textbox1.text + ' and password = ' + textbox2.text + 'and authority = ' + combobox1.text + ';
datatable ds = sqlhelper.exetable(sqlhelper.strcondb, sql);
2.2学生登身份进入系统
学生进入后可以查看学生的基本信息,还可以查看学生的积分。
学生信息查找核心代码如下:
string sql = string.format(select stu_id as 学号,stu_name as 姓名,stu_sex as 性别, stu_grade as 年级,stu_class as 班级,stu_born_date as 出生年月+ from stu_info where stu_id like '%{0}%' and stu_name like '%{1}%', stuid, stuname);
datatable dt = sqlhelper.exetable(sqlhelper.strcondb, sql);
datagridview1.datasource = dt;
4.3以教师身份进入系统
主要有三个功能模块,可以进行学生管理,可以进行积分类型管理,还可以进行积分记录的管理。
2.4学生管理
可以对学生的基本信息进行管理,进行增加、删除、修改、查询的操作。
2.5积分类型管理
可以对学生的积分类型进行管理,进行增加、删除、修改、查询的操作。
4.6学生积分记录管理
可以对学生的积分类记录型进行管理,进行增加、删除、修改、查询的操作。
4.7计算个人总积分
教师可以计算出每个人的总积分,方便查看。
计算积分用到函数sum,其核心代码如下:
string sql = string.format(select stu_id as 学号,sum(inte_type_value) as 个人总积分 from integral_type,integral_record where integral_type.inte_type_id=integral_record.inte_type_id group by stu_id ,stuid);
这样一个积分管理系统也就完成了