import { Document, Picture, VideoPlay, Headset, Files, Tickets, } from '@element-plus/icons-vue' import { matterInfo } from "@/api/doc/type" export function getExpirTime(val:string){ let now= Date.now() //haomiao switch(val){ case "sixhour": now+=6*3600*1000 break case "oneday": now+=24*3600*1000 break case "threeday": now+=3*24*3600*1000 break case "oneweek": now+=7*24*3600*1000 break case "onemonth": now+=30*24*3600*1000 break case "threemonth": now+=90*24*3600*1000 break default: now+=6*3600*1000 } let nt=new Date(now) return nt.toISOString().slice(0,10)+" "+nt.toLocaleTimeString() } export function checkExpirTime(val:matterInfo){ if (val.expireInfinity) return false if (val.expireTime) { let now = Date.now() //haomiao let expireTime = new Date(val.expireTime).getTime() if (expireTime > now) return false } return true } export const getFileIcon = (fileName:string) => { const extension = fileName?.split('.').pop()?.toLowerCase(); switch(extension) { case 'pdf': case 'doc': case 'docx': case 'xls': case 'xlsx': return Document; case 'jpg': case 'jpeg': case 'png': case 'gif': case 'svg': return Picture; case 'mp4': case 'mov': case 'avi': return VideoPlay; case 'mp3': case 'wav': return Headset; case 'zip': case 'rar': case '7z': return Files; default: return Tickets; } } export function readableSize(val:matterInfo){ if(val.size<1024) return "1 Kb" //1024*1024 if(val.size<1048576) return (val.size/1024).toFixed(1)+"Kb" //1024*1024*1024 if(val.size<1073741824) return (val.size/1048576).toFixed(1)+"Mb" //1024*1024*1024*1024 if(val.size<1099511627776) return (val.size/1073741824).toFixed(1)+"Gb" return "BIG" }