2016.6.30
Tasks: Developing the front-end of member module
Situation: Complete
Search User + AutoComplete
HTML5 Datalist? No.
Why?
I couldn't controll the height and sometimes the browser had no reponse when then receiving many results.
So, I had to write by myself......
Choosing role when adding user.
Radio of form? No.
Why?
So, I had to use the image from Grandfather Xiao......
It doesn't consist with the disign.......
The future
I want to do some tasks of backend......
做了什么
下轮迭代展望
1. Course 相关 APIs
2. Couse Assignment Submission 与授权服务器、文件服务、评测系统交互部分
本迭代负责任务
√ Course APIs
√ 与授权服务器对接
√ 与文件服务对接上传部分
√ 与文件服务对接下载部分
X 与评测系统对接
1. Web Service 与文件服务对接时上传文件出现问题
- 解决:文件服务的锅...
2. course_assignment_submission 的 API 目前似乎有点混乱,没有针对学生与老师分离
- 解决:待商讨
The future
1. 本轮迭代未完成内容
2. 等待新任务
1. 负责老师界面的AllSubmission 和 one-submission页面
2. 中间重新确定需求,Teacher点击one-assignment分为了teacher-programming, 和 teacher-non-programming两个页面
3. 实现了大部分的静态页面逻辑
4. 协助完成tab的相关逻辑
5. 移除负责页面的jquery
这轮迭代做的事
1. codeMirror的加载问题。如果一开始的页面不需要显示codeMirror的话,那么codeMirror的初始化应该需要显示的时候。(且设置不重复显示)否则会出现排版问题。
2. 同级css样式的优先级显示问题。用!important解决
3. tab创建与删除的实现。用Model来控制,通过ng-repeat设置存放tab内容的数组,创建与删除变成对数组的操作。
1. 对接老师界面的编程题接口
2. 处理多个tab,多个记录的显示逻辑
完成度: 60%
这次迭代主要负责了courseList, courseHome页面的实现也做了courseAssignmentList问题的重新对接工作。其余空闲时间在看《JavaScript设计模式》。
做了什么
Choosing role when adding user.
1. 数据库缺少挺多字段
2. Markdown能不能Save, 如提交空字符串,不断换行和直接多提交一次类似情况的解决。
下一轮迭代的展望
1. 完成courseList页面的样式修改
2. 继续看书
3. 等待安排
1. 基于 promise、新数据库结构、完成服务端的重构,包括代码目录架构扁平化、使用promise封装异步操作。
2. 设计新的 API 返回值的数据结构(主要添加了 role 以供前端权限控制), 制定内部 API 文档编写规范。
完成情况
3. 重新实现如下API (包括权限控制)
- index 主页
- user 登录
- course 获取课程列表、获取/修改课程描述、
- course_member 搜索不在课程的用户、查看/增加/删除课程成员
- course_assignment 获取课程题目列表、获取一个课程题目、获取某个题目的排行榜
- course_assignment_submission 更新某个提交的反馈
完成情况
主要是跟评测系统的对接还没完成,而且文件系统的下载功能对接还有问题。迭代完成情况 85%;
未完成情况
1. 数据库重构导致服务端重构
2. Matrix 整个架构变动,文件系统和评测系统独立,再加上授权按服务器,导致 submission 接口进度很慢。
下次迭代计划
1. 完成 submission 接口,并且跟文件服务和评测系统继承测试
2. 实现新的接口 library
3. 实现定时评测功能