This commit is contained in:
owenchen committed 2026-09-09 16:39:19 +08:00
1 parent 808042cf72
commit ad6ae767bb
2 files changed
+70 -112

No files matched your search

@@ -28,17 +28,17 @@
type="icon-foldervideo" /></a-button> type="icon-foldervideo" /></a-button>
</a-tooltip> </a-tooltip>
</a-col> </a-col>
<a-col :span="3" v-if="!isDirectorySelected && isSingleItem && isSingleAudio"> <a-col :span="3" v-if="!isDirectorySelected && isSingleItem && isSingleAudio" >
<a-tooltip v-if="selectedItem.IsPlay != 'Y'" title="播放"> <a-tooltip v-if="selectedItem.IsPlay != 'Y'" title="播放">
<a-button class="nav-btn" :icon="h(PlayCircleOutlined, { style: { color: 'red' } })" <a-button class="nav-btn" :icon="h(PlayCircleOutlined, { style: { color: 'red' } })"
@click="onPlayAudio"></a-button> @click="onPlayAudio"></a-button>
</a-tooltip> </a-tooltip>
<a-tooltip v-else-if="selectedItem.IsPause != 'Y'" title="暂停"> <a-tooltip v-else-if="selectedItem.IsPause != 'Y'" title="暂停">
<a-button type="text" :icon="h(PauseCircleOutlined)" @click="onPauseAudio">暂停</a-button> <a-button class="nav-btn" :icon="h(PauseCircleOutlined)" @click="onPauseAudio"></a-button>
</a-tooltip> </a-tooltip>
<a-tooltip v-else title="继续"> <a-tooltip v-else title="继续">
<a-button type="text" :icon="h(PlayCircleOutlined, { style: { color: 'red' } })" <a-button class="nav-btn" :icon="h(PlayCircleOutlined, { style: { color: 'red' } })"
@click="onContinueAudio">继续</a-button> @click="onContinueAudio"></a-button>
</a-tooltip> </a-tooltip>
</a-col> </a-col>
</a-row> </a-row>
+66 -108
View File
@@ -1,101 +1,41 @@
<template> <template>
<a-spin size="large" :spinning="loading" :tip="spinTip"> <a-spin size="large" :spinning="loading" :tip="spinTip">
<div class="dms-file-enquiry"> <div class="dms-file-enquiry">
<Toolbar <Toolbar :path-stack="pathStack" :root-path="rootPath" :loading="loading" @go-top="onGoTop" @go-back="onGoBack"
:path-stack="pathStack" @refresh="onReSearch" @search="onSearchByName" @breadcrumb-click="onBreadcrumbClick" />
:root-path="rootPath"
:loading="loading"
@go-top="onGoTop"
@go-back="onGoBack"
@refresh="onReSearch"
@search="onSearchByName"
@breadcrumb-click="onBreadcrumbClick"
/>
<OperatorStationDelete <OperatorStationDelete :selected-items="keys" :upload-url="uploadUrl" :headers="headers" :can-create="canCreate"
:selected-items="keys" :can-amend="canAmend" :can-delete="canDelete" :can-view="canView" @create-folder="onCreate"
:upload-url="uploadUrl" @before-upload="beforeUpload" @download="onDownloadSelected" @share="onShareSelected"
:headers="headers" @publish="onPublishSelected" @view-preview="onViewPreviewSelected" @play-video="onUrlVideoPlayItem"
:can-create="canCreate" @play-audio="onPlayAudioItem" @pause-audio="onPauseAudio" @continue-audio="onContinueAudio"
:can-amend="canAmend" @preview="onPreviewSelected" @rename="onAmendSelected" @move="onMoveSelected" @delete="onDeleteSelected"
:can-delete="canDelete" @restore="onRestoreSelected" />
:can-view="canView"
@create-folder="onCreate"
@before-upload="beforeUpload"
@download="onDownloadSelected"
@share="onShareSelected"
@publish="onPublishSelected"
@view-preview="onViewPreviewSelected"
@play-video="onUrlVideoPlayItem"
@play-audio="onPlayAudioItem"
@pause-audio="onPauseAudio"
@continue-audio="onContinueAudio"
@preview="onPreviewSelected"
@rename="onAmendSelected"
@move="onMoveSelected"
@delete="onDeleteSelected"
@restore="onRestoreSelected"
/>
<MyComputer <MyComputer :datas="datas" v-model:selected-keys="keys" @select-change="onSelectChange"
:datas="datas" @open-folder="onOpenFolder" @open-file="onOpenFile" @preview-image="onPreviewOrgFile" />
v-model:selected-keys="keys"
@select-change="onSelectChange"
@open-folder="onOpenFolder"
@open-file="onOpenFile"
@preview-image="onPreviewOrgFile"
/>
</div> </div>
<a-image <a-image :width="1024" :style="{ display: 'none' }" :preview="{
:width="1024" visible,
:style="{ display: 'none' }" onVisibleChange: setPicVisible,
:preview="{ }" :src="imageSrc" />
visible,
onVisibleChange: setPicVisible,
}"
:src="imageSrc"
/>
<dmsFolder @on-submit="onReload"></dmsFolder> <dmsFolder @on-submit="onReload"></dmsFolder>
<videoPlay></videoPlay> <videoPlay></videoPlay>
<dragModal <dragModal v-model:open="showModalShare" width="60%" title="分享管理查询" :mask-closable="false" :fullscreen="width < 640"
v-model:open="showModalShare" @ok="handleSelectShare">
width="60%"
title="分享管理查询"
:mask-closable="false"
:fullscreen="width < 640"
@ok="handleSelectShare"
>
<DmsFileShareModal ref="shareEnquiry"></DmsFileShareModal> <DmsFileShareModal ref="shareEnquiry"></DmsFileShareModal>
</dragModal> </dragModal>
<dragModal <dragModal v-model:open="showModalPublishPhoto" width="60%" title="相册专辑查询" :mask-closable="false"
v-model:open="showModalPublishPhoto" :fullscreen="width < 640" @ok="handleSelectPublishPhoto">
width="60%"
title="相册专辑查询"
:mask-closable="false"
:fullscreen="width < 640"
@ok="handleSelectPublishPhoto"
>
<PublishPhotoEnquiry ref="publishPhotoEnquiry"></PublishPhotoEnquiry> <PublishPhotoEnquiry ref="publishPhotoEnquiry"></PublishPhotoEnquiry>
</dragModal> </dragModal>
<dragModal <dragModal v-model:open="showModalPublishAudio" width="60%" title="音乐专辑查询" :mask-closable="false"
v-model:open="showModalPublishAudio" :fullscreen="width < 640" @ok="handleSelectPublishAudio">
width="60%"
title="音乐专辑查询"
:mask-closable="false"
:fullscreen="width < 640"
@ok="handleSelectPublishAudio"
>
<PublishAudioEnquiry ref="publishAudioEnquiry"></PublishAudioEnquiry> <PublishAudioEnquiry ref="publishAudioEnquiry"></PublishAudioEnquiry>
</dragModal> </dragModal>
<dragModal <dragModal v-model:open="showModalPublishVideo" width="60%" title="影视专辑查询" :mask-closable="false"
v-model:open="showModalPublishVideo" :fullscreen="width < 640" @ok="handleSelectPublishVideo">
width="60%"
title="影视专辑查询"
:mask-closable="false"
:fullscreen="width < 640"
@ok="handleSelectPublishVideo"
>
<PublishVideoEnquiry ref="publishVideoEnquiry"></PublishVideoEnquiry> <PublishVideoEnquiry ref="publishVideoEnquiry"></PublishVideoEnquiry>
</dragModal> </dragModal>
</a-spin> </a-spin>
@@ -383,12 +323,12 @@ const uploadChunk = async (
fileName, fileName,
chunks[index - 1], chunks[index - 1],
uid + uid +
"-" + "-" +
index.toString() + index.toString() +
"-" + "-" +
chunks.length.toString() + chunks.length.toString() +
"." + "." +
fileExtension, fileExtension,
); );
if (process.env.NODE_ENV === "development") { if (process.env.NODE_ENV === "development") {
@@ -775,16 +715,25 @@ const onMove = () => {
}; };
const onDelete = async () => { const onDelete = async () => {
for (let i = 0; i < keys.value.length; i++) { try {
await dmsFileService.DeleteLog(keys.value[i].FileId); loading.value = true;
} for (let i = 0; i < keys.value.length; i++) {
await dmsFileService.DeleteLog(keys.value[i].FileId);
}
notification.info({ notification.info({
message: "系统提示:", message: "系统提示:",
description: "记录删除成功", description: "记录删除成功",
placement: "topRight", placement: "topRight",
}); });
onReload(); await onReload();
} catch (error) {
}
finally {
loading.value = false;
}
}; };
const setBindOptionValue = ( const setBindOptionValue = (
@@ -872,7 +821,7 @@ const findBySearchCriteria = async (c: DmsFileSearchCriteria) => {
result.value.Total = data.Total; result.value.Total = data.Total;
result.value.Page = data.Page; result.value.Page = data.Page;
result.value.Limit = data.Limit; result.value.Limit = data.Limit;
const rawList = data.Logs ?? []; const rawList = data.Logs ?? [];
// 始终排序,空数组orderBy也安全 // 始终排序,空数组orderBy也安全
datas.value = orderBy( datas.value = orderBy(
@@ -1188,16 +1137,25 @@ const onRestoreSelected = () => {
}; };
const onRestore = async () => { const onRestore = async () => {
for (let i = 0; i < keys.value.length; i++) { try {
await dmsFileService.RestoreDmsFile(keys.value[i].FileId); loading.value = true;
} for (let i = 0; i < keys.value.length; i++) {
await dmsFileService.RestoreDmsFile(keys.value[i].FileId);
}
notification.info({ notification.info({
message: "系统提示:", message: "系统提示:",
description: "还原成功", description: "还原成功",
placement: "topRight", placement: "topRight",
}); });
onReload(); await onReload();
} catch (error) {
}
finally {
loading.value = false;
}
}; };
const onDeleteSelected = () => { const onDeleteSelected = () => {