CertAgent 证照中台
返回官网
产品能力 功能全景 界面预览 文档中心 返回官网
02 · 开发对接

接口文档

覆盖认证、客户、人员、证照、借调、项目配证、政务网、费用、Agent 开放接口等全部业务路由,统一响应结构、鉴权、权限、分页与错误码约定。

v2.99.x 后端开发 · 集成方 · Agent 接入方 约 75 分钟 29 章
开始阅读

一、通用约定

1.1 基础地址

环境 Base URL
生产示例 https://cert.example.com
本地开发 http://127.0.0.1:8000
  • 管理端接口前缀:/api/admin/
  • 登录/公开接口前缀:/api/
  • Agent 开放接口前缀:/api/agent/
  • 客户只读端前缀:/api/client/

完整示例:GET https://cert.example.com/api/admin/certificate?page=1&limit=15

1.2 请求格式

场景 格式
GET 查询 Query String
POST 新增/编辑 application/json 或 application/x-www-form-urlencoded
文件上传 multipart/form-data
批量操作 JSON,数组字段如 ids: [1,2,3]

后端同时兼容 JSON 与表单。批量接口的数组参数通常写作 ids[] 或 ids,以实际页面请求为准。

1.3 响应结构

普通响应

{
  "code": 0,
  "msg": "ok",
  "data": {}
}

分页响应

{
  "code": 0,
  "msg": "ok",
  "data": {
    "list": [],
    "total": 0
  }
}

错误响应

{
  "code": 400,
  "msg": "必填项缺失:cert_no",
  "data": {}
}

判断规则:code === 0 为成功,其他均为失败。不要只判断 HTTP 200,业务错误通常也返回 HTTP 200。

1.4 鉴权

系统支持两种携带方式,任选其一:

方式 A:HttpOnly Cookie(浏览器默认)

登录成功后服务端下发 HttpOnly Cookie,浏览器自动携带。前端请求需设置:

withCredentials: true

方式 B:Bearer Token(脚本/服务端调用)

登录接口返回 data.token,后续请求携带:

Authorization: Bearer <token>

Token 默认有效期 3 小时(可在「系统管理 → 系统信息设置」调整),保存在 Redis。退出登录、改密、被管理员下线后立即失效。 code=401 表示未登录或登录已过期,需要重新登录。

1.5 权限

层级 说明
登录态 未登录返回 401
菜单权限 无菜单权限的页面路由不可访问
功能权限 无按钮权限的写接口返回 403
数据范围 全部 / 本部门及下属 / 本部门 / 本人;客户账号按关联企业隔离
客户角色 company 角色只能读本企业数据,写接口一律 403

超级管理员 admin 不受菜单、功能权限和数据范围限制。

1.6 分页

参数 默认 范围 说明
page 1 ≥ 1 页码
limit 15 1–500 每页条数,超过 500 按 500 处理

示例:

GET /api/admin/certificate?page=2&limit=50

1.7 时间与金额

类型 格式 示例
日期 YYYY-MM-DD 2026-11-10
日期时间 YYYY-MM-DD HH:mm:ss 2026-11-10 09:30:00
金额 数字,单位元,最多两位小数 1200.00
布尔 0 / 1 1

日期字段留空请传 null 或不传,不要传空字符串 "",否则可能触发数据库严格模式错误。

1.8 错误码

code HTTP 含义 处理建议
0 200 成功 —
400 200 参数错误 / 业务校验失败 按 msg 修正参数
401 200 未登录 / 登录过期 重新登录
403 200 无权限 / 数据范围外 联系管理员分配权限
404 200 资源不存在 检查 ID
409 200 冲突(重复、证书占用等) 按 data 提示确认后强制保存
422 200 文件/附件校验失败 检查类型、大小
500 200/500 系统错误 查看服务端日志
503 503 Redis 不可用 按提示检查 Redis

1.9 文件上传

POST /api/admin/upload
Content-Type: multipart/form-data
字段 说明
file 文件本体

返回示例:

{
  "code": 0,
  "msg": "ok",
  "data": {
    "path": "uploads/2026/11/xxxx.pdf",
    "name": "证书扫描件.pdf",
    "size": 123456
  }
}

上传有扩展名白名单、真实 MIME 校验、随机文件名和大小限制。生产环境上限由 upload_max_filesize、post_max_size、Nginx client_max_body_size 共同决定。

1.10 下载

类型 方式
模板下载 GET .../template,返回 Excel 流
数据导出 GET .../export,返回 Excel 流
附件下载 GET /api/attach/download?...,返回文件流

导出文件名使用 RFC 5987 编码,中文名在浏览器中正常显示。


二、认证与个人中心

2.1 接口列表

方法 路径 说明
GET /api/captcha 获取登录图形验证码
POST /api/login 账号密码登录
POST /api/logout 退出登录
GET /api/profile/info 当前用户信息、菜单、权限
POST /api/profile/change-password 修改密码
GET /api/profile/devices 我的登录设备
POST /api/profile/devices/revoke 下线指定设备
POST /api/profile/devices/revoke-all 下线其他全部设备
GET /api/totp/challenge 查询二次验证会话
POST /api/totp/verify 提交二次验证码
GET /api/system-info 公开的品牌与系统信息

2.2 获取验证码

GET /api/captcha

返回:

{
  "code": 0,
  "msg": "ok",
  "data": {
    "key": "captcha_xxx",
    "img": "data:image/png;base64,..."
  }
}

验证码默认 4 位,5 分钟有效。登录时把 key 作为 captchaKey,用户输入作为 captchaCode。

2.3 登录

POST /api/login
Content-Type: application/json
参数 类型 必填 说明
username string 是 账号
password string 是 密码
captchaKey string 是 验证码 key
captchaCode string 是 验证码
device_token string 否 受信任设备令牌
device_id string 否 设备标识

成功返回:

{
  "code": 0,
  "msg": "登录成功",
  "data": {
    "token": "xxxxx",
    "expires_in": 10800,
    "user": {
      "id": 1,
      "username": "admin",
      "real_name": "系统管理员",
      "role_code": "admin"
    }
  }
}

需要二次验证时,返回 need_totp 与 challenge(不返回 token):

{
  "code": 0,
  "msg": "ok",
  "data": {
    "need_totp": true,
    "challenge": "totp_xxx",
    "totp_bound": false,
    "force": true
  }
}

连续输错密码 5 次会锁定 15 分钟(可在 backend/config/security.php 调整)。

2.4 二次验证

查询会话

GET /api/totp/challenge?challenge=totp_xxx&device_token=xxx&device_id=xxx

提交验证码

POST /api/totp/verify
参数 类型 必填 说明
challenge string 是 登录返回的会话
code string 是 6 位动态码
trust_device int 否 1 = 信任本设备 3 天
device_id string 否 设备标识

支持腾讯身份验证器、Google Authenticator 等标准 TOTP(SHA1 / 6 位 / 30 秒)。

2.5 当前用户信息

GET /api/profile/info

返回用户、角色、菜单树、功能权限码、数据范围、可管企业等。前端据此渲染侧边栏和按钮。

2.6 修改密码

POST /api/profile/change-password
参数 说明
old_password 原密码
new_password 新密码,8–32 位,含字母和数字

修改成功后当前登录态失效,需要重新登录。

2.7 登录设备

