game/nginx/admin/assets/user-economics-DXWKpriU.js
2026-04-20 16:07:22 +08:00

2 lines
5.2 KiB
JavaScript

import{d as e,r as a,o as t,b as r,e as s,f as l,N as d,X as o,g as c,b2 as i,q as n,v as u,T as x}from"./index-BoIUJTA2.js";/* empty css */import{g as v}from"./operations-Cr4YfoRu.js";import{_ as b}from"./index.vue_vue_type_script_setup_true_lang-DUbflfBQ.js";import{E as p}from"./index-ClDjAOOe.js";import{_ as m}from"./_plugin-vue_export-helper-BCo6x5W8.js";import"./iconify-DFoKediz.js";const g={class:"art-card p-6 overflow-hidden relative group"},h={class:"relative z-10"},f={class:"art-card-header mb-8"},w={class:"title"},k={class:"flex-c mb-1"},y={class:"grid grid-cols-2 lg:grid-cols-4 gap-6"},_={class:"metric-item p-4 rounded-3xl bg-white/40 dark:bg-black/20 border border-white/60 dark:border-white/5 backdrop-blur-md hover:translate-y-[-4px] transition-all duration-300 shadow-sm hover:shadow-md"},T={class:"flex-cb mb-3"},j={class:"w-10 h-10 rounded-xl bg-blue-500/10 flex-cc text-blue-500"},F={class:"text-2xl font-black font-mono"},C={class:"metric-item p-4 rounded-3xl bg-white/40 dark:bg-black/20 border border-white/60 dark:border-white/5 backdrop-blur-md hover:translate-y-[-4px] transition-all duration-300 shadow-sm hover:shadow-md"},P={class:"flex-cb mb-3"},A={class:"w-10 h-10 rounded-xl bg-purple-500/10 flex-cc text-purple-500"},q={class:"text-2xl font-black font-mono"},z={class:"metric-item p-4 rounded-3xl bg-white/40 dark:bg-black/20 border border-white/60 dark:border-white/5 backdrop-blur-md hover:translate-y-[-4px] transition-all duration-300 shadow-sm hover:shadow-md"},D={class:"flex-cc flex-col py-2"},E={class:"text-3xl font-black text-primary italic"},I={class:"mt-2 w-full px-4"},K={class:"metric-item p-4 rounded-3xl bg-white/40 dark:bg-black/20 border border-white/60 dark:border-white/5 backdrop-blur-md hover:translate-y-[-4px] transition-all duration-300 shadow-sm hover:shadow-md"},L={class:"flex-cb mb-3"},M={class:"w-10 h-10 rounded-xl bg-orange-500/10 flex-cc text-orange-500"},N={class:"text-2xl font-black font-mono"},R=m(e({__name:"user-economics",setup(e){const m=a(!1),R=a({arpu:0,cac:0,clv:0,kFactor:0,arpuTrend:0,cacTrend:0});return t(()=>{return e=this,a=null,t=function*(){m.value=!0;try{R.value=yield v("30d")}catch(e){x.error("获取经济指标失败")}finally{m.value=!1}},new Promise((r,s)=>{var l=e=>{try{o(t.next(e))}catch(a){s(a)}},d=e=>{try{o(t.throw(e))}catch(a){s(a)}},o=e=>e.done?r(e.value):Promise.resolve(e.value).then(l,d);o((t=t.apply(e,a)).next())});var e,a,t}),(e,a)=>{var t,x,v;const U=p,V=i;return s(),r("div",g,[a[8]||(a[8]=l("div",{class:"absolute -top-24 -right-24 w-64 h-64 bg-primary/10 rounded-full blur-3xl group-hover:bg-primary/20 transition-all duration-700"},null,-1)),a[9]||(a[9]=l("div",{class:"absolute -bottom-24 -left-24 w-64 h-64 bg-success/10 rounded-full blur-3xl group-hover:bg-success/20 transition-all duration-700"},null,-1)),l("div",h,[l("div",f,[l("div",w,[l("div",k,[c(b,{icon:"ri:user-star-fill",class:"text-primary mr-2 text-xl"}),a[0]||(a[0]=l("h4",{class:"text-xl font-bold bg-clip-text text-transparent bg-gradient-to-r from-g-900 to-g-600"}," 用户经济分析 ",-1))]),a[1]||(a[1]=l("p",{class:"text-g-500"},"评估获客效率与用户长期价值贡献",-1))])]),d((s(),r("div",y,[l("div",_,[l("div",T,[l("div",j,[c(b,{icon:"ri:money-cny-circle-line",class:"text-xl"})]),l("div",{class:n(["text-xs font-bold px-2 py-0.5 rounded-full",R.value.arpuTrend>=0?"bg-success/10 text-success":"bg-danger/10 text-danger"])},u(R.value.arpuTrend>=0?"+":"")+u(R.value.arpuTrend)+"% ",3)]),a[2]||(a[2]=l("div",{class:"text-g-500 text-xs mb-1"},"人均价值 (ARPU)",-1)),l("div",F,"¥"+u(null==(t=R.value.arpu)?void 0:t.toFixed(2)),1)]),l("div",C,[l("div",P,[l("div",A,[c(b,{icon:"ri:user-add-line",class:"text-xl"})]),l("div",{class:n(["text-xs font-bold px-2 py-0.5 rounded-full",R.value.cacTrend<=0?"bg-success/10 text-success":"bg-danger/10 text-danger"])},u(R.value.cacTrend>=0?"+":"")+u(R.value.cacTrend)+"% ",3)]),a[3]||(a[3]=l("div",{class:"text-g-500 text-xs mb-1"},"获客成本参考 (CAC)",-1)),l("div",q,"¥"+u(null==(x=R.value.cac)?void 0:x.toFixed(2)),1)]),l("div",z,[l("div",D,[a[4]||(a[4]=l("div",{class:"text-g-500 text-xs mb-1"},"生命周期价值 (CLV)",-1)),l("div",E,u((R.value.clv/(R.value.cac||1)).toFixed(1))+"x ",1),l("div",I,[c(U,{percentage:Math.min(R.value.clv/(5*R.value.cac||1)*100,100),"show-text":!1,"stroke-width":4,"stroke-linecap":"round",color:"var(--art-primary)"},null,8,["percentage"])])])]),l("div",K,[l("div",L,[l("div",M,[c(b,{icon:"ri:share-forward-line",class:"text-xl"})]),a[5]||(a[5]=l("div",{class:"text-[10px] text-g-400 font-bold uppercase tracking-wider"},"核心裂变指标",-1))]),a[6]||(a[6]=l("div",{class:"text-g-500 text-xs mb-1"},"裂变强度 (K-Factor)",-1)),l("div",N,u(null==(v=R.value.kFactor)?void 0:v.toFixed(2)),1)])])),[[V,m.value]]),a[7]||(a[7]=o('<div class="mt-8 flex items-center space-x-6 text-[10px] text-g-400 font-medium" data-v-200451a5><div class="flex items-center" data-v-200451a5><span class="w-1.5 h-1.5 rounded-full bg-success mr-2 animate-pulse" data-v-200451a5></span> 实时健康度: 极佳 </div><div class="flex items-center" data-v-200451a5><span class="w-1.5 h-1.5 rounded-full bg-blue-500 mr-2" data-v-200451a5></span> 数据更新周期: 1h </div></div>',1))])])}}}),[["__scopeId","data-v-200451a5"]]);export{R as default};