项目源码:https://github.com/OnesZhang/weaver-e10-oa-helper | 非官方项目,与泛微没有隶属、授权或支持关系
📌
该文章由丸子引导AI辅助制作生成,如有改进意见,欢迎评论区留言。
做这个插件的原因很简单:每天在开发、测试、预发布、生产之间来回切,最怕的不是不会用,而是在错的环境里点了对的按钮。
为什么做这个插件
日常在 E10 上做实施和运维,重复动作大概分两类:
- 环境判断:几个环境的域名不同、界面却一模一样,标签页一多,「现在这个是测试还是生产」就要重新确认一遍;
- 多层跳转:切界面语言要进个人设置,查人要开通讯录,看某个人改过什么要进人员详情再翻日志,看流程实例日志要进设计器点按钮,临时跑条 SQL 要开数据中心。
单次操作都不复杂,但每天重复几十次,成本就不在点击本身,而在每次都要先确认一遍上下文。于是我用业余时间写了 E10 Helper:把这些每天都会用到的动作收进浏览器工具栏的一个 popup 里,页面自己会「认识」当前环境,用户不需要再判断。
一句话:把「现在是什么环境、我该去哪点」从人脑里拿出来,放进一个离手最近的按钮里。
功能一览
扩展在命中已配置的 OA 地址时才会启用功能;未连接时 popup 只保留设置入口。
| 功能 | 入口 | 用途 |
|---|---|---|
| 环境边框 | popup 开关 | 给非生产环境叠加彩色边框和右上角环境标签,生产环境不显示 |
| Show Console | popup 菜单 | 给 OA 页面 URL 加上控制台参数,随时调出平台自带的控制台 |
| 系统语言 | popup 菜单 | 读取并切换当前账号的界面语言,含 Beta 语言 |
| 人员查询 | popup 菜单 | 按姓名、工号、邮箱、手机号、办公电话搜索通讯录,点击结果直达人员详情 |
| LDAP 人员查询 | popup 菜单 | 按 LDAP 过滤器查询目录条目并查看属性 |
| 人员信息记录 | 人员详情页 → popup | 拉取该人员的字段变更历史,按字段展示「旧值 → 新值」,可搜索 |
| 查看实例日志 | 动作流页面 → popup | 直接唤起平台原生的「实例日志」弹窗 |
| 重新执行动作流 | 动作流日志页 → popup | 按当前应用和日志,以执行模式重跑一次 |
| SQL 查询 | popup 菜单 | 通过数据中心直连数据源执行 SQL 并在 popup 里看结果 |
| 单点登录 | 人员详情页 → popup | 用配置的应用凭证换取登录 Token,在无痕窗口打开 SSO 链接 |
| 群组管理表格优化 | 自动生效 | 修正群组管理页表格列宽,以及群组名称多语言输入框过窄的问题 |
其中「SQL 查询」「单点登录」「重新执行动作流」「ESB 日志表格勾选」属于实验性功能,依赖具体环境配置,用之前建议先在测试环境验证。

命中已配置的 OA 地址时,popup 顶部显示「已连接」,功能菜单才会出现。
安装与配置
前置要求:Chrome 111+。
- 从 GitHub 克隆或下载仓库:https://github.com/OnesZhang/weaver-e10-oa-helper
- 打开
chrome://extensions,右上角开启「开发者模式」; - 点击「加载已解压的扩展程序」,选择含
manifest.json的仓库目录; - 点击工具栏上的扩展图标 → 右上角齿轮 → 在设置页添加你的 OA 地址。
设置页里可以按环境分别登记地址,并给每个环境单独配置 LDAP ID 和 SSO 应用凭证:

