Files
wuhan-saga/client/dist/assets/MediaPage-DCpTbUMO.js
王文昊 cec461f229 feat(portal): 案例数据 SQL 与成功案例展示优化
- 新增/更新案例相关 SQL(初始化或补丁脚本)
- 首页精选案例:多卡轮播、非精选补足列表、工业风卡片
- 案例列表:无封面时深蓝工业风占位(客户水印与缩写铭牌)
2026-05-06 22:03:17 +08:00

2 lines
2.5 KiB
JavaScript

import{d as D,m as E,c as n,b as i,e as c,w as d,W as z,F as A,r as S,s as f,g as U,i as v,h as F,j as u,X as T,o as s,k as _,f as h,t as g,I as o,Y as W}from"./index-CzwJBVIC.js";import{a as y,_ as $}from"./index-8GqMb-ax.js";import{u as k}from"./uploadUrl-CyxyoWKj.js";const j={class:"admin-crud-page"},H={class:"page-header"},X={class:"media-grid"},Y=["src"],q={class:"media-info"},G={class:"media-name"},J={class:"media-category"},K={class:"media-actions"},O="/api/admin/media/upload",Q=D({__name:"MediaPage",setup(R){const l=v(!1),r=v([]),b=F(()=>{const e=localStorage.getItem("token");return e?{Authorization:e}:{}});function w(e){return e?e.startsWith("video/"):!1}async function m(){l.value=!0;try{const e=await y.getMediaList();r.value=e.data??[]}catch{r.value=[]}finally{l.value=!1}}function C(e){e&&e.code===200?(o.success("上传成功"),m()):o.error(e?.msg||"上传失败")}function M(e){o.error("上传失败,请检查文件大小或格式")}function x(e){navigator.clipboard.writeText(e).then(()=>o.success("路径已复制")).catch(()=>o.error("复制失败"))}async function P(e){await W.confirm("确认删除?","提示",{type:"warning"});try{await y.deleteMedia(e),o.success("删除成功"),m()}catch{o.error("删除失败")}}return E(m),(e,a)=>{const p=u("el-button"),B=u("el-upload"),I=u("el-image"),L=u("el-empty"),N=T("loading");return s(),n("div",j,[i("div",H,[a[1]||(a[1]=i("h2",null,"媒体库管理",-1)),c(B,{action:O,headers:b.value,"on-success":C,"on-error":M,"show-file-list":!1,multiple:"",style:{display:"inline-block"}},{default:d(()=>[c(p,{type:"primary"},{default:d(()=>[...a[0]||(a[0]=[_("上传文件",-1)])]),_:1})]),_:1},8,["headers"])]),z((s(),n("div",X,[(s(!0),n(A,null,S(r.value,t=>(s(),n("div",{key:t.mediaLibraryId,class:"media-item card"},[w(t.fileType)?(s(),n("video",{key:0,src:h(k)(t.filePath),class:"media-thumb media-thumb-video",muted:"",playsinline:"",preload:"metadata"},null,8,Y)):(s(),f(I,{key:1,src:h(k)(t.filePath),fit:"cover",class:"media-thumb"},null,8,["src"])),i("div",q,[i("p",G,g(t.fileName),1),i("p",J,g(t.category),1)]),i("div",K,[c(p,{size:"small",onClick:V=>x(t.filePath)},{default:d(()=>[...a[2]||(a[2]=[_("复制路径",-1)])]),_:1},8,["onClick"]),c(p,{size:"small",type:"danger",onClick:V=>P(t.mediaLibraryId)},{default:d(()=>[...a[3]||(a[3]=[_("删除",-1)])]),_:1},8,["onClick"])])]))),128))])),[[N,l.value]]),!l.value&&!r.value.length?(s(),f(L,{key:0,description:"暂无媒体文件"})):U("",!0)])}}}),te=$(Q,[["__scopeId","data-v-e83b5cfe"]]);export{te as default};