Files
monisuo/monisuo-admin/dist/assets/dashboard-Bg07rgRO.js
2026-03-22 23:32:23 +08:00

1 line
7.9 KiB
JavaScript

import{Ct as e,Ot as t,S as n,Tt as r,V as i,_ as a,b as o,d as s,g as c,nt as l,v as u,w as d,x as f,z as p}from"./vue.runtime.esm-bundler-DQjudA8G.js";import{t as m}from"./Spinner-BbvbfTgK.js";import{W as h,z as g}from"./index-CcML0o3b.js";import"./Teleport-CLYBkdRb.js";import"./Button-2mdP_ygs.js";import{o as _}from"./monisuo-admin.api-BMEy8kfy.js";import{t as v}from"./iconify-B5QdRg7l.js";import{r as y}from"./global-layout-BuXj6D-T.js";import{t as b}from"./Card-Cv6HQPiQ.js";import{t as ee}from"./CardContent-cvoMlP3H.js";var te={key:0,class:`flex items-center justify-center py-20`},x={key:1,class:`space-y-6`},S={class:`text-sm font-medium text-muted-foreground mb-3 flex items-center gap-2`},C={class:`grid gap-3 sm:grid-cols-3`},w={class:`flex items-center justify-between`},T={class:`mt-3 space-y-1`},E={class:`text-xs text-muted-foreground`},D={class:`text-sm font-medium text-muted-foreground mb-3 flex items-center gap-2`},O={class:`grid gap-3 sm:grid-cols-3`},k={class:`flex items-center justify-between`},A={class:`text-xs font-medium text-green-600`},j={class:`mt-3 space-y-1`},M={class:`text-xs text-muted-foreground`},N={class:`grid gap-4 lg:grid-cols-2`},P={class:`text-sm font-medium text-muted-foreground mb-3 flex items-center gap-2`},F={class:`text-sm font-medium text-muted-foreground mb-3 flex items-center gap-2`},I={class:`grid gap-4 lg:grid-cols-3`},ne={class:`lg:col-span-1`},L={class:`text-sm font-medium text-muted-foreground mb-3 flex items-center gap-2`},R={class:`grid gap-3 sm:grid-cols-2 lg:grid-cols-1`},z={class:`flex items-center justify-between`},B={class:`text-xs text-muted-foreground`},V={class:`text-2xl font-bold mt-1`},H={class:`lg:col-span-2`},U={class:`text-sm font-medium text-muted-foreground mb-3 flex items-center gap-2`},W={class:`grid gap-3 sm:grid-cols-3`},G=d({__name:`dashboard`,setup(d){let G=g(),{data:K,isLoading:q}=_(),J=c(()=>K.value?.data),Y=c(()=>[{label:`在管资金`,value:J.value?.fundBalance||0,icon:`lucide:wallet`,color:`text-blue-600`,bgColor:`bg-blue-50 dark:bg-blue-950`},{label:`交易账户`,value:J.value?.tradeValue||0,icon:`lucide:bar-chart-3`,color:`text-purple-600`,bgColor:`bg-purple-50 dark:bg-purple-950`},{label:`总资产`,value:(J.value?.fundBalance||0)+(J.value?.tradeValue||0),icon:`lucide:landmark`,color:`text-orange-600`,bgColor:`bg-orange-50 dark:bg-orange-950`}]),X=c(()=>[{label:`累计充值`,value:J.value?.totalDeposit||0,icon:`lucide:arrow-down-circle`,color:`text-green-600`,bgColor:`bg-green-50 dark:bg-green-950`,trend:`+12.5%`},{label:`累计提现`,value:J.value?.totalWithdraw||0,icon:`lucide:arrow-up-circle`,color:`text-red-600`,bgColor:`bg-red-50 dark:bg-red-950`,trend:`+8.3%`},{label:`净流入`,value:(J.value?.totalDeposit||0)-(J.value?.totalWithdraw||0),icon:`lucide:trending-up`,color:`text-emerald-600`,bgColor:`bg-emerald-50 dark:bg-emerald-950`,trend:`+15.2%`}]),Z=c(()=>({tooltip:{trigger:`axis`},legend:{data:[`充值`,`提现`],bottom:0,top:`auto`},grid:{left:`3%`,right:`4%`,bottom:`15%`,top:`5%`,containLabel:!0},xAxis:{type:`category`,data:[`1月`,`2月`,`3月`,`4月`,`5月`,`6月`]},yAxis:{type:`value`,axisLabel:{formatter:`¥{value}K`}},series:[{name:`充值`,type:`line`,smooth:!0,data:[320,302,301,334,390,430],itemStyle:{color:`#10b981`},areaStyle:{color:`rgba(16, 185, 129, 0.1)`}},{name:`提现`,type:`line`,smooth:!0,data:[120,132,101,134,90,230],itemStyle:{color:`#ef4444`},areaStyle:{color:`rgba(239, 68, 68, 0.1)`}}]})),re=c(()=>({tooltip:{trigger:`item`,formatter:`{b}: {d}%`},legend:{orient:`vertical`,right:`5%`,top:`center`},series:[{type:`pie`,radius:[`50%`,`75%`],center:[`35%`,`50%`],avoidLabelOverlap:!1,itemStyle:{borderRadius:8,borderColor:`#fff`,borderWidth:2},label:{show:!0,position:`inside`,formatter:`{d}%`,fontSize:12},data:[{value:J.value?.fundBalance||50,name:`在管资金`,itemStyle:{color:`#3b82f6`}},{value:J.value?.tradeValue||30,name:`交易账户`,itemStyle:{color:`#8b5cf6`}},{value:20,name:`冻结资金`,itemStyle:{color:`#f59e0b`}}]}]})),ie=c(()=>[{label:`用户总数`,value:J.value?.userCount||0,icon:`lucide:users`},{label:`待审批`,value:J.value?.pendingCount||0,icon:`lucide:clock`}]);function Q(e){return e>=1e4?`¥${(e/1e4).toFixed(1)}`:`¥${e.toLocaleString()}`}function $(e){G.push(e)}return(c,d)=>{let g=m,_=ee,G=b;return p(),u(e(y),{title:`数据看板`,description:`核心业务数据一目了然`},{default:l(()=>[e(q)?(p(),o(`div`,te,[n(g,{class:`w-8 h-8`})])):(p(),o(`div`,x,[a(`section`,null,[a(`h2`,S,[n(e(v),{icon:`lucide:wallet`,class:`size-4`}),d[4]||=f(` 资金概览 `,-1)]),a(`div`,C,[(p(!0),o(s,null,i(e(Y),i=>(p(),u(G,{key:i.label,class:`hover:shadow-sm transition-shadow`},{default:l(()=>[n(_,{class:`pt-6`},{default:l(()=>[a(`div`,w,[a(`div`,{class:r([`p-2.5 rounded-lg`,[i.bgColor]])},[n(e(v),{icon:i.icon,class:r([`size-5`,i.color])},null,8,[`icon`,`class`])],2)]),a(`div`,T,[a(`p`,E,t(i.label),1),a(`p`,{class:r([`text-2xl font-bold font-mono`,i.color])},t(Q(i.value)),3)])]),_:2},1024)]),_:2},1024))),128))])]),a(`section`,null,[a(`h2`,D,[n(e(v),{icon:`lucide:git-compare`,class:`size-4`}),d[5]||=f(` 资金流动 `,-1)]),a(`div`,O,[(p(!0),o(s,null,i(e(X),i=>(p(),u(G,{key:i.label,class:`hover:shadow-sm transition-shadow`},{default:l(()=>[n(_,{class:`pt-6`},{default:l(()=>[a(`div`,k,[a(`div`,{class:r([`p-2.5 rounded-lg`,[i.bgColor]])},[n(e(v),{icon:i.icon,class:r([`size-5`,i.color])},null,8,[`icon`,`class`])],2),a(`span`,A,t(i.trend),1)]),a(`div`,j,[a(`p`,M,t(i.label),1),a(`p`,{class:r([`text-2xl font-bold font-mono`,i.color])},t(Q(i.value)),3)])]),_:2},1024)]),_:2},1024))),128))])]),a(`div`,N,[a(`section`,null,[a(`h2`,P,[n(e(v),{icon:`lucide:trending-up`,class:`size-4`}),d[6]||=f(` 资金趋势 `,-1)]),n(G,null,{default:l(()=>[n(_,{class:`pt-6`},{default:l(()=>[n(e(h),{option:e(Z),autoresize:``,style:{height:`260px`}},null,8,[`option`])]),_:1})]),_:1})]),a(`section`,null,[a(`h2`,F,[n(e(v),{icon:`lucide:pie-chart`,class:`size-4`}),d[7]||=f(` 资金分布 `,-1)]),n(G,null,{default:l(()=>[n(_,{class:`pt-6`},{default:l(()=>[n(e(h),{option:e(re),autoresize:``,style:{height:`260px`}},null,8,[`option`])]),_:1})]),_:1})])]),a(`div`,I,[a(`section`,ne,[a(`h2`,L,[n(e(v),{icon:`lucide:activity`,class:`size-4`}),d[8]||=f(` 运营指标 `,-1)]),a(`div`,R,[(p(!0),o(s,null,i(e(ie),r=>(p(),u(G,{key:r.label,class:`hover:shadow-sm transition-shadow`},{default:l(()=>[n(_,{class:`pt-6`},{default:l(()=>[a(`div`,z,[a(`div`,null,[a(`p`,B,t(r.label),1),a(`p`,V,t(r.value),1)]),n(e(v),{icon:r.icon,class:`size-8 text-muted-foreground/30`},null,8,[`icon`])])]),_:2},1024)]),_:2},1024))),128))])]),a(`section`,H,[a(`h2`,U,[n(e(v),{icon:`lucide:zap`,class:`size-4`}),d[9]||=f(` 快捷入口 `,-1)]),a(`div`,W,[n(G,{class:`cursor-pointer hover:shadow-md hover:border-primary/50 transition-all`,onClick:d[0]||=e=>$(`/monisuo/users`)},{default:l(()=>[n(_,{class:`pt-6 text-center`},{default:l(()=>[n(e(v),{icon:`lucide:users`,class:`size-8 mx-auto mb-2 text-blue-600`}),d[10]||=a(`p`,{class:`font-medium`},` 用户管理 `,-1)]),_:1})]),_:1}),n(G,{class:`cursor-pointer hover:shadow-md hover:border-primary/50 transition-all`,onClick:d[1]||=e=>$(`/monisuo/coins`)},{default:l(()=>[n(_,{class:`pt-6 text-center`},{default:l(()=>[n(e(v),{icon:`lucide:coins`,class:`size-8 mx-auto mb-2 text-yellow-600`}),d[11]||=a(`p`,{class:`font-medium`},` 币种管理 `,-1)]),_:1})]),_:1}),n(G,{class:`cursor-pointer hover:shadow-md hover:border-primary/50 transition-all`,onClick:d[2]||=e=>$(`/monisuo/orders`)},{default:l(()=>[n(_,{class:`pt-6 text-center`},{default:l(()=>[n(e(v),{icon:`lucide:clipboard-check`,class:`size-8 mx-auto mb-2 text-green-600`}),d[12]||=a(`p`,{class:`font-medium`},` 订单审批 `,-1)]),_:1})]),_:1}),n(G,{class:`cursor-pointer hover:shadow-md hover:border-primary/50 transition-all`,onClick:d[3]||=e=>$(`/monisuo/analytics`)},{default:l(()=>[n(_,{class:`pt-6 text-center`},{default:l(()=>[n(e(v),{icon:`lucide:trending-up`,class:`size-8 mx-auto mb-2 text-purple-600`}),d[13]||=a(`p`,{class:`font-medium`},` 业务分析 `,-1)]),_:1})]),_:1})])])])]))]),_:1})}}});export{G as default};