APP下载

基于ThinkPHP5.0的助学管理系统的设计与实现

2019-09-10谢丽萍

甘肃科技纵横 2019年5期
关键词:入库助学金贫困生

谢丽萍

中图分类号:   TP311.5         文献标识码:A

摘要:为了帮助贫困家庭孩子解决上学问题,国家通过国家助学金政策给符合条件的同学提供了各类帮助。作为一线班主任,结合日常奖助工作,研究利用计算机技术来实现助学金申请的有效管理, 开发基于ThinkPHP5.0的助学管理系统,实现贫困生入库管理和助学金管理。根据学生、班主任、辅导员和管理员的身份,确定不同的操作权限,根据不同的权限进行不同的操作。实现从管理员发布消息、学生提交申请、班主任审核、管理员公示结果全部流程在线完成。

关键词:ThinkPHP5.0;助学;入库

1 引言

为体现党和政府对普通本科高校、高等职业学校家庭经济困难学生的关怀,帮助他们顺利完成学业,根据《国务院关于建立健全普通本科高校、高等职业学校和中等职业学校家庭经济困难学生资助政策体系的意见》(国发〔2007〕13号),施行国家助学金政策。

从2010年秋季学期起,中央与地方共同设立国家助学金,用于资助普通高中在校生中的家庭经济困难学生,资助面约占全国普通高中在校生总数的20%,其中:东部地区为10%、中部地区为20%、西部地区为30%。各地可结合实际,在确定资助面时适当向农村地区、贫困地区和民族地区倾斜[1]。

各个高校为了对贫困生进行有效管理,花心思进行了仔细研究:有对高校勤工助学活动组织的发展困境与对策分析进行分析的[2],也有运用计算机技术进行了一系列的研究和开发,有采用面向对象的软件技术,简要分析高校勤工助学管理系统的研究与设计[3]。

为了有效进行国家助学金,首先要对贫困学生进行认定,建立贫困学生库。然后根据每年国家下拨的国家助学金名额,通过贫困生自己申报,学校根据条件进行审核,确定最终的获助名单。

本系统是一线工作的班主任根据日常贫困生管理的相关工作,结合贫困生入库和国家助学金评定的具体要求进行开发。

2 系统模块设计

本系统的模块如图1所示。

本系统基于PHP的框架ThinkPhp5.0[4]进行开发。主要功能包括:

(1)管理端

用户权限管理(用户管理、角色管理、权限管理)

基础信息管理(学院管理、年级管理、民族管理、政治面貌管理、困难等级管理、贫困类型管理、家庭户口管理、收入来源管理、与学生关系管理、健康状况管理、间隔管理)

贫困生助学管理(入库管理、助学金管理、通知管理)

(2)学生端

入库管理(入库申请、入库查询)

助学金管理(助学金申请、助学金查询)

3 数据库设计

在本系统中,核心内容是“贫困生助学管理”模块,里面涉及入库管理和助学金管理。为了记录入库和助学金的相关信息,创建数据表如下:

(1)Store表,保存学生的入库信息。这些信息包括在日常工作中,每年进行贫困生入库所需要填报的信息。

此外,为了后续审核过程中,记录是否已经通过审核,还需要记录审核状态(StoreStatus)以及申请的日期(ApplyDate)。所以Store表的结构如下:

Store表:入库ID(ID),院系名称(DepartmentName),专业名称(MajorName),辅导员名称(InstructName),班级名称(ClassName),学生姓名(StudentName),身份证号(StudentNum),性别(StudentSex),出生年月(StudentBirth),名族(Nation),政治面貌(PoliticalStatus),学号(StudentID),入学年度(RegisterYear),联系电话(StudentTelephone),贫困等级(PoorLevel),年级(Grade),贫困类型(PoorType),家庭户口(HouseholdReg Health ister),家庭人数(FamilyNum),家庭月收入(FamilyMonthSalary),收入来源(SalarySource),家庭地址(FamilyAddress),影响家庭经济状况有关信息(FamilyEconomic),年度(Year),家长姓名(ParentName),家长身份证号(ParentIDNum),家长年龄(ParentAge),与学生关系(Relation),家长职业(ParentCareer),年收入(FamilyYearSalary),健康状况(FamilyYearSalary)

(2)Grant表,保存获得助学金的学生的信息。

此外,还需要记录是否通过审核(PassStatus)、审核状态(ChechStatus)和申请日期(ApplyDate)。所以Grant表的结构如下:

Grant表:获助ID(ID),StudentID(学号),StudentName(学生姓名),StudentSex(性别),Nation(民族),DepartmentName(院系名称),ClassName(班级),SpecificAmount(具体金额),StudentAccount(银行卡号),PassStatus(是否同意),CheckStatus(审核状态),ApplyDate(申请日期),Year(年度)。

4 系統实现

4.1 系统流程

