关键点就是: 从数据库中查找到学生的班级, 比如"管理科学151班"
然后通过表中的班级选项找到对应的课程 比如:
2018/1/23 上午10:10-12:10 生产运作管理 管理 管理科学[151-2]班 60 教238(64) 喻登科 管理 黎继子 管理
前端需要类似这样的数据:
[
{
'date': '2018/1/23', // 表中是精确的
'time': '上午10:10-12-12:10', // 表中是精确的
'courseName': '生产运作管理', // 表中是精确的, 但不知道和家园课程表中的课程是不是一一对应的, 比如可能课程表中是'生产运作管理学'
'depName': '管理' // 表中是不精确的, 但是其实这一项可以没有
'class': '管理科学151班,管理科学152班', //表中是及其不精确的,但是数据库里是精确的
'studentNum': '60', // 表中是精确的, 个别数据缺失, 不一定需要
'classroom': '教238(64)', // 表中是不精确的, 但极好处理, 不一定需要
'teacher': '喻登科,黎继子' // 表中是精确的, 看产品是否需要
},
...
]
{
''
}
分析了一下考试时间的数据:
- 首先是课程规律:
#通用外语类(109) 不可能通过班级映射, 因为它是额外分的班, 除非你拿到英语分班的
名单, 所以不能从表中确定你是否需要参加该场考试
# 高等数学类(73) 同理需要高数分班名单
# 大学英语(130) 同理需要英语AB分班名单
# 大学物理(40) 同理需要物理分班名单
上面提到的都不能通过班级来映射, 需要用户自己添加 其他的都可以通过班级映射来找到。
- 然后是班级: 统一标准:
管理科学151班,管理科学152班
** 只有和数据库一样的班级名称是合法的 即: 专业名 + 年级名
** 把数据库中的所有合法班级名导出来
特殊班级名: 前湖学院2017级综合实验班, 2017级高等研究院本硕 , 2017级国学本硕实验班, 体教16级, 运训16级(可能还有其他少数特殊班级,但一律以数据库为标准)
** 班级与班级之间用英文逗号
隔开
几乎所有班级数据都包含专业名
和年级名
这两个数据, 只是格式不一样
所以需要把所有的班级名都整理成标准格式
如果存在没有包含专业名
和年级名
这两个数据的班级数, 叫用户自己添加课程
- 整理班级名
第一步允许出现缩写的专业名, 比如 管科151, 管科152 -> 管理科学151,管理科学152
第二步通过人工识别用 Excel 的替换功能或者sublime的CTRL+D批量处理, 统统换成标准格式
注:计算机应用基础这门课的数据基本是标准的, 可以参考下
如果真的要做的话, 分工下去, 用脚本或者人工批处理把数据整理成标准格式
最后注意连接数据库测试一遍确定所有班级都是标准的
至于能否放到课程表对应的课上, 还要映射一下表中的课程名和家园数据中的课程名是否一致, 恐怕有点麻烦
纯属个人意见, 如果有不妥之处或更好的方法, 可以忽略该提议~