方法 路径 参数 说明
GET /api/profile/devices — 当前账号的在线设备与信任设备
POST /api/profile/devices/revoke type=session/trust,id 下线/移除一个设备
POST /api/profile/devices/revoke-all type=all 下线其他全部

三、工作台、报表与查询

方法 路径 说明
GET /api/admin/dashboard/stat 首页总览:待办风险、资源调度、业务底数、近期到期、近期提醒
GET /api/admin/report/summary 统计报表汇总 KPI
GET /api/admin/report/overview 统计报表明细与图表数据
GET /api/admin/search 一键查询中心列表
GET /api/admin/search/detail 查询结果详情(人员/企业/证书聚合)

3.1 工作台

GET /api/admin/dashboard/stat

常用参数:

参数 说明
company_id 按企业过滤
days 近期到期窗口,默认 30

返回通常包含:

  • todo:8 类待办与风险数量;
  • resource:证书利用率、闲置、借调中;
  • base:企业数、人员数、证书数、合同数;
  • expiring:近期到期证书列表;
  • alerts:未读提醒列表。

3.2 统计报表

GET /api/admin/report/summary?period=6&company_id=0
GET /api/admin/report/overview?period=6&company_id=0
参数 说明
period 统计周期:3 / 6 / 12 / 24 个月
company_id 0 或空表示全部企业

返回覆盖:到期趋势、证书状态结构、费用收支、结算进度、企业排行、借调分布、证书类型分布、企业明细。

3.3 一键查询中心

GET /api/admin/search?keyword=张三&scope=all&page=1&limit=15
参数 说明
keyword 关键字
scope all / certificate / company
match like 模糊 / exact 精确
filters 多条件筛选(字段、操作符、值)
logic and / or

详情:

GET /api/admin/search/detail?type=staff&id=1

type 支持 staff / company / certificate。


四、客户企业

4.1 接口列表

方法 路径 说明
GET /api/admin/company 企业列表
GET /api/admin/company/detail 企业详情(含资质、借调、合同、跟进、附件)
GET /api/admin/company/options 企业下拉选项
POST /api/admin/company/save 新增/编辑企业
POST /api/admin/company/status 启用/停用
POST /api/admin/company/delete 删除(进回收站)
POST /api/admin/company/batch-delete 批量删除
POST /api/admin/company/attach-save 保存企业附件
GET /api/admin/company/template 下载导入模板
GET /api/admin/company/export 导出企业
POST /api/admin/company/complete-basic 从河南平台补全企业基本信息
GET /api/admin/company/qualifications 企业资质/安许台账
POST /api/admin/company/fetch-qualification 采集资质(含验证码流程)
POST /api/admin/company/qualification-captcha 获取资质验证码图片
POST /api/admin/company/qualification-captcha-refresh 换一张验证码
POST /api/admin/company/fetch-qualification-detail 提交人工识别的验证码并读取明细
POST /api/admin/company/collect-xkgs 采集承装修试许可证
POST /api/admin/company/import-qualification 导入资质台账
POST /api/admin/company/delete-qualification 删除资质

4.2 列表参数

GET /api/admin/company?page=1&limit=15&company_name=建筑&status=1&owner_user_id=0&mine=0
参数 说明
company_name 企业名称模糊查询
status 1 启用 / 0 停用
owner_user_id 负责人筛选
mine 1 = 只看我负责的
industry 行业
region 注册属地

4.3 保存企业

POST /api/admin/company/save
字段 类型 必填 说明
id int 否 有值为编辑
company_name string 是 企业全称
short_name string 否 简称
credit_code string 否 统一社会信用代码
legal_person string 否 法定代表人
region_path string 否 注册属地,如 河南省/郑州市
registered_capital string 否 注册资本
contact string 否 联系人
contact_phone string 否 联系电话
address string 否 地址
industry string 否 所属行业
company_scale string 否 企业规模
remark string 否 备注
status int 否 1 启用 / 0 停用

新增时负责人自动为当前用户;变更负责人请调用 CRM 移交接口,不要直接改。

4.4 平台补全

POST /api/admin/company/complete-basic
参数 说明
ids 企业 ID 数组
overwrite 1 = 冲突时覆盖,0 = 只补空字段

平台单次请求有最小间隔与 10 分钟缓存,批量时逐家返回结果。

4.5 资质采集流程

  1. POST /api/admin/company/fetch-qualification:返回是否需要验证码;
  2. 如需要,POST /api/admin/company/qualification-captcha 获取图片;
  3. 人工识别后,POST /api/admin/company/fetch-qualification-detail 提交验证码;
  4. 识别错误可 POST /api/admin/company/qualification-captcha-refresh 换图;
  5. 确认后 POST /api/admin/company/import-qualification 入库。

系统不内置 OCR、不绕过平台校验,验证码由业务人员人工识别。


五、企业证书(资质 / 安许)

方法 路径 说明
GET /api/admin/company-cert 列表
GET /api/admin/company-cert/detail 详情
GET /api/admin/company-cert/stat 统计卡片
POST /api/admin/company-cert/save 新增/编辑
POST /api/admin/company-cert/delete 删除
POST /api/admin/company-cert/attach-save 保存附件
GET /api/admin/company-cert/template 导入模板
GET /api/admin/company-cert/export 导出
POST /api/admin/company-cert/import 导入
POST /api/admin/company-cert/collect 从河南平台采集安许/公开信息
POST /api/admin/company-cert/collect-captcha 获取验证码
POST /api/admin/company-cert/collect-captcha-refresh 换验证码
POST /api/admin/company-cert/collect-detail 提交验证码读取资质明细
POST /api/admin/company-cert/collect-xkgs 采集承装修试许可证

5.1 列表参数

参数 说明
company_id 企业 ID
cert_type safety 安许 / qualification 资质
keyword 名称或编号
expire_status 30 30 天内到期 / expired 已过期 / normal 正常 / long 长期

5.2 保存

字段 必填 说明
company_id 是 所属企业
cert_type 是 safety / qualification
cert_name 是 证书名称
cert_no 否 证书编号(与名称至少填一项)
level 否 等级
scope 否 许可范围 / 资质范围
issue_org 否 发证机关
issue_date 否 发证日期
expire_date 否 有效期至,留空表示长期
remark 否 备注
attachments 否 附件数组

六、人员档案

6.1 接口列表

方法 路径 说明
GET /api/admin/staff 人员列表
GET /api/admin/staff/detail 人员详情
GET /api/admin/staff/read 只读详情(轻量)
GET /api/admin/staff/options 人员下拉选项
GET /api/admin/staff/profile 人员全景档案(聚合证书、借调、合同、费用、冲突)
GET /api/admin/staff/utilization 证件利用率
GET /api/admin/staff/idle-alert 长期闲置预警
POST /api/admin/staff/save 新增/编辑
POST /api/admin/staff/delete 删除
POST /api/admin/staff/batch-delete 批量删除
POST /api/admin/staff/attach-save 保存附件
POST /api/admin/staff/rel-save 保存人员-企业关联
POST /api/admin/staff/rel-delete 删除人员-企业关联
GET /api/admin/staff/duplicates 重复人员检测
POST /api/admin/staff/merge 合并重复人员
POST /api/admin/staff/ocr-idcard 身份证 OCR
POST /api/admin/staff/ocr-diploma 毕业证 OCR
GET /api/admin/staff/template 导入模板
GET /api/admin/staff/export 导出

