2 lines
11 KiB
JavaScript
2 lines
11 KiB
JavaScript
import{d as I,v as h,o as T,h as $,z as a,T as N,j as t,I as l,u as s,D as r,C as n,Q as S,f,F as L,J as P,g as u,G as E}from"./index-BhaIiTEj.js";import{t as w,b as m,_ as c,d as p,a as G}from"./Sonner.vue_vue_type_script_setup_true_lang-BwfWndxy.js";import{_ as C}from"./index-Catk2Spn.js";import{_ as j,a as M,b as V}from"./CardTitle.vue_vue_type_script_setup_true_lang-DBp3brf1.js";import{_ as y,a as J,b as Q,c as H,d as v,e as R,f as x}from"./TableHeader.vue_vue_type_script_setup_true_lang-NIN1xtGv.js";import{_ as q}from"./AdminLayout.vue_vue_type_script_setup_true_lang-B_6YVjYZ.js";import{_ as K}from"./_plugin-vue_export-helper-DlAUqK2U.js";const O={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"},U={class:"flex items-center"},W={class:"ml-4"},X={class:"text-2xl font-semibold text-gray-900"},Y={class:"flex items-center"},Z={class:"ml-4"},tt={class:"text-2xl font-semibold text-gray-900"},et={class:"flex items-center"},st={class:"ml-4"},lt={class:"text-2xl font-semibold text-gray-900"},at={class:"flex items-center"},ot={class:"ml-4"},nt={class:"text-2xl font-semibold text-gray-900"},it={class:"flex items-center justify-between"},rt={key:0,class:"space-y-4"},dt={key:1,class:"text-center py-8"},ut={key:2,class:"overflow-x-auto"},ft={key:0},mt={key:1,class:"text-gray-500"},ct={class:"grid grid-cols-1 md:grid-cols-4 gap-4"},vt=I({__name:"AdminDashboard",setup(xt){const _=S(),g=h(!0),k=h([]),d=h({totalBatches:0,activeBatches:0,expiredBatches:0,totalFiles:0}),B=async()=>{g.value=!0;try{const i=await N.getBatches({page:1,page_size:10});if(i.data.code===200){const e=i.data.data.data;k.value=e,d.value.totalBatches=i.data.data.total,d.value.activeBatches=e.filter(o=>o.status==="active").length,d.value.expiredBatches=e.filter(o=>o.status==="expired").length,d.value.totalFiles=e.reduce((o,F)=>o+(F.file_items?.length||0),0)}}catch(i){console.error("获取数据失败:",i),w.error("获取数据失败,请重试")}finally{g.value=!1}},z=async()=>{w.info("正在刷新数据..."),await B(),w.success("数据已刷新")},D=i=>{switch(i){case"active":return"default";case"expired":return"secondary";case"deleted":return"destructive";default:return"outline"}},A=i=>{switch(i){case"active":return"活跃";case"expired":return"已过期";case"deleted":return"已删除";default:return"未知"}},b=i=>E.formatDate(i);return T(()=>{B()}),(i,e)=>(u(),$(q,null,{default:a(()=>[e[28]||(e[28]=t("div",{class:"mb-8"},[t("h2",{class:"text-3xl font-bold text-gray-900"},"管理概览"),t("p",{class:"mt-2 text-gray-600"},"系统运行状态和统计信息")],-1)),t("div",O,[l(s(c),null,{default:a(()=>[l(s(m),{class:"p-6"},{default:a(()=>[t("div",U,[e[5]||(e[5]=t("div",{class:"flex-shrink-0"},[t("div",{class:"w-8 h-8 bg-blue-100 rounded-lg flex items-center justify-center"},[t("svg",{class:"w-5 h-5 text-blue-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 9a2 2 0 012-2h4l2 2h4a2 2 0 012 2v2M7 7V3a2 2 0 012-2h6a2 2 0 012 2v4"})])])],-1)),t("div",W,[e[4]||(e[4]=t("p",{class:"text-sm font-medium text-gray-500"},"总批次数",-1)),t("p",X,r(d.value.totalBatches||0),1)])])]),_:1})]),_:1}),l(s(c),null,{default:a(()=>[l(s(m),{class:"p-6"},{default:a(()=>[t("div",Y,[e[7]||(e[7]=t("div",{class:"flex-shrink-0"},[t("div",{class:"w-8 h-8 bg-green-100 rounded-lg flex items-center justify-center"},[t("svg",{class:"w-5 h-5 text-green-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})])])],-1)),t("div",Z,[e[6]||(e[6]=t("p",{class:"text-sm font-medium text-gray-500"},"活跃批次",-1)),t("p",tt,r(d.value.activeBatches||0),1)])])]),_:1})]),_:1}),l(s(c),null,{default:a(()=>[l(s(m),{class:"p-6"},{default:a(()=>[t("div",et,[e[9]||(e[9]=t("div",{class:"flex-shrink-0"},[t("div",{class:"w-8 h-8 bg-yellow-100 rounded-lg flex items-center justify-center"},[t("svg",{class:"w-5 h-5 text-yellow-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})])])],-1)),t("div",st,[e[8]||(e[8]=t("p",{class:"text-sm font-medium text-gray-500"},"已过期批次",-1)),t("p",lt,r(d.value.expiredBatches||0),1)])])]),_:1})]),_:1}),l(s(c),null,{default:a(()=>[l(s(m),{class:"p-6"},{default:a(()=>[t("div",at,[e[11]||(e[11]=t("div",{class:"flex-shrink-0"},[t("div",{class:"w-8 h-8 bg-purple-100 rounded-lg flex items-center justify-center"},[t("svg",{class:"w-5 h-5 text-purple-600",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})])])],-1)),t("div",ot,[e[10]||(e[10]=t("p",{class:"text-sm font-medium text-gray-500"},"总文件数",-1)),t("p",nt,r(d.value.totalFiles||0),1)])])]),_:1})]),_:1})]),l(s(c),{class:"mb-8"},{default:a(()=>[l(s(j),null,{default:a(()=>[t("div",it,[t("div",null,[l(s(M),null,{default:a(()=>[...e[12]||(e[12]=[n("最近批次",-1)])]),_:1}),l(s(V),null,{default:a(()=>[...e[13]||(e[13]=[n("最新创建的文件批次",-1)])]),_:1})]),l(s(p),{variant:"outline",onClick:e[0]||(e[0]=o=>s(_).push("/admin/batches")),size:"sm"},{default:a(()=>[...e[14]||(e[14]=[n(" 查看全部 ",-1),t("svg",{class:"w-4 h-4 ml-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"})],-1)])]),_:1})])]),_:1}),l(s(m),null,{default:a(()=>[g.value?(u(),f("div",rt,[l(s(y),{class:"h-4 w-full"}),l(s(y),{class:"h-4 w-3/4"}),l(s(y),{class:"h-4 w-1/2"})])):k.value.length===0?(u(),f("div",dt,[...e[15]||(e[15]=[t("svg",{class:"w-12 h-12 mx-auto text-gray-400 mb-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})],-1),t("p",{class:"text-gray-500"},"暂无批次数据",-1)])])):(u(),f("div",ut,[l(s(J),null,{default:a(()=>[l(s(Q),null,{default:a(()=>[l(s(H),null,{default:a(()=>[l(s(v),null,{default:a(()=>[...e[16]||(e[16]=[n("取件码",-1)])]),_:1}),l(s(v),null,{default:a(()=>[...e[17]||(e[17]=[n("类型",-1)])]),_:1}),l(s(v),null,{default:a(()=>[...e[18]||(e[18]=[n("状态",-1)])]),_:1}),l(s(v),null,{default:a(()=>[...e[19]||(e[19]=[n("文件数",-1)])]),_:1}),l(s(v),null,{default:a(()=>[...e[20]||(e[20]=[n("创建时间",-1)])]),_:1}),l(s(v),null,{default:a(()=>[...e[21]||(e[21]=[n("过期时间",-1)])]),_:1})]),_:1})]),_:1}),l(s(R),null,{default:a(()=>[(u(!0),f(L,null,P(k.value,o=>(u(),$(s(H),{key:o.id},{default:a(()=>[l(s(x),{class:"font-medium font-mono"},{default:a(()=>[n(r(o.pickup_code),1)]),_:2},1024),l(s(x),null,{default:a(()=>[l(s(C),{variant:"outline"},{default:a(()=>[n(r(o.type==="text"?"文本":"文件"),1)]),_:2},1024)]),_:2},1024),l(s(x),null,{default:a(()=>[l(s(C),{variant:D(o.status)},{default:a(()=>[n(r(A(o.status)),1)]),_:2},1032,["variant"])]),_:2},1024),l(s(x),null,{default:a(()=>[n(r(o.file_items?.length||0),1)]),_:2},1024),l(s(x),null,{default:a(()=>[n(r(b(o.created_at)),1)]),_:2},1024),l(s(x),null,{default:a(()=>[o.expire_at?(u(),f("span",ft,r(b(o.expire_at)),1)):(u(),f("span",mt,"永不过期"))]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]))]),_:1})]),_:1}),l(s(c),null,{default:a(()=>[l(s(j),null,{default:a(()=>[l(s(M),null,{default:a(()=>[...e[22]||(e[22]=[n("快速操作",-1)])]),_:1}),l(s(V),null,{default:a(()=>[...e[23]||(e[23]=[n("常用的管理功能",-1)])]),_:1})]),_:1}),l(s(m),null,{default:a(()=>[t("div",ct,[l(s(p),{onClick:e[1]||(e[1]=o=>s(_).push("/admin/batches")),variant:"outline",class:"h-auto p-4 flex-col items-start"},{default:a(()=>[...e[24]||(e[24]=[t("svg",{class:"w-8 h-8 text-blue-600 mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 9a2 2 0 012-2h4l2 2h4a2 2 0 012 2v2M7 7V3a2 2 0 012-2h6a2 2 0 012 2v4"})],-1),t("div",{class:"text-left"},[t("div",{class:"font-medium"},"文件批次管理"),t("div",{class:"text-sm text-gray-500"},"查看和管理所有文件批次")],-1)])]),_:1}),l(s(p),{onClick:e[2]||(e[2]=o=>s(_).push("/admin/tokens")),variant:"outline",class:"h-auto p-4 flex-col items-start"},{default:a(()=>[...e[25]||(e[25]=[t("svg",{class:"w-8 h-8 text-green-600 mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 7a2 2 0 012 2m4 0a6 6 0 01-7.743 5.743L11 17H9v2H7v2H4a1 1 0 01-1-1v-2.586a1 1 0 01.293-.707l5.964-5.964A6 6 0 1121 9z"})],-1),t("div",{class:"text-left"},[t("div",{class:"font-medium"},"API Token 管理"),t("div",{class:"text-sm text-gray-500"},"创建和管理 API 访问凭证")],-1)])]),_:1}),l(s(p),{onClick:e[3]||(e[3]=o=>s(_).push("/admin/config")),variant:"outline",class:"h-auto p-4 flex-col items-start"},{default:a(()=>[...e[26]||(e[26]=[t("svg",{class:"w-8 h-8 text-orange-600 mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})],-1),t("div",{class:"text-left"},[t("div",{class:"font-medium"},"系统配置"),t("div",{class:"text-sm text-gray-500"},"管理系统设置和参数")],-1)])]),_:1}),l(s(p),{onClick:z,variant:"outline",class:"h-auto p-4 flex-col items-start"},{default:a(()=>[...e[27]||(e[27]=[t("svg",{class:"w-8 h-8 text-purple-600 mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})],-1),t("div",{class:"text-left"},[t("div",{class:"font-medium"},"刷新数据"),t("div",{class:"text-sm text-gray-500"},"更新系统统计信息")],-1)])]),_:1})])]),_:1})]),_:1}),l(s(G))]),_:1}))}}),Bt=K(vt,[["__scopeId","data-v-3adbfb80"]]);export{Bt as default};
|