本系统采用ThinkPHP5.0进行开发,通过控制器(Control)进行后台开发,视图(View)进行前台设计,每个控制器的通过Restful路由模式实现[4]。这里,主要介绍助学金模块的实现过程。助学金模块的工作流程如图2所示。其中,实现标注箭头为主流程,包括:“学生申请”->“班主任同意”->“学生填写账号”->“班主任审核”。其中,“学生申请”从本质上讲是数据的添加,“班主任同意”、“学生填写账号”和“班主任审核”从本质上讲是数据的修改。

从学生提交申请开始,学生本人和班主任就能查看本人的,或者自己班级的申请情况。一旦班主任审核通过学生的申请,则辅导员和管理员就能查看自己学院或者学校的已经通过审核的申请情况。因此,按权限查看信息是本模块的重点,也是难点。

在系统实现时,通过RBAC(基于角色的权限访问控制)模式[5],对每个用户确定了相应的身份。当用户调用相应的模块时,先查看给用户的身份(即角色),根据身份,确定其可以访问的数据权限。具体实现如下。

(1)从SESSION中获取用户的用户名$username

$username=$_SESSION['admin_user']['username'];

(2)根据用户名,查询role、user、user_role表,获取用户角色$role

$row=Db::name('role')

->alias('r')

->field(['r.name as role','u.class as class','u.department as department'])

->join('user_role ur','ur.rid=r.id')

->join('user u','u.id=ur.uid')

->where('u.username',$username)

->select();

$role=$row[0]['role'];

(3)判断用户是否是管理员,或者辅导员

$result_m=strstr($role,'管理员');

$result_i=strstr($role,'辅导员');

(4)根据用户身份,最终确定该执行什么权限的操作

if($result_m)

{

//执行管理员的相关权限,具体代码略

//查看全校各个学院本年度已经通过审核的助学金申请

}

elseif($result_i)

{

//执行辅导员的相关权限,具体代码略

//查看自己学院本年度已经通过审核助学金申请

}

else

{

//执行班主任的相关权限,具体代码略

//查看自己班级学生本年度提交的申请和已经通过审核的助学金申请

}

4.2 状态标志

学生申请主要包含以下状态:

1 已提交申请,还未审核

2 已提交申请,班主任未同意

3 已提交申请,班主任同意

4 已填写账号信息,班主任未审核

5 已填写账号信息,班主任已审核

为了记录上述状态,在数据库端主要通过PassStatus和CheckStatus来记录。具体如下表1所示。

通过上述标志字段的判断,可以在网页上显示每个用户的操作权限。

学生端对已经提交的申请,如果还没同意,可以编辑和删除自己的申请信息;已经同意的,则可以根据是否已经审核,确定是否能填写账号信息或者编辑账号信息,具体代码如下:

{if condition="$v['PassStatus'] eq 0"}

<a …>编辑</a>

<button…>删除</button>

{else}

{if condition="$v['CheckStatus'] eq 0"}

{If condition="$v['StudentAccount'] == NULL"}

<a …>填寫账号信息</a>

{else}

<a …>编辑账号信息</a>

{/if}

{else}

已审核

{/if}

{/if}

同样,班主任端可以根据标志字段值,给出相应的操作权限,具体代码如下所示:

{if condition="$v['PassStatus'] eq 0"}

<a …>同意</a>

{else}

<a …>不同意</a>

<a …>通过审核</a>

{/if}

5 总结与展望

本系统的开发主要是一线教师在在从事班主任工作时,将授课课程内容和班主任工作相结合,开发能解决实际问题,并且可以选择作为贴近学生生活学习的案例进行讲授。和现有的专业系统相比,还有很大的差距。在后续研究中,将系统和微信等主流移动APP结合,学生端通过微信公众平台进行开发,方便学生随时随地通过手机进行提交申请和填写相关信息。

参考文献

[1]百度百科, 国家助学金, https://baike.baidu.com/item/%E5%9B%BD%E5%AE%B6%E5%8A%A9%E5%AD%A6%E9%87%91/9692251?fr=aladdin

[2]徐新. 高校学生勤工俭学助学管理系统的研究与设计[J].智库时代,2018(47):85+91.

[3]昝雪梅.高校勤工助学活动组织的发展困境与对策分析——以中南民族大学勤工助学指导中心为例[J],现代商贸工业,2018(34):53-54.

[4]看云KanCloud,ThinkPHP5.0完全开发手册,https://www.kancloud.cn/manual/thinkphp5.

[5]彭波.基于ThinkPHP的监考管理系统[J],福建电脑,2018(11):128-129.

猜你喜欢

入库助学金贫困生
2021年山西省6591家科技型中小企业入库
中国食品品牌库入库企业信息公示②
中国食品品牌库入库企业信息公示①
贫困生的隐私与尊严亦当细心呵护
高校贫困学生的心理健康状况及其对策
《花花肠子》《倒车入库》《拔牙之后》《老农赶集》
大学用话费查“装穷”贫困生月超150元取消资格
The Value of a University Education
莫与贫困生“抢饭吃”