feat:修改文件上传,白板关闭不影响其他用户等

This commit is contained in:
leilei
2025-11-10 17:55:52 +08:00
parent df359d01cc
commit 6fbe53009c
23 changed files with 17128 additions and 1623 deletions

View File

@@ -156,7 +156,23 @@
</div>
</template>
</el-dialog>
</div>
<el-dialog
v-model="dialogFileVisible"
title="文件转换"
width="50%"
class="file-preview-dialog"
>
<div class="preview-container">
<div class="loading-container">
<el-icon class="is-loading" size="48">
<Loading />
</el-icon>
<p>正在下载文件请稍候...</p>
</div>
</div>
</el-dialog>
</div>
</template>
<script setup>
@@ -208,6 +224,8 @@ const fileName = ref('')
const textContent = ref('')
const currentFileData = ref(null)
const convertTaskId = ref('')
const dialogFileVisible = ref(false)
// PDF相关状态
const pdfSource = ref('')
@@ -261,7 +279,12 @@ onMounted(async () => {
emitter.on('subscribeToFileConversionStatusTopic',subscribeToFileConversionStatusTopic)
emitter.on('fileUploadStatus',fileUploadStatus)
emitter.on('subscribeToFilePreviewTopic',subscribeToFilePreviewTopic)
emitter.on('fileSuccess',fileSuccess)
function fileSuccess(){
dialogFileVisible.value = true
}
//
function subscribeToFileConversionStatusTopic(data){
try {
const userId = JSON.parse(sessionStorage.getItem('userData'))?.uid
@@ -286,12 +309,9 @@ function subscribeToFilePreviewTopic(data){
}
}
//提交转换任务,但文件暂未转换完成
function fileUploadStatus(data){
if(!dialogFormVisible.value){
}
// console.log('文件上传成功mqtt消息')
}
// 初始化MQTT连接 pdf转换成功
@@ -327,9 +347,14 @@ function subscribeToPdfConversionTopic() {
function handleFileUploadMessage(payload, topic){
try {
const messageStr = payload.toString()
const data = JSON.parse(messageStr)
emitter.emit('fileUploadStatus')
if(dialogFormVisible.value){
const data = JSON.parse(messageStr)
// emitter.emit('fileUploadStatus')
console.log(data,'data文件转换完成预览通知')
const userId = JSON.parse(sessionStorage.getItem('userData'))?.uid
if(dialogFileVisible.value){
dialogFileVisible.value = false
}
if(dialogFormVisible.value && userId != data.user_uid){
// 显示确认对话框
ElMessageBox.confirm(
`用户${data.user_uid}上传了${data.file_name}文件,是否立即预览?`,
@@ -364,7 +389,7 @@ function handleFileUploadMessage(payload, topic){
message: `用户${data.user_uid}上传了${data.file_name}文件`,
type: 'info',
})
showEdit(data)
showEdit(data)
}
} catch (error) {
console.error('处理转换状态消息失败:', error)