发表于: 2018-01-03 21:57:58

1 554


一.今天完成的主要事情

完成了之前计划的事情,然后又对新分配的任务进行拆分,并且完成了计划中的一些

保存模拟考试结果的接口如下,而获取最好成绩只需要前端调用获取考试结果接口即可,然后由app端自行判断

/**
* 保存模拟考试结果
* @param
* @return
* @throws ServiceException
* @throws ServiceDaoException
*/
@RequestMapping(value = "/a/u/mocks", method = RequestMethod.POST)
public String recordMockExamResult(HttpServletRequest request, HttpServletResponse response,
ModelMap model, Long studentId, Long time, Integer rights,
Integer wrong, Integer subjectType) throws Exception {

log.info("Interface POST /a/u/mocks, Method recordMockExamResult() parameters: studentId: " + studentId +
", time: " + time + ", rights: " + rights + ", wrong: " + wrong +", subjectType: " + subjectType);

int validateResult = ParamsUtil.checkParamsOfRecordMockExamResult(studentId, time, rights, wrong, subjectType);
if (validateResult != 0){
model.addAttribute("code", validateResult);
return "/common/failure";
}

try{
SubjectExam mockExam = new SubjectExam();
mockExam.setStudentId(studentId);
mockExam.setTime(time);
mockExam.setRight(rights);
mockExam.setWrong(wrong);
mockExam.setType(subjectType);
mockExam.setCreateBy(studentId);
mockExam.setUpdateBy(studentId);
Long mockExamId = subjectExamService.insert(mockExam);
log.info("insert mock exam result success, id is : " + mockExamId);

model.addAttribute("code", 0);
model.addAttribute("id", mockExamId);
return "/common/insert";
} catch (Throwable t){
log.error(t.getMessage());
log.error("Method recordMockExamResult() failed, parameters: studentId: " + studentId + ", time: "
               + time + ", rights: " + rights + ", wrong: " + wrong +", subjectType: " + subjectType);
model.addAttribute("code", -1);
return "/common/failure";
}
}


2.找出一些之前设计上或实现上的漏洞

一是subject_correction表中的内容

之前设计表的时候这里用的type是整形的,

但是今天和pm确认需求后发现这里实现时要改成字符串存放前端传过来的id数组,所以这里要改成字符串类型,如图


二是当时由于自己的粗心大意导致的设计问题

后台的科目类型那里,乍一看科目二和科目三的音频播报是基本一样的,但是今天又重新检查一下才发现,科目二和科目三还是有一些区别的,区别在这里

这是科目二

这是科目三

这里科目三实际上还有个类型,之前都没有发现,所以在设计表的时候漏掉了这个部分,所以现在音频表中要新加一个字段,这样就需要重新改表以及接口中的内容

三是功能上发现种新的可能性,这个需要再和pm进行商量,pm暂时还没有回复我


二. 明天计划完成的事情

1.修改以上列出的问题

2.开始编写新的接口


三.遇到的问题

以上.但是都可以解决,而且也不会花费太多的时间


四.收获

以上.再次认识到了初期设计的重要性,一开始没有考虑周全,后期需要花费很多的时间精力去修改,非常麻烦


五,项目进度情况

暂无延期风险,争取6号之前完成自己所属的模块


返回列表 返回列表
评论

    分享到