tansci/.claude/skills/magic-script/references/api-integration.md
xuewuerduo f468d532b1 feat: 初始化tansci资产管理项目
包含以下模块:
- antdv-next-admin: Vue 3 + TypeScript + Ant Design Vue 管理后台
  - 设备/许可证/配件/耗材 CRUD 管理页面
  - 基础数据管理 (分类/位置/制造商/型号/供应商)
  - 业务管理 (故障报修/盘点/资产分配/资产申请/交易记录)
  - 下拉选项改造 (ID输入框 → 搜索下拉选择)
  - 资产状态字典化 (接入sys_dict系统)
  - 界面文案优化 (设备→资产, 在库/在用/维修中/已报废)
  - 修复 console 警告 (popupClassName, 重复组件注册)
- our-itam: Java Spring Boot + magic-api 后端服务
- fantastic-admin: 前端底层框架 (pnpm monorepo)
- ciyo-itasset: CIYO 资产模块
- magic-script-skill: Claude Code skill 定义
- .claude: 对话历史记录

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-05-17 21:41:22 +08:00

2.5 KiB
Raw Blame History

Java调用接口

调用接口

@Autowired
MagicAPIService service;
Map<String, Object> params = new HashMap<>();
// 注入变量信息
params.put("id", 123);
// 内部调用接口不包含code以及message信息同时也不走拦截器。
Object value = service.execute("GET", "/hello", params);
// 内部调用接口包含code以及message信息同时也不走拦截器。
// Object value = service.call("GET", "/hello", params);

调用函数

@Autowired
MagicAPIService service;

Map<String, Object> params = new HashMap<>();
// 注入变量信息
params.put("a", 1);
params.put("b", 1);
// 调用函数
Object value = service.invoke("/test/add", params);

保存资源

@Autowired
MagicResourceService service;
// 保存分组信息
service.saveGroup(group);
// 保存接口ApiInfo、函数FunctionInfo、数据源DataSourceInfo
service.saveFile(apiInfo);

删除资源

@Autowired
MagicResourceService service;
// 删除分组或文件
service.delete(id);

资源列表

@Autowired
MagicResourceService service;
// 获取分组下的所有文件
service.listFiles(groupId);
// 获取接口api、函数function、数据源datasource列表
service.files(type);
// 获取接口api、函数function、数据源datasource树结构
service.tree(type);
// 获取全部资源的树结构
service.tree();

其它API

除了以上列举的API以外 MagicAPIService还有:

/**
 * 上传
 */
boolean upload(InputStream inputStream, String mode) throws IOException;

/**
 * 下载
 */
void download(String groupId, List<SelectedResource> resources, OutputStream os) throws IOException;

/**
 * 推送
 */
JsonBean<?> push(String target, String secretKey, String mode, List<SelectedResource> resources);

/**
 * 处理刷新通知
 */
boolean processNotify(MagicNotify magicNotify);

MagicResourceService 还有以下方法:

/**
 * 刷新缓存
 */
void refresh();

/**
 * 移动
 * @param src     源ID
 * @param groupId 目标分组
 */
boolean move(String src, String groupId);

/**
 * 复制分组
 * @param src    源ID
 * @param target 目标分组
 */
String copyGroup(String src, String target);

/**
 * 获取文件详情
 */
<T extends MagicEntity> T file(String id);

/**
 * 获取分组详情
 */
Group getGroup(String id);

/**
 * 获取完整分组路径
 */
String getGroupPath(String groupId);

/**
 * 获取完整分组名称
 */
String getGroupName(String groupId);