You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
2.2 KiB
96 lines
2.2 KiB
// vue/src/api/style.js
|
|
import request from '@/utils/request';
|
|
|
|
/**
|
|
* 保存图谱样式配置
|
|
* @param {Object} data { canvas_name, current_label, styles, group_name }
|
|
* 说明:group_name 为字符串,后端会自动判断是使用已有组还是新建组
|
|
*/
|
|
export function saveGraphStyle(data) {
|
|
return request({
|
|
url: '/api/graph/style/save',
|
|
method: 'post',
|
|
data: data,
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
}
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 获取【分组嵌套】格式的样式配置列表 (核心新增)
|
|
* 用于右侧折叠面板渲染:Group -> Configs
|
|
*/
|
|
export function getGroupedGraphStyleList() {
|
|
return request({
|
|
url: '/api/graph/style/list/grouped',
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 获取所有已存在的方案组名称列表
|
|
* 用于保存配置弹窗中的下拉选择框
|
|
*/
|
|
export function getGraphStyleGroups() {
|
|
return request({
|
|
url: '/api/graph/style/groups',
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 获取所有图谱样式配置列表
|
|
* 保留此接口用于兼容旧版逻辑或后台管理
|
|
*/
|
|
export function getGraphStyleList() {
|
|
return request({
|
|
url: '/api/graph/style/list',
|
|
method: 'get'
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 删除整个方案组及其下属所有配置
|
|
* @param {Number} group_id 分组ID
|
|
*/
|
|
export function deleteGraphStyleGroup(group_id) {
|
|
return request({
|
|
url: '/api/graph/style/group/delete',
|
|
method: 'post',
|
|
data: { group_id },
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
}
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 删除指定的单个画布样式配置
|
|
* @param {Number} id 配置ID
|
|
*/
|
|
export function deleteGraphStyle(id) {
|
|
return request({
|
|
url: '/api/graph/style/delete',
|
|
method: 'post',
|
|
data: { id },
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
}
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 批量删除多个画布样式配置
|
|
* @param {Object} payload { ids: [1, 2, 3] }
|
|
*/
|
|
export function batchDeleteGraphStyle(payload) {
|
|
return request({
|
|
url: '/api/graph/style/batch_delete',
|
|
method: 'post',
|
|
data: payload,
|
|
headers: {
|
|
'Content-Type': 'application/json'
|
|
}
|
|
});
|
|
}
|