From b8861237465a3bade82c3b4f839b639e5b951bdc Mon Sep 17 00:00:00 2001 From: rd <1344903914@qq.com> Date: Tue, 12 Aug 2025 15:00:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=86=99=E6=89=8B=E7=AB=AF=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=8E=A5=E5=8F=A3=E6=9B=BF=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/all/generationWorkshop-writer.ts | 14 ++++++++++++++ .../components/edit-form/index.vue | 10 ++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/api/all/generationWorkshop-writer.ts b/src/api/all/generationWorkshop-writer.ts index 611bd18..02493cb 100644 --- a/src/api/all/generationWorkshop-writer.ts +++ b/src/api/all/generationWorkshop-writer.ts @@ -144,3 +144,17 @@ export const postWorksByLinkWriter = (writerCode: string, params = {}) => { export const postWorksByFileWriter = (params = {}, config = {}) => { return Http.post('/v1/writer/works/by-file', params, config); }; + +// 获取图片上传地址 +export const getImagePreSignedUrlWriter = (writerCode: string,params = {}) => { + return Http.get('/v1/writer/oss/image-pre-signed-url', params, { + headers: { 'writer-code': writerCode }, + }); +}; + +// 获取视频上传地址 +export const getVideoPreSignedUrlWriter = (writerCode: string,params = {}) => { + return Http.get('/v1/writer/oss/video-pre-signed-url', params, { + headers: { 'writer-code': writerCode }, + }); +}; diff --git a/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue b/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue index a4c5888..5330c9c 100644 --- a/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue +++ b/src/views/creative-generation-workshop/manuscript-writer/components/edit-form/index.vue @@ -7,9 +7,8 @@ import TextOverTips from '@/components/text-over-tips'; import ImgBox from './img-box'; import { formatFileSize, getVideoInfo, formatDuration, formatUploadSpeed } from '@/utils/tools'; -import { getProjectList } from '@/api/all/propertyMarketing'; import { EnumManuscriptType } from '@/views/creative-generation-workshop/manuscript/list/constants.ts'; -import { getImagePreSignedUrl, getVideoPreSignedUrl } from '@/api/all/common'; +import { getVideoPreSignedUrlWriter, getImagePreSignedUrlWriter } from '@/api/all/generationWorkshop-writer'; // import icon1 from '@/assets/img/creative-generation-workshop/icon-close.png'; @@ -56,6 +55,7 @@ export default { }, emits: ['reValidate', 'change', 'update:modelValue', 'updateVideoInfo'], setup(props, { emit, expose }) { + const route = useRoute(); const formRef = ref(null); const formData = ref({}); const uploadRef = ref(null); @@ -65,6 +65,8 @@ export default { return match ? match[1].toLowerCase() : ''; } const isVideo = computed(() => formData.value.type === EnumManuscriptType.Video); + const writerCode = computed(() => route.params.writerCode); + const setVideoInfo = (file) => { formData.value.videoInfo.percent = 0; formData.value.videoInfo.name = file.name; @@ -133,7 +135,7 @@ export default { } = option; setVideoInfo(file); - const response = await getVideoPreSignedUrl({ suffix: getFileExtension(file.name) }); + const response = await getVideoPreSignedUrlWriter(writerCode.value, { suffix: getFileExtension(file.name) }); const { file_name, upload_url, file_url } = response?.data; if (!upload_url) { throw new Error('未能获取有效的预签名上传地址'); @@ -171,7 +173,7 @@ export default { return; } const { name, size, type } = file; - const response = await getImagePreSignedUrl({ suffix: getFileExtension(name) }); + const response = await getImagePreSignedUrlWriter(writerCode.value, { suffix: getFileExtension(name) }); const { file_name, upload_url, file_url } = response?.data; const blob = new Blob([file], { type });