6.2 列表参数

参数 说明
keyword 姓名 / 电话 / 身份证
status 1 在职 / 0 离职
social_status 0 未知 / 1 在缴 / 2 停缴 / 3 未缴纳
secondment_status 1 借调中 / 0 未借调
owner_user_id 负责人
mine 1 = 只看我负责的
company_id 关联企业

6.3 保存人员

字段 必填 说明
id 否 有值为编辑
staff_name 是 姓名
id_card 是 身份证号
phone 否 电话
gender 否 性别
nation 否 民族
birth_date 否 出生日期
address 否 身份证住址
email 否 邮箱
education 否 学历
education_type 否 全日制 / 非全日制
graduate_school 否 毕业学校
graduate_cert_no 否 毕业证编号
graduate_date 否 毕业日期
social_status 否 社保状态
social_company 否 社保单位
social_start_month 否 社保起缴月份
status 否 1 在职 / 0 离职
remark 否 备注
custom 否 自定义字段对象

OCR 接口接收图片文件或图片地址,返回识别出的姓名、身份证号、住址、毕业学校、毕业证编号、毕业日期等,供表单回填。

6.4 全景档案

GET /api/admin/staff/profile?id=1

返回:

  • 基本信息、证件利用率;
  • certificates:名下证书与占用状态;
  • social:社保信息;
  • projects:借调记录;
  • follows:本人 + 名下证书的跟进;
  • fees:合同与费用;
  • conflicts:合规与冲突;
  • attachments:附件。

七、证照台账

7.1 接口列表

方法 路径 说明
GET /api/admin/certificate 证书列表
GET /api/admin/certificate/detail 证书详情
GET /api/admin/certificate/read 只读详情
POST /api/admin/certificate/save 新增/编辑
POST /api/admin/certificate/status 变更证书状态
POST /api/admin/certificate/delete 删除
POST /api/admin/certificate/batch-delete 批量删除
POST /api/admin/certificate/attach-save 保存扫描件
POST /api/admin/certificate/attach-rename 附件改名
POST /api/admin/certificate/person-collect 一键采集人员证书
POST /api/admin/certificate/person-collect-captcha-refresh 换采集验证码
GET /api/admin/certificate/template 导入模板
GET /api/admin/certificate/export 导出

7.2 列表参数

参数 说明
keyword 证书专业 / 类别
quick_kw 企业名 / 姓名 / 身份证 / 手机号 / 证书编号
company_id 当前借调企业
staff_id 持证人员
staff_name 持证人员姓名
cert_name 证书专业
cert_type 证书类型
category 类别(兼容旧筛选)
status 0 已过期 / 1 正常 / 2 挂失 / 3 注销
social_status 社保状态
only_free 1 = 只看未借调
expire_soon N 天内到期
urgent 1 = 只看紧急
owner_user_id / mine 负责人筛选
sort_by expire_date / cert_status / cert_fee
sort_order asc / desc

7.3 保存证书

POST /api/admin/certificate/save
字段 必填 说明
id 否 有值为编辑
staff_id 是 持证人员
cert_name 是 证书专业
cert_no 新增必填 证书编号
cert_type 否 证书类型(一级)
category 否 类别,后端会与 cert_type 同步
issue_date 否 发证日期
expire_date 否 到期日期(与 long_term 二选一)
long_term 否 1 = 长期有效,expire_date 置空
issue_org 否 发证机关
register_start_date 否 注册起始
register_end_date 否 注册截止
cert_status 否 证书状态
social_status 否 社保状态
social_company 否 社保单位
social_start_month 否 社保起缴月份
priority 否 优先级
enable_alert 否 是否开启提醒
alert_rules 否 提醒节点数组
custom_alert_days 否 自定义提前天数
cert_fee / fee_remark 否 证书费用与备注
attachments 否 扫描件数组
custom 否 自定义字段
force 否 1 = 重复时强制保存

重复校验

新增时按「同人员 + 同证书编号」和「同人员 + 同证书专业」查重。命中返回 409:

{
  "code": 409,
  "msg": "证书编号与该人员名下已有证书重复,请确认是否强制保存",
  "data": {
    "duplicate_cert": {
      "id": 12,
      "cert_name": "建筑工程",
      "cert_no": "豫********1234",
      "expire_date": "2027-06-30",
      "fields": ["cert_no"]
    }
  }
}

前端展示确认框,用户确认后带 force=1 重新提交。

7.4 变更状态

POST /api/admin/certificate/status
参数 说明
id 证书 ID
cert_status 0 已过期 / 1 正常 / 2 挂失 / 3 注销
remark 变更原因(建议填写)

会写入状态变更日志与操作日志。

7.5 一键采集

POST /api/admin/certificate/person-collect
参数 说明
staff_id 人员 ID
id_card 身份证号(可按身份证查)
captcha 平台验证码(如需要)

采集受平台频控,失败会返回可读原因;验证码由人工识别。


八、证书延续与状态日志

方法 路径 说明
GET /api/admin/cert-renewal 延续记录列表
POST /api/admin/cert-renewal/save 新增延续(续期 / 换证)
GET /api/admin/cert-status-log 状态变更日志

8.1 新增延续

字段 必填 说明
cert_id 是 证书
old_expire_date 否 原到期日(可由后端带出)
new_expire_date 是 新到期日
handle_date 否 办理日期
handler 否 办理人
remark 否 备注

保存后会回写证书的新到期日;如果原状态为「已过期」,会恢复为「正常」,并写状态变更日志。

8.2 状态变更日志

GET /api/admin/cert-status-log?biz_type=certificate&page=1&limit=15
参数 说明
biz_type certificate 证书 / secondment 借调
cert_id 证书 ID
secondment_id 借调 ID
start_date / end_date 时间范围

九、证书借调

9.1 接口列表

方法 路径 说明
GET /api/admin/secondment 借调列表
GET /api/admin/secondment/detail 借调详情
GET /api/admin/secondment/stat 统计卡片
GET /api/admin/secondment/free-certs 可借调的空闲证书
POST /api/admin/secondment/save 新增/编辑
POST /api/admin/secondment/return 归还
POST /api/admin/secondment/renew 续借
POST /api/admin/secondment/delete 删除
POST /api/admin/secondment/batch-delete 批量删除

9.2 列表参数

参数 说明
company_id 借调企业
status 1 借调中 / 0 已归还 / 2 已到期
direction 1 借出 / 2 借入
keyword 证书 / 人员 / 备注
expire_soon N 天内到期
no_end 1 = 无期限

9.3 保存借调

字段 必填 说明
id 否 有值为编辑
cert_id 是 借调证书
company_id 是 对方企业
direction 否 1 借出(本公司→客户)/ 2 借入(人才→本公司)
start_date 否 借调开始
end_date 否 借调到期
long_term 否 1 = 长期,end_date 置空
fee_amount 否 借调费用
fee_period 否 计费周期
fee_status 否 0 未结算 / 1 已结算
status 否 1 借调中 / 0 已归还 / 2 已到期
remark 否 备注
with_contract 否 1 = 同时生成服务合同
custom 否 自定义字段

冲突返回

保存前会做冲突检测。默认「证书占用」为阻断级,返回:

