案例-学历信息征信系统

Catalogue
  1. 1. 需求分析
  2. 2. 1.3 数据模型设计
  3. 3. 参考资料

需求分析

现在是一个信息化的高科技时代,许许多多的企业必须紧跟时代步伐,不断创新,才能发展壮大;而企业的发展必然离不开人才队伍的建设,也可以说创新是企业发展的动力,而人才却是企业发展的根本,所以现在各企业对于人才队伍建设十分看重,而对于人才的素质及受教育情况的要求更是重中之重。

对学历信息的查询,要么成本较高,要么比较麻烦,甚至还有一些假冒网站让人防不胜防;传统应用是将数据保存在数据库中来实现,但是现在出现的数据库由于故障或者被删、被黑造成的数据丢失的情况更是屡见不鲜,所以传统数据库并不能真正意义上确保数据的完整性及安全性。

基于这些情况,我们设计并开发了一个 基于区块链技术的实现的学历信息征信系统,实现了在线对学历信息的查询功能,由于区块链技术本身的特点,无须考虑数据被破坏的问题,而且杜绝了对于信息造假的情况,保证了学历信息的真实性。由于篇幅原因,我们对学历信息征信系统的应用场景进行修改及简化,实现的业务逻辑包括添加信息、修改信息、查询信息、查询详情信息等操作,实际情况下的的业务逻辑需要根据实际需求场景做出相应的调整。

由于系统需要保证人才受教育情况真实性,所以对于系统的用户而言,不可能由用户自己添加相应的学历信息,而是由具有一定权限的用户来完成添加或修改的功能。但普通用户可以通过系统溯源功能来确定信息的真伪。所以我们将系统用户的使用角色分为两种:

  1. 普通用户
  2. 管理员用户

普通用户具有对数据的查询功能 ,但实现查询之前必须经过登录认证:

  • 用户登录:系统只针对合法用户进行授权使用,所以用户必须先进行登录才能完成相应的功能。
  • 查询实现:查询分为两种方式实现
    • 根据证书编号与姓名查询:根据用户输入的证书编号与姓名进行查询。
    • 根据身份证号码查询:根据用户输入指定的身份证号码进行查询,此功能可以实现溯源。

管理员用户除具有普通用户的功能之外,额外添加了两个功能:

  • 添加信息:可以向系统中添加新的学历信息。
  • 修改信息:针对已存在的学历信息进行修改。

1.3 数据模型设计

由于需要向分类账本中保存数据,所以必须设计相关的结构体用于声明要保存的数据结构,用于方便的在应用中处理数据。

Education 结构体设计如下表所示:

名称 数据类型 说明
ObjectType string
Name string 姓名
Gender string 性别
Nation string 民族
EntityID string 身份证号(记录的Key)
Place string 籍贯
BirthDay string 出生日期
Photo string 照片
EnrollDate string 入学日期
GraduationDate string 毕(结)业日期
SchoolName string 所读学校名称
Major string 所读专业
QuaType string 学历类别(普通、成考等)
Length string 学制(两年、三年、四年、五年)
Mode string 学习形式(普通全日制)
Level string 层次(专科、本科、研究生、博士)
Graduation string 毕(结)业(毕业、结业)
CertNo string 证书编号
Historys []HistoryItem 当前edu的详细历史记录

为了能够从当前的分类状态中查询出详细的历史操作记录,我们在 Education 中设计了一个类型为HistoryItem 数组的 Historys 成员,表示当前状态的历史记录集。

HistoryItem 结构体设计如下表所示:

名称 数据类型 说明
TxId string 交易编号
Education Education 本次历史记录的详细信息

参考资料