game/nginx/admin/assets/card-list-NIswF7Y2.js
2026-04-20 16:07:22 +08:00

2 lines
4.3 KiB
JavaScript

import{d as e,k as s,A as a,h as t,e as l,w as o,b as r,I as n,J as i,f as c,i as u,m as d,v as m,g as x,q as g,j as p,T as f}from"./index-BoIUJTA2.js";/* empty css *//* empty css */import{_ as b}from"./index.vue_vue_type_script_setup_true_lang-DUbflfBQ.js";import{_ as v}from"./index.vue_vue_type_script_setup_true_lang-Dk4553Z8.js";import{b as h}from"./dashboard-Csmn9wla.js";import{E as y}from"./index-C_sVHlWz.js";import{E as _}from"./index-CXD7B41Z.js";import{_ as k}from"./_plugin-vue_export-helper-BCo6x5W8.js";import"./iconify-DFoKediz.js";const w={class:"premium-card relative flex flex-col justify-center h-35 px-6 mb-5 max-sm:mb-4 overflow-hidden group rounded-[32px] border border-g-100 bg-white"},j={class:"text-g-700 text-sm font-bold z-10"},C={key:0,class:"flex items-baseline mt-2 z-10"},z={key:0,class:"ml-1.5 text-sm font-black text-g-600"},D={key:1,class:"grid grid-cols-2 gap-x-2 gap-y-1 mt-2 z-10 text-[10px] sm:text-[11px]"},P={class:"text-g-500 font-bold mr-1"},$={class:"font-black text-g-900 font-mono text-xs"},A={class:"flex-c mt-2 z-10"},I=k(e({__name:"card-list",props:{range:{},startDate:{},endDate:{}},setup(e){const k=e,I=s([{des:"道具卡销量",icon:"ri:ticket-2-line",color:"#3b82f6",num:0,change:"+0%",suffix:"张"},{des:"活动抽奖次数",icon:"ri:game-line",color:"#8b5cf6",num:0,change:"+0%",suffix:"次"},{des:"新注册用户",icon:"ri:user-add-line",color:"#f59e0b",num:0,change:"+0%",suffix:"人"},{des:"平台有效资产",icon:"ri:safe-2-line",color:"#10b981",num:0,change:"+0%",isAssets:!0,assets:[{label:"积分",value:0},{label:"优惠券",value:0},{label:"券价值",value:0,isMoney:!0},{label:"盒柜",value:0},{label:"道具卡",value:0},{label:"次卡",value:0},{label:"卡价值",value:0,isMoney:!0}]}]);return a(()=>[k.range,k.startDate,k.endDate],()=>{return e=this,s=null,a=function*(){try{const e=yield h(k.range,k.startDate,k.endDate);I[0].num=e.itemCardSales,I[0].change=e.itemCardChange,I[1].num=e.drawCount,I[1].change=e.drawChange,I[2].num=e.newUsers,I[2].change=e.newUserChange,I[3].change=e.pointsChange,I[3].assets&&(I[3].assets[0].value=e.totalPoints,I[3].assets[1].value=e.totalCoupons,I[3].assets[2].value=e.totalCouponValue/100,I[3].assets[3].value=e.totalInventory,I[3].assets[4].value=e.totalItemCards,I[3].assets[5].value=e.totalGamePasses,I[3].assets[6].value=e.totalGamePassValue/100)}catch(e){f.error("获取统计指标失败")}},new Promise((t,l)=>{var o=e=>{try{n(a.next(e))}catch(s){l(s)}},r=e=>{try{n(a.throw(e))}catch(s){l(s)}},n=e=>e.done?t(e.value):Promise.resolve(e.value).then(o,r);n((a=a.apply(e,s)).next())});var e,s,a},{immediate:!0}),(e,s)=>{const a=v,f=b,h=_,k=y;return l(),t(k,{gutter:20,class:"flex"},{default:o(()=>[(l(!0),r(n,null,i(I,(e,b)=>(l(),t(h,{key:b,sm:12,md:6,lg:6},{default:o(()=>[c("div",w,[c("div",{class:"absolute -right-4 -top-4 size-24 rounded-full blur-2xl group-hover:opacity-80 transition-all duration-500",style:d({backgroundColor:`${e.color}15`})},null,4),c("span",j,m(e.des),1),e.isAssets?(l(),r("div",D,[(l(!0),r(n,null,i(e.assets,e=>(l(),r("div",{key:e.label,class:"flex items-center"},[c("span",P,m(e.label)+":",1),c("span",$,m(e.isMoney?`¥${e.value.toLocaleString()}`:e.value.toLocaleString()),1)]))),128))])):(l(),r("div",C,[x(a,{class:"text-3xl font-black text-g-900 tracking-tighter",target:e.num,duration:1300},null,8,["target"]),e.suffix?(l(),r("span",z,m(e.suffix),1)):u("",!0)])),c("div",A,[c("div",{class:g(["flex-c px-2 py-0.5 rounded-full text-xs font-black shadow-sm",[-1===e.change.indexOf("-")?"bg-success/15 text-success":"bg-danger/15 text-danger"]])},[c("i",{class:g([[-1===e.change.indexOf("-")?"ri-arrow-right-up-line":"ri-arrow-right-down-line"],"mr-0.5"])},null,2),p(" "+m(e.change.replace("+","").replace("-","")),1)],2),s[0]||(s[0]=c("span",{class:"ml-2 text-xs text-g-500 font-bold"},"较上周期",-1))]),e.isAssets?u("",!0):(l(),r("div",{key:2,class:"absolute top-0 bottom-0 right-6 m-auto size-14 rounded-2xl flex-cc border group-hover:scale-110 transition-transform duration-500",style:d({backgroundColor:`${e.color}10`,borderColor:`${e.color}20`,boxShadow:`0 8px 16px -4px ${e.color}20`})},[x(f,{icon:e.icon,class:"text-2xl",style:d({color:e.color})},null,8,["icon","style"])],4))])]),_:2},1024))),128))]),_:1})}}}),[["__scopeId","data-v-b2e6d7e1"]]);export{I as default};