{
  "code": 409,
  "msg": "检测到阻断级冲突:证书已被占用",
  "data": {
    "conflicts": [
      {
        "type": "occupy",
        "level": 2,
        "title": "证书已被占用",
        "detail": "该证书已被 XX 建筑有限公司占用,区间 2026-01-01 ~ 2026-12-31"
      }
    ]
  }
}

用户确认后带 force=1 可强制保存。

9.4 归还

POST /api/admin/secondment/return
参数 说明
id 借调 ID
return_date 归还日期
remark 备注

9.5 续借

POST /api/admin/secondment/renew
参数 说明
id 借调 ID
end_date 新到期日
sync_contract 1 = 同时更新关联合同期限
remark 备注

续借会把状态恢复为「借调中」,写状态变更日志,并触发「借调续借」场景推送。


十、项目配证

方法 路径 说明
GET /api/admin/project 项目列表
GET /api/admin/project/detail 项目详情(需求 / 任务 / 选用记录)
GET /api/admin/project/stat 统计
GET /api/admin/project/options 项目下拉
POST /api/admin/project/save 新增/编辑
POST /api/admin/project/batch-status 批量改状态
POST /api/admin/project/batch-delete 批量删除
POST /api/admin/project/delete 删除
GET /api/admin/project/template 导入模板
GET /api/admin/project/export 导出

10.1 列表参数

参数 说明
keyword 项目名称 / 编号
status 0 筹备中 / 1 进行中 / 2 已结束 / 3 已暂停
client_id 客户企业
region 项目属地

10.2 保存项目

字段 必填 说明
id 否 有值为编辑
project_name 是 项目名称
project_no 否 项目编号
client_id 是 客户企业
region_name 否 项目属地
region_code 否 属地编码,用于政策精确匹配
start_date 否 开始日期
end_date 否 结束日期
status 否 0 筹备中 / 1 进行中 / 2 已结束 / 3 已暂停
remark 否 备注
reqs 否 证件需求数组
custom 否 自定义字段

reqs 每项:

字段 说明
cert_type 证书类型
cert_name 证书专业
need_count 需要人数
social_require 0 不要求 / 1 必须 / 2 优先
min_expire_days 有效期下限(天)
remark 备注

十一、配证任务

方法 路径 说明
GET /api/admin/cert-task 任务列表
GET /api/admin/cert-task/detail 任务详情与进度
POST /api/admin/cert-task/save 新增/编辑
POST /api/admin/cert-task/publish 发布任务
POST /api/admin/cert-task/update-item 更新配证进度
POST /api/admin/cert-task/add-log 添加任务动态
POST /api/admin/cert-task/delete 删除
POST /api/admin/cert-task/batch-delete 批量删除

11.1 列表参数

参数 说明
keyword 任务标题
status 0 草稿 / 1 进行中 / 2 已完成 / 3 已关闭
company_id 需求企业
project_id 关联项目

11.2 保存任务

字段 必填 说明
id 否 有值为编辑
title 是 任务标题
company_id 是 需求企业
project_id 否 关联项目
deadline 否 截止日期
visible_scope 否 all 全员 / dept 指定部门 / user 指定人员 / self 仅发布人
visible_dept_ids 否 可见部门 ID 数组
visible_user_ids 否 可见人员 ID 数组
remark 否 任务说明
items 否 配证明细数组(证书类型/专业、需要数量、备注)

11.3 更新进度

POST /api/admin/cert-task/update-item
参数 说明
task_id 任务 ID
item_id 明细 ID
done_count 已配数量
remark 进度说明

十二、智能匹配

方法 路径 说明
GET /api/admin/match 匹配工作台/需求清单
GET /api/admin/match/recommend 推荐候选人员
GET /api/admin/match/why 某候选的得分明细
POST /api/admin/match/select 选用并登记借调
POST /api/admin/match/give-up 放弃候选
POST /api/admin/match/to-manual 转人工处理
POST /api/admin/match/record 保存匹配记录

12.1 推荐

GET /api/admin/match/recommend?project_id=1&req_id=3&limit=20
参数 说明
project_id 项目 ID
req_id 证件需求 ID
include_blocked 1 = 显示被阻断的候选
limit 返回数量

返回每人的总分与五维得分:

维度 满分
证书匹配 40
社保匹配 25
有效期 15
无冲突 15
政策 5

12.2 选用

POST /api/admin/match/select
参数 说明
project_id 项目 ID
req_id 需求 ID
staff_id 人员 ID
cert_id 证书 ID
company_id 借出企业
start_date 借调开始
end_date 借调到期
fee_amount 借调费用
fee_period 计费周期
fee_status 0 未结算 / 1 已结算
with_contract 1 = 同时生成服务合同
remark 备注

选用成功会自动生成借调记录并留痕。存在阻断冲突时返回 409,确认后可强制提交。


十三、冲突中心

方法 路径 说明
GET /api/admin/conflict 冲突列表
GET /api/admin/conflict/list 冲突明细
GET /api/admin/conflict/scan 立即全量体检
GET /api/admin/conflict/scan-result 最近一次体检结果
GET /api/admin/conflict/check-cert 单证书冲突检查
GET /api/admin/conflict/check-staff 单人员冲突检查
GET /api/admin/conflict/rules 冲突规则
POST /api/admin/conflict/rules-save 保存规则

13.1 冲突类型

type 说明
occupy 证书占用冲突
person 人员时间冲突
exclusive 证书互斥冲突(如一级/二级建造师)
policy 政策合规冲突

13.2 规则级别

level 含义
0 提示
1 警告
2 阻断
{
  "occupy":     { "enabled": 1, "level": 2 },
  "person":     { "enabled": 1, "level": 1 },
  "exclusive":  { "enabled": 1, "level": 1 },
  "policy":     { "enabled": 1, "level": 1 }
}

十四、属地政策

方法 路径 说明
GET /api/admin/policy-rule 规则列表
GET /api/admin/policy-rule/meta 规则类型与参数元数据
GET /api/admin/policy-rule/evaluate 规则试算
POST /api/admin/policy-rule/save 新增/编辑
POST /api/admin/policy-rule/batch-status 批量启用/停用
POST /api/admin/policy-rule/batch-delete 批量删除
POST /api/admin/policy-rule/delete 删除
GET /api/admin/policy-rule/template 导入模板
GET /api/admin/policy-rule/export 导出

14.1 规则类型

rule_type 说明 参数
social_match 社保匹配 require_social=1
expiry_limit 有效期下限 min_expire_days=90
cert_limit 证书类型限制 allow=专业1,专业2

14.2 保存规则

字段 说明
region_name 适用属地,留空表示全国通用
region_code 属地编码,选填
rule_type 规则类型
rule_expr 参数串,如 require_social=1;min_expire_days=90
severity 0 提示 / 1 警告 / 2 阻断
status 1 启用 / 0 停用
remark 说明

14.3 试算

GET /api/admin/policy-rule/evaluate?cert_id=1&project_id=2

返回命中的规则、违规级别与说明。


十五、政务网进度

方法 路径 说明
GET /api/admin/gov-progress 申报列表
GET /api/admin/gov-progress/meta 业务类型、企业、人员等下拉数据
GET /api/admin/gov-progress/detail 详情(含环节、密码掩码)
POST /api/admin/gov-progress/save 新增/编辑
POST /api/admin/gov-progress/sync 同步单条
POST /api/admin/gov-progress/sync-all 批量同步未办结
POST /api/admin/gov-progress/archive 归档/取消归档
POST /api/admin/gov-progress/repair 修复历史环节
POST /api/admin/gov-progress/delete 删除
POST /api/admin/gov-progress/batch-delete 批量删除
GET /api/admin/gov-progress/runs 执行记录
GET /api/admin/gov-progress/template 导入模板
GET /api/admin/gov-progress/export 导出

