import request from '@/utils/request' export const uiComponentApi = { // 获取UI组件列表 getUIComponentList(params) { return request.get('/admin/ui-components', { params }) }, // 获取UI组件详情 getUIComponentDetail(id) { return request.get(`/admin/ui-components/${id}`) }, // 创建UI组件 createUIComponent(data) { // 确保发送的数据结构与后端期望的完全匹配 const requestData = { component_code: data.component_code || '', component_name: data.component_name || '', description: data.description || '', version: data.version || '', is_active: data.is_active !== undefined ? data.is_active : true, sort_order: data.sort_order !== undefined ? data.sort_order : 0 } // 添加调试日志 console.log('创建UI组件请求数据:', requestData) return request.post('/admin/ui-components', requestData) }, // 更新UI组件 updateUIComponent(id, data) { // 确保发送的数据结构与后端期望的完全匹配 const requestData = { id: id, component_code: data.component_code || '', component_name: data.component_name || '', description: data.description || '', version: data.version || '', is_active: data.is_active !== undefined ? data.is_active : true, sort_order: data.sort_order !== undefined ? data.sort_order : 0 } // 添加调试日志 console.log('更新UI组件请求数据:', requestData) return request.put(`/admin/ui-components/${id}`, requestData) }, // 删除UI组件 deleteUIComponent(id) { return request.delete(`/admin/ui-components/${id}`) }, // 上传UI组件文件 uploadUIComponentFile(id, formData) { return request.post(`/admin/ui-components/${id}/upload`, formData, { headers: { 'Content-Type': 'multipart/form-data' } }) }, // 上传并解压UI组件文件 uploadAndExtractUIComponentFile(id, formData) { return request.post(`/admin/ui-components/${id}/upload-extract`, formData, { headers: { 'Content-Type': 'multipart/form-data' } }) }, // 下载UI组件文件 downloadUIComponentFile(id) { return request.get(`/admin/ui-components/${id}/download`, { responseType: 'blob' }) }, // 获取UI组件文件夹内容 getUIComponentFolderContent(id) { return request.get(`/admin/ui-components/${id}/folder-content`) }, // 删除UI组件文件夹 deleteUIComponentFolder(id) { return request.delete(`/admin/ui-components/${id}/folder`) }, // 创建UI组件并上传文件(合并操作) createUIComponentWithFile(formData) { return request.post('/admin/ui-components/create-with-file', formData, { headers: { 'Content-Type': 'multipart/form-data' } }) } }