待办模块
后端
- 1. todo memo的api
- 2. 读取某月有未完成todo日期
- 报错
根本内容可以看出,是因为我把jpa中delete的语句的返回值写为了Todo,所以提示返回的int无法转化成todo。这里是我自己不清楚jpa删除语句是否能返回原todo。
2. 根据1修改相应内容后又报错:
测试后是因为下面这部分中获取数目为null
查找资料后发现jpa查询数量应该按照下面这样写
Integer countByUserIdAndDateAndDone(String userId, String date, boolean ifDone);
前端
-
- addtodo对memo的处理
-
- deltodo后对memo的处理
-
- mark done todo后对memo的处理
-
- 获取dates并显示在日历上
-
- 修改loading时的占位文字
日记模块
前端
-
- 添加日记和读取日记的测试
-
- 当已经读取当日日记时,显示「返回聊天窗口」
-
- 修改/删除当日日记的测试
-
- 读取某年某月记录的测试
-
- 修正返回聊天窗口时聊天对话会被重复提交的问题
-
- 完成日记后button的禁用设置
-
- 修改日记时,内容为空时禁止提交,关闭也不会提示内容有变化。
后端
-
- 修改entity中造成错误的属性值
-
- 聊天记录备份到后端(用一个dialogs表)
-
- 获取某年某月有记录的日期 思路:本来打算跟todo一样创建一个memo表,后来改成直接从dialogs表中获取数据。把diaglog表中的ymd date字段拆分成3个,根据年和月去查找,然后把查找到的日期放入一个list中。
通知模块
前端
-
- 修改loading时的效果显示
用户模块
前端
后端
- 1.修正拦截器问题
问题:前端传递刚生成的token时,后端校验却不通过。 原因:自己用的verify方法如果参数前有Bearer前缀,是无法通过校验的
解决:后端从header拿到token后,用substring(7)把前面的Bearer前缀先去掉。
- 2.设定校验时将token解密后的id与路径中的用户id进行比对,不匹配则无法通过拦截器。 拦截的思路很简单,数据中如果没有在有效期内、且内容和用户id都匹配的数据。则校验不通过。
Token tokenDb = repository.findByUserIdAndContent(userId, token);
if(tokenDb == null || tokenDb .getHasLogout()){
result = false;
}
问题是如何从路径中获取用户id:
参考这篇文章解决了问题,在拦截器preHandle方法中可以直接获取pathVariable.
Map pathVariables = (Map) request.getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE);
String userId = (String)pathVariables.get("userId");
-[ ] 3.测试token 有效期问题
时间统计模块
前端
-
- 修改没有数据库信息时,默认分类的显示问题;
-
- 去掉默认分类的编辑按钮;
-
- 改成不允许提交未选择分类的时间条目