15.1 列表参数

参数 说明
keyword 申报号 / 事项 / 企业 / 人员
business_type 初始注册 / 转注 / 变更 / 延期 / 重新注册 / 注销 / 其他
archived 0 未归档 / 1 已归档
status unfinished 办理中 / finished 已办结 / closed 已办结或已归档
promise overdue 已逾期 / 7 7 天内 / today 今天
sync_status 0 未同步 / 1 成功 / 2 失败

15.2 保存申报

字段 必填 说明
id 否 有值为编辑
project_no 是 申报号
password 是(新增) 申报密码,AES-256-GCM 加密存储
business_type 否 业务类型字典值
company_id 否 关联企业
staff_id 否 关联人员
cert_type 否 证书类型
cert_name 否 证书专业
remark 否 备注
status 否 1 启用 / 0 停用

编辑时 password 留空表示不修改。

15.3 同步

POST /api/admin/gov-progress/sync
参数 说明
id 申报 ID

批量:

POST /api/admin/gov-progress/sync-all

同步后会:

  • 解析平台 FLOWXML 环节,完整落库;
  • 检测到「签发」环节完成即标记办结并自动归档;
  • 状态字段变化时触发 gov_progress 场景推送;
  • 写入执行记录。

15.4 归档

POST /api/admin/gov-progress/archive
参数 说明
id 或 ids 单条或批量
archived 1 归档 / 0 取消归档

15.5 查看密码

详情接口默认返回掩码。查看明文需要 gov:reveal 权限,调用:

GET /api/admin/gov-progress/detail?id=1&reveal=1

查看明文会写入操作日志,请按最小权限分配。


十六、账号密码库

方法 路径 说明
GET /api/admin/credential-vault 列表
GET /api/admin/credential-vault/meta 平台、企业、人员下拉
GET /api/admin/credential-vault/detail 详情(密码掩码)
GET /api/admin/credential-vault/reveal 查看明文密码
POST /api/admin/credential-vault/save 新增/编辑
POST /api/admin/credential-vault/quick-platform 快捷新增平台
POST /api/admin/credential-vault/import 导入
GET /api/admin/credential-vault/template 导入模板
GET /api/admin/credential-vault/export 导出
POST /api/admin/credential-vault/delete 删除
POST /api/admin/credential-vault/batch-delete 批量删除

16.1 列表参数

参数 说明
keyword 企业 / 人员 / 平台 / 网址 / 登录账号 / 备注
platform 平台名称
account_type company 企业 / staff 个人
company_id 关联企业
staff_id 关联人员

16.2 保存

字段 必填 说明
id 否 有值为编辑
platform 是 平台名称
platform_url 否 平台网址
account_type 否 company / staff
company_id 否 关联企业
staff_id 否 关联人员
account_name 是 登录账号
password 新增必填 登录密码
remark 否 用途、密保提示等
status 否 1 启用 / 0 停用

16.3 查看密码

GET /api/admin/credential-vault/reveal?id=1

密码使用 AES-256-GCM 加密存储,列表与导出均不返回明文。查看动作会写操作日志。


十七、考试报名

17.1 证书类目

方法 路径 说明
GET /api/admin/exam-cert/categories 分类列表
POST /api/admin/exam-cert/category-save 新增/编辑分类
POST /api/admin/exam-cert/category-delete 删除分类
GET /api/admin/exam-cert/types 证书类型列表
GET /api/admin/exam-cert/type-options 类型下拉
POST /api/admin/exam-cert/type-save 新增/编辑类型
POST /api/admin/exam-cert/type-delete 删除类型

17.2 业务配置

方法 路径 说明
GET /api/admin/exam-config/configs 业务组合(证书 × 动作)
GET /api/admin/exam-config/config-detail 组合详情
POST /api/admin/exam-config/config-save 新增/编辑组合
POST /api/admin/exam-config/config-delete 删除组合
POST /api/admin/exam-config/config-open 开放/关闭办理
POST /api/admin/exam-config/trial 规则试算
GET /api/admin/exam-config/actions 业务动作列表
POST /api/admin/exam-config/action-save 新增/编辑动作
POST /api/admin/exam-config/action-delete 删除动作

默认业务动作:

编码 名称 大类
initial 初次报名 报名
continue 继续教育 继续教育
review 复审延期 复审
change 变更补证 变更补证

默认状态流:待提交 → 待审核 → 已审核 → 已报名 → 已排考 → 已完成。

17.3 批次与考点

方法 路径 说明
GET /api/admin/exam-batch 批次列表
GET /api/admin/exam-batch/detail 批次详情
GET /api/admin/exam-batch/options 批次下拉
POST /api/admin/exam-batch/save 新增/编辑批次
POST /api/admin/exam-batch/delete 删除批次
POST /api/admin/exam-batch/current 设为当前批次
GET /api/admin/exam-batch/rooms 考点列表
GET /api/admin/exam-batch/room-options 考点下拉
POST /api/admin/exam-batch/room-save 新增/编辑考点
POST /api/admin/exam-batch/room-delete 删除考点

17.4 报名工单

方法 路径 说明
GET /api/admin/exam-signup 工单列表
GET /api/admin/exam-signup/meta 表单元数据
GET /api/admin/exam-signup/detail 工单详情
POST /api/admin/exam-signup/save 新建/编辑/暂存草稿
POST /api/admin/exam-signup/submit 提交报名
POST /api/admin/exam-signup/advance 推进/退回状态
POST /api/admin/exam-signup/audit 审核通过/驳回
POST /api/admin/exam-signup/material-save 保存材料
POST /api/admin/exam-signup/material-delete 删除材料
POST /api/admin/exam-signup/ocr-idcard 身份证 OCR
POST /api/admin/exam-signup/ocr-diploma 毕业证 OCR
GET /api/admin/exam-signup/customers 考生列表
POST /api/admin/exam-signup/customer-save 新建/编辑考生
GET /api/admin/exam-signup/reminders 报名提醒
POST /api/admin/exam-signup/delete 删除工单

列表参数:

参数 说明
keyword 单号 / 姓名 / 身份证 / 手机
config_id 业务组合
batch_id 批次
stage 状态节点
is_draft 1 草稿 / 0 正式单

工单保存关键字段:

字段 说明
config_id 业务组合
batch_id 报名批次
customer_id 考生
cert_type_id / action_id 证书类型 / 动作(可由组合带出)
company_name / region 报名单位 / 所属地市
force 1 = 不符合条件仍办理(留痕)
allow_duplicate 1 = 允许重复报名
draft 1 = 暂存草稿(不校验)
materials 材料数组
remark 备注

提交时会做报名条件校验(年龄、学历、工作年限、证书有效期等),不符合会返回 400 与具体原因。


十八、学历报名

18.1 报名工单

