处理聊天记录文件格式判断规则、跳转提示等
This commit is contained in:
parent
845281377f
commit
825ca5ec3c
@ -668,15 +668,23 @@ const queryAllSearch = () => {
|
||||
|
||||
//文件类型图标
|
||||
const fileTypeAvatar = (fileType) => {
|
||||
//PDF文件扩展名映射
|
||||
const PDF_EXTENSIONS = ['PDF', 'pdf']
|
||||
// Excel文件扩展名映射
|
||||
const EXCEL_EXTENSIONS = ['XLS', 'XLSX', 'CSV', 'xls', 'xlsx', 'csv']
|
||||
// Word文件扩展名映射
|
||||
const WORD_EXTENSIONS = ['DOC', 'DOCX', 'RTF', 'DOT', 'DOTX', 'doc', 'docx', 'rtf', 'dot', 'dotx']
|
||||
// PPT文件扩展名映射
|
||||
const PPT_EXTENSIONS = ['PPT', 'PPTX', 'PPS', 'PPSX', 'ppt', 'pptx', 'pps', 'ppsx']
|
||||
let file_type_avatar = fileType_Files
|
||||
if (fileType) {
|
||||
if (fileType === 'ppt' || fileType === 'pptx') {
|
||||
if (PPT_EXTENSIONS.includes(fileType)) {
|
||||
file_type_avatar = fileType_PPT
|
||||
} else if (fileType === 'pdf') {
|
||||
} else if (PDF_EXTENSIONS.includes(fileType)) {
|
||||
file_type_avatar = fileType_PDF
|
||||
} else if (fileType === 'doc' || fileType === 'docx') {
|
||||
} else if (WORD_EXTENSIONS.includes(fileType)) {
|
||||
file_type_avatar = fileType_WORD
|
||||
} else if (fileType === 'xls' || fileType === 'xlsx') {
|
||||
} else if (EXCEL_EXTENSIONS.includes(fileType)) {
|
||||
file_type_avatar = fileType_EXCEL
|
||||
} else {
|
||||
file_type_avatar = fileType_Files
|
||||
@ -694,7 +702,7 @@ const previewPDF = (item) => {
|
||||
// downloadAndOpenFile(item)
|
||||
// })
|
||||
// }
|
||||
if(checkFileCanPreview(item?.extra?.path || '')){
|
||||
if (checkFileCanPreview(item?.extra?.path || '')) {
|
||||
window.open(
|
||||
`${import.meta.env.VITE_PAGE_URL}/office?url=${item.extra.path}`,
|
||||
'_blank',
|
||||
@ -956,11 +964,11 @@ body:deep(.round-3) {
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
border-bottom: 1px solid #f8f8f8;
|
||||
|
||||
|
||||
&:hover {
|
||||
background-color: rgba(70, 41, 157, 0.1)
|
||||
background-color: rgba(70, 41, 157, 0.1);
|
||||
}
|
||||
|
||||
|
||||
.attachment-avatar {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
@ -69,9 +69,17 @@
|
||||
class="text-[12px] font-regular"
|
||||
:text="resultDetail"
|
||||
:searchText="props.searchText"
|
||||
v-if="props.searchItem?.msg_type !== 3 && props.searchItem?.msg_type !== 5 && props.searchItem?.msg_type !== 6"
|
||||
v-if="
|
||||
props.searchItem?.msg_type !== 3 &&
|
||||
props.searchItem?.msg_type !== 5 &&
|
||||
props.searchItem?.msg_type !== 6
|
||||
"
|
||||
/>
|
||||
<div class="message-component-wrapper" v-if="props.searchItem?.msg_type === 3 || props.searchItem?.msg_type === 5" @click.stop>
|
||||
<div
|
||||
class="message-component-wrapper"
|
||||
v-if="props.searchItem?.msg_type === 3 || props.searchItem?.msg_type === 5"
|
||||
@click.stop
|
||||
>
|
||||
<component
|
||||
:is="MessageComponents[props.searchItem?.msg_type] || 'unknown-message'"
|
||||
:extra="resultDetail"
|
||||
@ -292,7 +300,9 @@ const resultDetail = computed(() => {
|
||||
result_detail =
|
||||
props.searchItem?.msg_type === 1
|
||||
? props.searchItem?.extra?.content
|
||||
: props.searchItem?.msg_type === 3 || props.searchItem?.msg_type === 5 || props.searchItem?.msg_type === 6
|
||||
: props.searchItem?.msg_type === 3 ||
|
||||
props.searchItem?.msg_type === 5 ||
|
||||
props.searchItem?.msg_type === 6
|
||||
? props.searchItem?.extra
|
||||
: ChatMsgTypeMapping[props.searchItem?.msg_type]
|
||||
break
|
||||
@ -311,7 +321,7 @@ const previewPDF = (item) => {
|
||||
// downloadAndOpenFile(item)
|
||||
// })
|
||||
// }
|
||||
if(checkFileCanPreview(item || '')){
|
||||
if (checkFileCanPreview(item || '')) {
|
||||
window.open(
|
||||
`${import.meta.env.VITE_PAGE_URL}/office?url=${item}`,
|
||||
'_blank',
|
||||
@ -319,6 +329,7 @@ const previewPDF = (item) => {
|
||||
)
|
||||
} else {
|
||||
//由于聊天记录本身有跳转到指定位置的逻辑,所以这里不需要再做跳转
|
||||
window['$message'].warning('暂不支持在线预览该类型文件')
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
Loading…
Reference in New Issue
Block a user