| 配置项 | 说明 |
|---|---|
| OA Base URL | 每个环境一条,决定环境识别、边框颜色和功能启用 |
| LDAP ID | 「LDAP 人员查询」使用 |
app_key / app_security | 「单点登录」使用,在 OA 的 OpenAPI / 集成中心创建应用后获取 |
SQL 连接 ID 不在设置页,而是在 popup 的「SQL 查询」面板里填写,全局保存、切换环境后记得确认。
开发、测试、预发布、生产各登记一条,之后不管在哪个标签页,popup 都会自动匹配当前环境;环境边框也会跟着生效,切错标签页能第一时间发现。
几个使用场景
场景一:多个环境同时开着,先看边框
配好环境后打开开关,开发、测试环境会显示橙色边框和「开发环境 / 测试环境」标签,预发布是紫色,生产不加边框;扩展图标右下角也会出现绿点,表示当前页面已连接。这样即使同时开着四个标签页,也不用去读地址栏。
场景二:控制台常开
打开「Show Console」后,OA 页面地址会自动带上控制台参数,SPA 路由跳转时也会保留;需要时刷新一次页面即可生效,之后随时调出平台自带控制台排查问题。
场景三:切界面语言不用再翻个人设置
popup 里点「系统语言」,会列出当前账号可切换的语言(Beta 语言带标记),选完页面自动刷新。验证多语言包、给不同语言的用户截图时很方便。
场景四:查一个人,再看他改过什么
在「人员查询」里输入姓名、工号、邮箱、手机号或办公电话,点结果直接打开人员详情页;在详情页再点「人员信息记录」,弹窗会把该人员的字段变更按字段聚合,展示「旧值 → 新值」和操作时间、操作人,支持按字段、值或操作人搜索。
场景五:看实例日志、重跑动作流
在动作流设计器或动作流执行日志页打开 popup,点「查看实例日志」,会直接唤起平台原生的实例日志弹窗——时间范围、操作者、状态、分页都可以照常用,不需要重新实现一套。在日志页还可以点「重新执行动作流」,按当前应用和日志重跑一次。
场景六:临时跑一条 SQL
点「SQL 查询」,填好数据源连接 ID 和语句(Ctrl / ⌘ + Enter 执行),结果会以表格展示,状态栏显示总行数和耗时,最多渲染 200 行,避免大结果集卡住 popup。
场景七:以某个人员的身份验证单点登录
在人员详情页打开 popup,点「单点登录」,扩展会用配置的 app_key / app_security 换取该人员的登录 Token,并在无痕窗口打开 SSO 链接。用无痕窗口是为了避开当前浏览器里已有的账号会话,干净地验证目标人员的登录效果。
需要在
chrome://extensions→ 本扩展详情里开启「允许在隐私模式下使用」,否则无痕窗口无法打开,popup 会给出提示。
场景八:解锁 ESB 日志表格的勾选
开启 Show Console 后,动作流日志页的表格勾选框会解除禁用,可以批量选择日志行,配合重跑动作流使用。
一点说明
- 扩展基于 Manifest V3,纯 JS/HTML/CSS,没有构建步骤,改完在
chrome://extensions点刷新即可; - 所有 OA 接口请求都在 OA 页面内以你当前登录的会话发出(携带 Cookie),不经过任何中转服务;
- 配置只保存在本机
chrome.storage.local,不上传、无统计、无第三方服务; - 权限只用于识别 OA 页面、更新角标、打开人员详情与无痕窗口,功能逻辑仅对已配置的 OA 地址生效。
注意事项
- 功能依赖 E10 的前端页面结构和部分内部接口,E10 版本升级后可能需要适配;
- 「查看实例日志」依赖页面按钮文案「执行实例 / 更换实例」,把界面切成英文后可能找不到入口;
- 「人员信息记录」一次最多拉取最近 100 条变更日志;
- 安装或更新扩展前已打开的页面需要刷新,否则依赖内容脚本的功能不生效;
- 本项目是个人开发的非官方工具,请仅在自己拥有或已获授权的环境中使用;截图中的地址与凭证均为示例,请配置你自己的环境。
这个插件没有宏大的目标,只是把每天重复的判断和点击,收进一个离手最近的按钮里。