方法 路径 说明
GET /api/admin/edu-signup 工单列表
GET /api/admin/edu-signup/meta 表单元数据
GET /api/admin/edu-signup/detail 工单详情
POST /api/admin/edu-signup/save 新建/编辑(含学费联动、毕业归档)
POST /api/admin/edu-signup/advance 推进流程 / 退回上一步
POST /api/admin/edu-signup/unarchive 反归档
POST /api/admin/edu-signup/attach-save 保存附件
POST /api/admin/edu-signup/attach-rename 附件改名
POST /api/admin/edu-signup/attach-delete 删除附件
POST /api/admin/edu-signup/delete 删除工单
GET /api/admin/edu-signup/staff-options 人员档案下拉
POST /api/admin/edu-signup/staff-save 快捷新建人员

列表参数:

参数 说明
keyword 单号 / 姓名 / 身份证 / 电话 / 专业
signup_type dianzhong 电中 / chengkao 成考
edu_level 学历类型
roll_status enrolled 在籍 / graduated 已毕业
agency_id 报名机构
archived 0 在办 / 1 已归档

工单保存关键字段:

字段 说明
signup_type 报名类型
edu_level / edu_nature / edu_system 学历类型 / 性质 / 学制
staff_id 关联人员档案
student_name / id_card / phone 姓名 / 身份证 / 电话
signup_date / enroll_date / expect_graduate_time 报名 / 入学 / 预计毕业
agency_id 报名机构
total_fee / paid_fee / agent_fee 总学费 / 已收 / 代收
roll_status 学籍状态
graduate_time 毕业时间(保存即自动归档)
remark 备注

默认流程:

  • 电中(中专):待报名 → 已报名 → 已入籍 → 已毕业
  • 成考:待报名 → 已报名 → 待考试 → 待录取 → 已录取

18.2 报名机构

方法 路径 说明
GET /api/admin/edu-agency 机构列表
GET /api/admin/edu-agency/options 机构下拉
GET /api/admin/edu-agency/detail 机构详情
POST /api/admin/edu-agency/save 新增/编辑
POST /api/admin/edu-agency/delete 删除

18.3 流程配置

方法 路径 说明
GET /api/admin/edu-config/flows 各报名类型流程
GET /api/admin/edu-config/flow-detail 流程详情
POST /api/admin/edu-config/flow-save 保存流程
POST /api/admin/edu-config/flow-reset 恢复默认流程

十九、费用、收款账户、合同

19.1 费用台账

方法 路径 说明
GET /api/admin/fee 列表
GET /api/admin/fee/meta 表单下拉数据
GET /api/admin/fee/stat 统计
GET /api/admin/fee/summary 汇总
GET /api/admin/fee/receivable-payable 应收应付
GET /api/admin/fee/by-source 按来源汇总
POST /api/admin/fee/save 新增/编辑
POST /api/admin/fee/settle 结算
POST /api/admin/fee/delete 删除
POST /api/admin/fee/batch-delete 批量删除
GET /api/admin/fee/export 导出明细

列表参数:

参数 说明
company_id 客户企业
staff_id 持证人员
direction receivable 应收 / payable 应付
fee_type income 收入 / expense 支出
settle_status 0 未结算 / 1 已结算
source_type 来源类型
keyword 费用项目 / 备注
start_date / end_date 发生日期范围

保存字段:

字段 必填 说明
subject_type 是 company / staff
company_id / staff_id 二选一 归属对象
payer_name 否 付款方
source_type / source_id 否 关联来源(借调 / 合同 / 项目 / 报名等)
fee_name 是 费用项目
fee_type 是 income / expense
amount 是 金额
occur_date 否 发生日期
plan_date 否 计划收付日期
settle_status 否 0 未结算 / 1 已结算
settle_amount 否 已收/付金额(部分结算)
settle_date 否 结算日期
pay_account_id 否 收款账户
pay_method / invoice_no / handler 否 支付方式 / 发票号 / 经办人
remark 否 备注

结算:

POST /api/admin/fee/settle
参数 说明
id 费用 ID
amount 本次结算金额
settle_date 结算日期
pay_account_id 收款账户
cancel 1 = 取消结算

结算金额累计后:未结清 > 0 为「部分结算」,未结清 = 0 为「已结算」。

19.2 收款账户

方法 路径 说明
GET /api/admin/pay-account 列表
GET /api/admin/pay-account/options 下拉
POST /api/admin/pay-account/save 新增/编辑
POST /api/admin/pay-account/set-default 设为默认
POST /api/admin/pay-account/delete 删除
POST /api/admin/pay-account/batch-delete 批量删除

字段:account_name、account_type、bank_name、bank_branch、account_no、init_balance、currency、contact、contact_phone、is_default、sort、status、remark。

当前余额 = 初始余额 + 已收 − 已付。被费用引用的账户不允许删除。

19.3 服务合同

方法 路径 说明
GET /api/admin/contract 列表
GET /api/admin/contract/detail 详情(含关联借调、费用)
POST /api/admin/contract/save 新增/编辑
POST /api/admin/contract/delete 删除
POST /api/admin/contract/batch-delete 批量删除

字段:company_id、contract_no、contract_name、contract_type、party_a、party_b、sign_date、start_date、end_date、amount、status、secondment_id、remark、attachments。


二十、CRM 跟进

方法 路径 说明
GET /api/admin/crm/users 可移交的账号列表
POST /api/admin/crm/transfer 移交负责人
GET /api/admin/crm/follows 某条记录的跟进列表
POST /api/admin/crm/follow 新增跟进
POST /api/admin/crm/follow-delete 删除跟进
GET /api/admin/crm/ledger 跟进台账

20.1 移交

POST /api/admin/crm/transfer
参数 说明
module company / certificate / staff
ids 记录 ID 数组
target_user_id 目标负责人
remark 移交备注

移交会写移交历史与操作日志;负责人不接受直接编辑。

20.2 新增跟进

POST /api/admin/crm/follow
参数 说明
module company / certificate / staff
record_id 业务记录 ID
follow_type 电话 / 微信 / 上门拜访 / 邮件 / 短信 / 会议 / 其他
content 跟进内容
next_follow_date 下次跟进日期

20.3 跟进台账

GET /api/admin/crm/ledger?page=1&limit=15
参数 说明
module company / certificate / staff
follow_user_id 跟进人
keyword 跟进内容
start_date / end_date 跟进时间范围
next_start / next_end 下次跟进日期范围
overdue 1 = 只看超期未跟进
subject_type person / company

二十一、提醒与推送

21.1 提醒中心

方法 路径 说明
GET /api/admin/alert 提醒列表
GET /api/admin/alert/unread-count 未读数
POST /api/admin/alert/read 标记单条已读
POST /api/admin/alert/read-all 全部已读
POST /api/admin/alert/resend 补发提醒

列表参数:

参数 说明
company_id 企业
is_read 0 未读 / 1 已读
alert_type cert_expire 证书到期 / secondment 借调 / company_cert 企业证书
keyword 人员 / 证书
start_date / end_date 时间范围

补发:

POST /api/admin/alert/resend
参数 说明
id 或 ids 单条或批量

21.2 推送渠道

方法 路径 说明
GET /api/admin/push-channel 列表
POST /api/admin/push-channel/save 新增/编辑
POST /api/admin/push-channel/test 测试推送
POST /api/admin/push-channel/delete 删除

渠道类型:

类型 关键配置
sms 网关地址、短信签名、模板编号
email SMTP 服务器、端口、发件账号、密码、加密方式
wecom_bot Webhook 地址
wecom_app CorpID、AgentID、Secret
mp 公众号 AppID、AppSecret、模板消息 ID

