Files
qhmes/.trae/skills/jeecg-onlchart/docs/skill-usage-guide.md

7.8 KiB
Raw Blame History

JeecgBoot Online 图表 AI 自动生成 — Skills 使用指南

通过 Claude Code 以自然语言描述图表需求AI 自动生成 SQL、推导 X/Y 轴字段、配置图表类型,并调用 API 在 JeecgBoot 系统中创建/编辑 Online 图表。 无需手动写 SQL 或逐一配置字段AI 从需求描述到可预览图表一步到位。

与传统方式的区别

  • 无需手写 SQL描述业务需求AI 自动推导 SQL 语句和字段配置
  • 智能推导 X/Y 轴AI 根据 SQL 字段语义自动识别维度字段X 轴和度量字段Y 轴)
  • 自动选择图表类型:根据数据特征推荐最适合的图表类型(柱状图、折线图、饼图等)
  • 字段中文名翻译:自动将 SQL 字段名翻译为中文显示名称
  • 字典自动匹配:识别常见字段(如 sex、status并关联系统字典

前置准备

使用前需准备两样东西:

信息 获取方式 示例
后端地址 运维/开发提供 https://boot3.jeecg.com/jeecgboot
X-Access-Token 浏览器 F12 → Network → 任意请求 Headers eyJhbGciOiJIUzI1NiJ9...

触发方式

在 Claude Code 对话中,用自然语言描述你要创建的图表,包含以下任意关键词即可自动触发:

创建图表 / 生成图表 / 新建图表 / 做一个图表 / online图表 / 数据图表
柱状图 / 折线图 / 饼图 / 统计图 / 可视化 / chart / graph

实战案例:用户性别统计图表

以下是一个完整的图表创建过程,展示了 skill 的实际使用方式。

第一步:描述需求

用户输入:

创建一个柱状图,统计系统用户的男女比例

AI 交互过程:

  1. AI 询问后端地址和 Token
  2. 用户提供凭据后AI 自动推导 SQL 和字段配置,展示摘要:
## Online 图表配置摘要

- 图表编码tj_user_sex
- 图表名称:统计男女比例
- 图表类型bar柱状图
- X 轴字段sex性别
- Y 轴字段cout人数
- 数据源:默认
- 目标环境https://boot3.jeecg.com/jeecgboot

### SQL 语句
select count(*) cout, sex from sys_user group by sex

### 字段配置

| 序号 | 字段名 | 显示名称 | 类型 | 显示 | 查询 | 字典 | 合计 |
|------|--------|---------|------|------|------|------|------|
| 0 | cout | 人数 | String | Y | N | - | Y |
| 1 | sex | 性别 | String | Y | N | sex | N |

确认以上配置?(y/n)
  1. 用户确认 yAI 自动调用 API 创建图表
  2. 返回结果:
## Online 图表创建成功

- 图表编码tj_user_sex
- 图表名称:统计男女比例
- 图表类型bar柱状图

### 后续操作
1. 打开 JeecgBoot 后台 → Online图表
2. 找到该图表,点击「功能测试」预览效果

第二步:修改图表类型

用户输入:

把刚才的图表改成折线+柱状组合图

AI 交互过程:

  1. AI 基于已有图表信息,展示修改摘要(标注变更项):
### 变更内容
- 图表类型bar → line,bar组合图表
- 新增标记isCombination = combination
  1. 用户确认后AI 调用 edit API 更新图表

示例用法

1. 一句话描述(最简方式)

做一个柱状图,统计各部门的人数

AI 会自动推导 SQLselect count(*) cnt, depart_name from sys_depart group by depart_name

2. 指定图表类型

用饼图展示系统用户的性别分布

AI 识别 "饼图" → graphType: "pie"

3. 指定 SQL

创建图表SQLselect DATE_FORMAT(create_time,'%Y-%m') month, count(*) cnt from sys_user group by month
用折线图展示

4. 组合图表

做一个月度销售分析,同时显示折线图和柱状图

AI 自动设置 graphType: "line,bar" + isCombination: "combination"

5. 带查询参数的图表

创建一个柱状图统计各部门人数,支持按状态筛选

AI 生成带 Velocity 参数的 SQL

select count(*) cnt, dept from sys_user
where 1=1
${#if($status != '')} AND status = '$status' ${#end}
group by dept

6. 指定数据源

用 second_db 数据源做一个销售统计图表

AI 设置 dbSource: "second_db"


支持的图表类型

图表类型 graphType 值 适用场景
柱状图 bar 分类对比(如男女人数、部门对比)
折线图 line 趋势变化(如月度销售、访问量趋势)
饼图 pie 占比分布(如部门比例、状态分布)
组合图表 line,bar 趋势+对比(同时展示折线和柱状)

AI 会根据数据特征自动推荐最合适的图表类型:

  • 分类对比场景 → 柱状图
  • 时间趋势场景 → 折线图
  • 占比分布场景 → 饼图
  • 多维分析场景 → 组合图表

智能字段推导

AI 根据 SQL 字段语义自动推导配置:

X/Y 轴推导

字段特征 推导为
分类/维度字段sex、dept、month、category X 轴
度量/聚合字段count、sum、avg 的结果) Y 轴

字段中文名翻译

字段名 自动翻译
count / cout / cnt 数量/人数
sum / total / amount 合计/总额
avg / average 平均值
sex 性别
dept / department 部门
month / year / date 月份/年份/日期

字典自动关联

字段名 关联字典
sex sex(性别)
status valid_status(有效状态)
priority priority(优先级)

修改已有图表

如果要修改已创建的图表:

修改图表 tj_user_sex把图表类型改成饼图
给图表 tj_user_sex 的 Y 轴加上标签文字"人数(单位:人)"

需要提供图表 ID 或编码。AI 会先查询现有配置,再进行修改。


高级功能

Y 轴标签

创建图表并设置 Y 轴标签为"销售额(万元)"

扩展 JS

通过自定义 JS 扩展图表行为,适合高级用户:

创建图表,加一段扩展 JSoption.tooltip = {trigger: 'axis'};

动态数据源

查询非默认数据源的数据:

用 report_db 数据源创建统计图表

与其他 Skill 的区别

Skill 产出物 适用场景
jeecg-onlchart Online 图表配置SQL 驱动,数据可视化) 柱状图、折线图、饼图等数据可视化
jeecg-onlreport Online 报表配置SQL 驱动,数据列表) 数据查询报表、统计列表
jeecg-onlform Online 表单配置元数据驱动CRUD 数据录入管理表单
jeecg-codegen Java + Vue3 代码 + SQL 需要自定义业务逻辑的模块
jeecg-desform 设计器表单 JSON 数据采集、审批表单
jeecg-bpmn Flowable BPMN 2.0 XML 审批流程、工作流

选择建议:

  • 需要数据可视化(图表) → jeecg-onlchart
  • 需要数据查询列表 → jeecg-onlreport
  • 需要简单 CRUD 表单 → jeecg-onlform
  • 需要自定义业务逻辑 → jeecg-codegen
  • 需要数据采集/审批表单 → jeecg-desform
  • 需要审批流程 → jeecg-bpmn

注意事项

  1. Token 有效期JWT Token 有过期时间,过期后需重新从浏览器获取
  2. 图表编码唯一:同一系统中 code 不能重复,如已存在需改名或使用编辑功能
  3. SQL 安全:不要在 SQL 中使用 DROP/DELETE/UPDATE 等危险语句
  4. 同一会话内可连续修改AI 会记住当前图表的 ID 和编码,无需重复提供
  5. 创建后可在后台微调AI 创建的图表可以在 Online 图表编辑页面中继续调整
  6. 菜单配置可选:创建成功后 AI 会提供菜单 SQL可选择执行或手动添加