知识社区
一、业务介绍

知识社区主要是收录了各个体系的知识文档和视频文件,每个公司员工都可以进入查看学习,但是有的文档是有阅读权限的,如果想要获取浏览权限,需要联系对应的管理员去开通权限。查看文档管理信息:知识社区-文档管理库:

二、工程代码
git 工程地址
如果 gitlab 上面没有这个工程的,请发起 svn、git 权限管理单 申请读写权限。
目前,问题出现的集中点在 PC 端的 文档中心 这一块儿,对应到工程中的代码是 apps-doc/src/main/webapp/apps_res/doc/ 目录下的 js 文件以及 apps-doc/src/main/webapp/WEB-INF/jsp/appa/doc/ 目录下的 jsp 文件。

三、常见 bug 分析
知识社区-文档中心:操作按钮区的某些按钮不可用或者不显示;
产生原因有两种:
1. 后台权限控制有误,把本该可用的按钮置为不可用了;
docIndex.js 里面有一个 checkBarAcl 方法,会通过后台传回的一些变量值来控制可用状态,如下图所示,put 方法的第二个参数为 true 时是可用状态:

2. 前端渲染遗漏,如果后台传回来的数据显示目标按钮是可用的,那么就是前端在初始化按钮的时候出了问题,请检查 docIndex.js 中的 initToolBar 方法,注意按钮对象的 className 值,全局查找一下,查看有没有被其他同名类名的样式所影响

知识社区-文档中心:批量下载文档,下载的文件数与实际选择的文件数不一致,且在IE浏览器中出现卡死现象;
产生原因:文档的下载逻辑是:一个文档对应一个下载请求,浏览器存在的一种机制,同源并发不会超过9个,超过的话浏览器会主动过滤超出内容,但是 IE 浏览器没有做这种限制,卡死是因为请求过于频繁。
像这类问题,按照当前的逻辑是不能解决的,只能走支持单,彻底改变 批量下载 的下载模式。支持单逻辑:前端将所选的文档id一起给后端,后端生成压缩包,采用压缩包下载。
知识社区-文档中心:文档列表的表格排序不生效;
产生原因:后台传回的数据格式不正确,多了一层 dataSource,导致再次发送请求的时候,没有拿到正确的排序数据。
解决办法:表格的排序有两种方式,一种是后台实现排序,也就是发请求实现;第二种是前台实现排序。当前这个问题就是调用后台接口来实现排序的,所以,最简单的解决方式就是修改排序方式,屏蔽掉后台排序。具体操作:在初始化表格组件时,把组件参数 onCurrentPageSort 置为 flse。

注:前台排序的弊端就是只能对当前页的数据进行排序。
组件相关文档:http://open.seeyon.com/seeyonui/V4.0/index.html#/grid