测试推送参数:id(渠道 ID)、target(接收目标)、content(消息内容,留空用示例)。

21.3 消息模板

方法 路径 说明
GET /api/admin/msg-template 列表
POST /api/admin/msg-template/save 新增/编辑
POST /api/admin/msg-template/delete 删除

字段:scene(场景)、template_type(渠道)、template_name、content、status。

场景包括:证书到期、借调临期、借调到期、借调续借、政务网进度等。

21.4 企业接收人

方法 路径 说明
GET /api/admin/receiver 列表
POST /api/admin/receiver/save 新增/编辑
POST /api/admin/receiver/delete 删除
POST /api/admin/receiver/batch-delete 批量删除

字段:company_id(0 = 全局)、receiver_name、mobile、email、wecom_userid、receiver_type、status。

21.5 推送日志

方法 路径 说明
GET /api/admin/push-log 日志列表
POST /api/admin/push-log/clear 清空日志

参数:company_id、status(0 待发送 / 1 成功 / 2 失败)、source(正式/测试)、cert_id、channel、keyword、日期范围。

21.6 推送体检与手动检测

方法 路径 说明
GET /api/admin/push/diagnose 推送体检:渠道、接收人、规则、阻断原因
POST /api/admin/push/run-check 立即执行到期检测
POST /api/admin/push/run-check
参数 说明
catch_up 1 = 补发漏跑节点
dry_run 1 = 只体检不写库

21.7 提醒规则

方法 路径 说明
GET /api/admin/alert-config/list 企业规则列表
GET /api/admin/alert-config 取某企业规则
POST /api/admin/alert-config/save 保存规则
POST /api/admin/alert-config/batch 批量套用

字段:company_id(0 = 全局)、alert_nodes(如 1year,6month,3month,2month,1month,15day,7day,3day,1day)、alert_ways(站内信/短信/邮件/企微等)、default_priority。


二十二、字典与自定义字段

22.1 字典

方法 路径 说明
GET /api/admin/dict-type 字典类型列表
POST /api/admin/dict-type/save 新增/编辑类型
POST /api/admin/dict-type/delete 删除类型
GET /api/admin/dict-data 字典项列表
GET /api/admin/dict-data/by-type 按类型取字典项
POST /api/admin/dict-data/save 新增/编辑字典项
POST /api/admin/dict-data/delete 删除字典项

保存类型字段:type_code、type_name、module、remark、status。 保存字典项字段:type_code、dict_value、dict_label、parent_value、sort、status、remark。

22.2 证书类型与专业

方法 路径 说明
GET /api/admin/cert-dict/cascade 类型 → 专业级联数据
GET /api/admin/cert-dict/majors 某类型下的专业
POST /api/admin/cert-dict/quick-create 快捷新增类型/专业

专业若已登记字典,必须归属所选类型;类型为空且专业归属唯一时自动补全。

22.3 自定义字段

方法 路径 说明
GET /api/admin/custom-field 字段列表
GET /api/admin/custom-field/meta 模块与字段类型元数据
GET /api/admin/custom-field/by-module 某模块的启用字段
POST /api/admin/custom-field/save 新增/编辑
POST /api/admin/custom-field/status 启用/停用
POST /api/admin/custom-field/delete 删除

字段:module、field_key、field_label、field_type、options、default_value、is_required、sort、status、remark。

支持模块:人员、企业、证书、合同、借调、项目、配证任务等。


二十三、组织、账号、角色、菜单

23.1 部门

方法 路径 说明
GET /api/admin/org-dept 部门树
POST /api/admin/org-dept/save 新增/编辑
POST /api/admin/org-dept/delete 删除
GET /api/admin/org/selector 组织选择器(部门 + 人员)

23.2 账号

方法 路径 说明
GET /api/admin/user 账号列表
GET /api/admin/user/depts 部门下拉
GET /api/admin/user/companies 可管企业
POST /api/admin/user/save 新增/编辑
POST /api/admin/user/delete 删除
POST /api/admin/user/unbind-wecom 解绑企微
POST /api/admin/user/totp-force 开启/关闭强制二次验证
POST /api/admin/user/totp-tip 保存绑定提示语
POST /api/admin/user/totp-unbind 解绑验证器

保存字段:id、username、password、real_name、dept_ids、role_id、data_scope(all/dept_tree/dept/self)、company_ids、phone、email、status。

23.3 角色

方法 路径 说明
GET /api/admin/role 角色列表
GET /api/admin/role/permissions 权限矩阵元数据
POST /api/admin/role/save 新增/编辑
POST /api/admin/role/reset 恢复默认授权
POST /api/admin/role/delete 删除

字段:role_name、role_code、menu_ids、perms、remark、status。

23.4 菜单

方法 路径 说明
GET /api/admin/menu 菜单树
GET /api/admin/menu/list 扁平列表
GET /api/admin/menu/diagnose 菜单诊断
POST /api/admin/menu/save 新增/编辑
POST /api/admin/menu/delete 删除
POST /api/admin/menu/reset-catalog 重置为标准菜单架构

23.5 企微通讯录与审批

方法 路径 说明
POST /api/admin/wecom-contact/sync 同步通讯录
GET /api/admin/wecom-contact/users 成员列表
GET /api/admin/wecom-contact/departments 部门结构
POST /api/admin/wecom-contact/update 编辑成员
POST /api/admin/wecom-contact/delete 删除成员
POST /api/admin/wecom-contact/bind-account 绑定系统账号
POST /api/admin/wecom-contact/create-account 创建系统账号
GET /api/admin/approval 审批列表
GET /api/admin/approval/meta 审批元数据
GET /api/admin/approval/detail 审批详情
POST /api/admin/approval/save 发起审批
POST /api/admin/approval/approve 通过
POST /api/admin/approval/reject 驳回
POST /api/admin/approval/cancel 撤销
POST /api/admin/approval/sync 同步审批状态

二十四、系统配置、日志、回收站

24.1 系统信息

方法 路径 说明
GET /api/admin/system-config 读取系统配置(敏感项掩码)
POST /api/admin/system-config/save 保存配置
POST /api/admin/system-config/webdav-test WebDAV 测试连接
POST /api/admin/system-config/ocr-test OCR 配置测试
POST /api/admin/system-config/relay-test 证书查询中继测试
POST /api/admin/system/cache-clear 清除缓存
GET /api/admin/wecom-config 企微登录配置
POST /api/admin/wecom-config/save 保存企微配置
POST /api/admin/wecom-config/test 测试企微连接

24.2 日志

方法 路径 说明
GET /api/admin/operation-log 操作日志
POST /api/admin/operation-log/clear 清空操作日志
GET /api/admin/login-log 登录日志
POST /api/admin/login-log/clear 清空登录日志(仅超级管理员)
GET /api/admin/login-device 全站登录设备
GET /api/admin/login-device/users 设备用户列表
POST /api/admin/login-device/revoke 下线设备
POST /api/admin/login-device/revoke-all 下线用户全部会话

24.3 回收站

方法 路径 说明
GET /api/admin/recycle-bin 回收站列表
POST /api/admin/recycle-bin/restore 按原 ID 恢复
POST /api/admin/recycle-bin/purge 彻底删除
POST /api/admin/recycle-bin/clear 清空回收站

参数:id 或 ids、module。

