From b17e99eb93a122919a2836ab9f6b2e32c9418c28 Mon Sep 17 00:00:00 2001 From: whm <973418690@qq.com> Date: Wed, 18 Mar 2026 18:43:23 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E9=A6=96=E9=A1=B5=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- admin/src/api/admin.js | 9 ++- admin/src/views/sites/HomepageEdit.vue | 69 ++++++++++++++++++++++- server/handlers/module_upload.go | 77 +++++++++++++++++++++++++- server/main.go | 3 + 4 files changed, 150 insertions(+), 8 deletions(-) diff --git a/admin/src/api/admin.js b/admin/src/api/admin.js index c2d2ace..7421be3 100644 --- a/admin/src/api/admin.js +++ b/admin/src/api/admin.js @@ -64,10 +64,15 @@ export const deletePage = (id) => request.delete(`/admin/pages/${id}`) export const getHomepage = (siteId) => request.get(`/admin/sites/${siteId}/homepage`) export const updateHomepage = (siteId, data) => request.put(`/admin/sites/${siteId}/homepage`, data) export const downloadHomepage = (siteId) => request.get(`/admin/sites/${siteId}/homepage/download`, { responseType: 'blob' }) +export const getDownloadableAssets = (siteId) => request.get(`/admin/sites/${siteId}/assets/downloadable`) // 文件管理(功能模块:多级目录、可下载) -export const getSiteAssets = (siteId, path) => - request.get(`/admin/sites/${siteId}/assets`, { params: path ? { path } : {} }) +export const getSiteAssets = (siteId, path, opts = {}) => { + const params = {} + if (path) params.path = path + if (opts.downloadable) params.downloadable = '1' + return request.get(`/admin/sites/${siteId}/assets`, { params }) +} export const uploadSiteAsset = (siteId, file, opts = {}) => { const form = new FormData() form.append('file', file) diff --git a/admin/src/views/sites/HomepageEdit.vue b/admin/src/views/sites/HomepageEdit.vue index d946b15..05d2f5d 100644 --- a/admin/src/views/sites/HomepageEdit.vue +++ b/admin/src/views/sites/HomepageEdit.vue @@ -43,14 +43,16 @@ - + + 选择可下载文件 平台(轨道) -
+
+ 选择文件 删除
+ 添加平台 @@ -84,13 +86,31 @@ + + + + + + + + + + +