import { params } from '@/env' import { FLODER_LIST } from './constant' import { addUnsetResErrorURLS, axios } from './instance' import { namespace } from '@/env' export interface Floder { filesId: number, caseId: string, filesTypeId: number, filesTitle: string, filesUrl: string, } export type Floders = Floder[] addUnsetResErrorURLS(`${namespace}/caseInquest/downDocx`, `${namespace}/caseExtractDetail/downDocx`, `${namespace}/caseImg/getFfmpegImage`) export const fetchFloders = async () => { const floders = await axios.get(FLODER_LIST, { params: { caseId: params.caseId } }) // debugger const otherFloders = [{ filesId: 88, filesTypeId: 3, filesTitle: '勘验笔录', ex: `${namespace}/caseInquest/info`, bex: `${namespace}/caseInquest/downDocx` }, { filesId: 89, filesTypeId: 4, filesTitle: '提取清单', ex: `${namespace}/caseExtractDetail/info`, bex: `${namespace}/caseExtractDetail/downDocx` },] const res = await axios.get(`${namespace}/caseImg/getFfmpegImage`, { params: { caseId: params.caseId } }) if (res.data.data.length) { res.data.data.forEach((item: any, ndx: any) => { floders.push({ filesId: 100 + ndx, filesTypeId: 2, filesTitle: '照片制卷图', caseId: params.caseId.toString(), filesUrl: item.imgUrl }) }) } await Promise.all(otherFloders.map(async of => { const kybl = await axios.get(of.ex, { params: { caseId: params.caseId } }) if (kybl) { const data = await axios.get(of.bex, { params: { caseId: params.caseId }, responseType: 'blob' }) const blob = data.data floders.push({ ...of, caseId: params.caseId.toString(), filesUrl: URL.createObjectURL(blob) }) } })) console.log('last-floders', floders) return floders }