24.4 在线升级

方法 路径 说明
GET /api/admin/upgrade/info 当前版本、环境能力、备份列表
GET /api/admin/upgrade/progress 升级进度
POST /api/admin/upgrade/check 检查新版本
POST /api/admin/upgrade/backup 立即备份
POST /api/admin/upgrade/download 下载升级包
POST /api/admin/upgrade/upload 上传升级包
POST /api/admin/upgrade/apply 执行升级
POST /api/admin/upgrade/restore 恢复备份
POST /api/admin/upgrade/delete-backup 删除备份

二十五、导入导出与附件

25.1 通用导入

方法 路径 说明
POST /api/admin/import/preview 上传并预览,返回逐行校验结果
POST /api/admin/import/commit 确认入库
POST /api/admin/import/fail-export 导出失败名单
POST /api/admin/import/recognize-export 导出识别记录(全量行)

预览参数:

参数 说明
type 模块类型,如 staff、company、certificate、project、policy
file Excel 文件,.xlsx / .xls,≤ 10MB
auto_create 1 = 企业/人员不存在时自动建档(支持的模块)

提交参数:

参数 说明
type 模块类型
rows 勾选要入库的行
token 预览会话标识

预览会校验必填、日期、身份证、手机号、邮箱、信用代码格式;失败行可下载失败名单。

25.2 各模块模板与导出

模块 模板 导出
客户企业 GET /api/admin/company/template GET /api/admin/company/export
人员档案 GET /api/admin/staff/template GET /api/admin/staff/export
证照台账 GET /api/admin/certificate/template GET /api/admin/certificate/export
企业证书 GET /api/admin/company-cert/template GET /api/admin/company-cert/export
项目 GET /api/admin/project/template GET /api/admin/project/export
属地政策 GET /api/admin/policy-rule/template GET /api/admin/policy-rule/export
费用 — GET /api/admin/fee/export
政务网进度 GET /api/admin/gov-progress/template GET /api/admin/gov-progress/export
账号密码库 GET /api/admin/credential-vault/template GET /api/admin/credential-vault/export

25.3 附件下载

GET /api/attach/download?path=uploads/2026/11/xxx.pdf

需要登录态;WebDAV 附件走带 HMAC 签名、1 小时有效的代理下载。


二十六、Agent 开放接口

26.1 认证

项 说明
密钥格式 cak_ + 48 位十六进制
传递方式 Authorization: Bearer <API_KEY> 或 X-API-Key: <API_KEY>
作用域 read / read,write
限流 120 次/分钟/密钥
数据范围 跟随绑定账号,脱敏规则一致
有效期 可选,到期后返回 403

密钥明文只在创建时显示一次,库内只存 SHA-256 哈希与前缀。

26.2 接口

方法 路径 作用域 说明
GET /api/agent/ping read 健康检查
GET /api/agent/capabilities read 能力清单
GET /api/agent/overview read 企业/人员/证书/合同/到期/未读提醒概览
GET /api/agent/certificates read 证书分页
GET /api/agent/certificates/detail read 证书详情
GET /api/agent/staff read 人员分页
GET /api/agent/staff/detail read 人员详情
GET /api/agent/companies read 企业分页
GET /api/agent/companies/detail read 企业详情
GET /api/agent/contracts read 合同分页
GET /api/agent/contracts/detail read 合同详情
GET /api/agent/expiring read N 天内到期证书
POST /api/agent/certificates/status write 更新证书状态
POST /api/agent/crm/follow write 追加跟进记录
POST /api/agent/mcp — MCP Streamable HTTP 端点
GET /api/agent/skill — 获取 SKILL.md
GET /api/agent/openapi — 获取 OpenAPI 描述

26.3 证书列表参数

参数 说明
page / limit 分页,默认 20,最大 100
keyword 证书名称 / 编号 / 专业 / 类型
staff_id 持证人
company_id 当前借调企业
cert_type 证书类型
cert_status 0 已过期 / 1 正常 / 2 挂失 / 3 注销
social_status 0 未知 / 1 在缴 / 2 停缴 / 3 未缴纳
expire_days N 天内到期
only_free 1 = 只看未借调

26.4 写接口参数

更新证书状态

参数 必填 说明
id 是 证书 ID
cert_status 是 0/1/2/3
remark 否 变更说明,≤ 200 字

追加跟进

参数 必填 说明
module 是 company / certificate / staff
record_id 是 业务记录 ID
follow_type 是 电话 / 微信 / 上门拜访 / 邮件 / 短信 / 会议 / 其他
content 是 跟进内容,≤ 2000 字
next_follow_date 否 下次跟进日期

26.5 MCP

POST /api/agent/mcp
Content-Type: application/json
Authorization: Bearer <API_KEY>

支持 MCP Streamable HTTP 协议,工具清单与 REST 能力一致。适合 Claude Desktop、Cherry Studio 等支持 MCP 的客户端。


二十七、企业微信回调

方法 路径 说明
GET /api/wecom/config 前端获取企微登录配置(公开)
GET /api/wecom/login 企微 OAuth 回调(跳转)
POST /api/wecom/login 企微登录(code 换登录态)
POST /api/wecom/bind 绑定企微
POST /api/wecom/unbind 解绑企微
GET /api/wecom/status 当前账号企微绑定状态
GET /api/wecom/aibot 智能机器人回调校验
POST /api/wecom/aibot 智能机器人消息回调
GET /api/agent 智能机器人回调校验(兼容路径)
POST /api/agent 智能机器人消息回调(兼容路径)

智能机器人支持在「Agent 接入 → 企业微信机器人」中生成 Token、查看回调 URL,并配置到企业微信后台。支持查询类指令与受控写入指令。


二十八、客户企业只读端

方法 路径 说明
GET /api/client/dashboard/stat 本企业工作台统计
GET /api/client/certificate 本企业相关证书
GET /api/client/alert 本企业提醒
GET /api/client/company 本企业信息

客户角色只能读本企业数据,写操作一律 403。数据范围由 user_company_rel 决定。


二十九、附录

29.1 证书状态

值 含义
0 已过期
1 正常
2 挂失
3 注销

29.2 社保状态

值 含义
0 未知
1 在缴
2 停缴
3 未缴纳

29.3 借调状态与方向

字段 值 含义
status 1 借调中
status 0 已归还
status 2 已到期
direction 1 借出
direction 2 借入

29.4 项目状态

值 含义
0 筹备中
1 进行中
2 已结束
3 已暂停

29.5 项目社保要求

值 含义
0 不要求
1 必须
2 优先

29.6 匹配状态

值 含义
0 待确认
1 已选用
2 已放弃

29.7 提醒节点

1year, 6month, 3month, 2month, 1month, 15day, 7day, 3day, 1day

支持自定义节点。

29.8 费用结算

场景 判定
未结算 settle_amount = 0 且 settle_status = 0
部分结算 0 < settle_amount < amount
已结算 settle_amount >= amount 或 settle_status = 1

29.9 数据范围

值 含义
all 全公司
dept_tree 本部门及下属
dept 本部门
self 仅本人创建

29.10 版本与兼容

  • 新增字段遵循向后兼容,旧客户端可忽略未知字段。
  • 枚举值以字典管理为准,界面优先显示字典标签,字典缺失时回退内置常量。
  • 接口路径如遇调整,会保留旧路径兼容或在下个版本说明中标注。