8月1日阶段小结
一、后端
-
已完成
- 通过一个小任务了解前后端分离的概念:第一个小目标:读取数据库内容,并在页面渲染
- 搭建SpringBoot项目工程基本代码,理清模块间的依赖关系,并使用github仓库托管
- 确定流程逻辑,设计并完善4张存储论文信息的表,同时开通阿里云MySQL方便测试
- 接口:
- addOnePaper(MultipartFile file):添加论文接口,上传一份论文docx,先调用原型机的docx2xml和adjustXml,得到 adjust.xml 进行解析,以一个个标签为对象存入数据库,每个对象将记录标签属性、文本信息及标签间的父子层级关系信息(未全部完成,在Java调用原型机部分卡住),解析完成后返回一个论文id
- getOnePaper(String paperId):获取论文信息接口,根据论文id从数据库获取信息,封装为一个树状结构的JASON字符串并返回
-
待完成
- 与论文相关的接口
- addOnePaper:待完善
- 设计一个存储log信息的表,在解析论文的同时也要解析其log文件,并存入数据库
- 继续解决Java调用原型机的问题
- getOnePaper:待完善,把已修改内容及建议信息进行封装,发送给前端
- updatePaperSection(String sectionId):修改论文某个小节或标题接口(即修改一个section)
- deletePaperSection(String sectionId):删除小节
- insertPaperSection(SectionVo):新增小节
- generatePaperDocx(String paperId):从数据库中获取一篇论文所有的段落信息,按层级结构封装成final.xml,调用xml2doc生成论文,供用户下载(也要封装一个log.xml,调用xml2doc生成修改意见文件,供用户下载)
- 其他
- 登录与退出需要整合SpringSecurity,外加设计5张表:用户表、角色表、权限表、用户-角色表、角色-权限表
- 第三方登录功能(使用QQ)
二、前端
-
已完成
- 在一个旧项目的基础上,测试了解析论文,实现了按照段落展示论文内容
- 美化了展示效果,用不同颜色标出不同的标签类型
-
待完成
- 搭建前端环境,使用github仓库托管
- 拆分已有的展示论文代码,组件化;美化展示方式
- 实现修改论文的某个小节内容、文字属性功能
- 实现上传下载功能
- 完善登录、注册及第三方登录功能,这里需要结合后端完成(包括路由权限问题,需要结合后端)
三、原型机部分
-
已完成
-
待完成
-
修复BUG
- 解决运行多个模块时,对已存在的xml文件增量写入时,出现多余空行的问题
四、运维
-
已完成
- 学习了解使用虚拟机,熟悉常用Linux命令
- 尝试使用Jenkins自动部署Java后端代码
-
待完成
- 了解Docker及相关脚本的编写
- 使用Jenkins部署和运行原型机、前端的代码
五、里程碑
预计如下
- 8月15日
- 完成后端与论文相关的所有接口,前端实现上传+修改+下载论文的流程
- 实现用户登录注册功能
- 原型机继续解决TODO问题
- 在云服务器上部署前后端+原型机的代码
- 8月31日
- 完成预期的大部分功能
- 整合SpringSecurity
- 原型机尽量解决全部TODO问题
- 使用Jenkins实现自动化构建、部署过程
- 9月30日
- 10月31日 完成原型机验证,上线第一个正式内部版本:
- 解决所有的技术难点、完成基本功能、实现基础测试
- 该阶段完成技术的储备、技术验证,基本的构想都能够实现,功能上都能满足。性能、扩展、易用性、可维护相关的考虑后面再逐步完善。
六、其他
仓库地址
后端 前端 原型机
git commit规范(全部使用英文)
feat:新功能(feature)
fix:修补bug
docs:文档(documentation)
style: 格式(不影响代码运行的变动)
refactor:重构(即不是新增功能,也不是修改bug的代码变动)
test:增加测试
chore:构建过程或辅助工具的变动