邹方成 00452cba59 feat: 添加用户统计功能及相关API接口
feat(admin): 新增管理后台前端资源文件

feat(api): 实现获取用户统计数据的API接口
- 添加获取用户道具卡数量、优惠券数量和积分余额的接口
- 实现设置默认地址和删除地址的接口

feat(service): 新增用户统计服务方法
- 实现GetUserStats方法查询用户统计数据
- 添加地址管理相关服务方法

fix(core): 修复静态资源路由问题
- 调整静态资源路由配置
- 优化404路由处理逻辑

chore: 更新前端构建配置
- 添加Windows平台构建命令
- 更新README构建说明
2025-11-15 03:08:53 +08:00

2 lines
5.7 KiB
JavaScript

var e=Object.defineProperty,a=Object.defineProperties,l=Object.getOwnPropertyDescriptors,o=Object.getOwnPropertySymbols,s=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable,t=(a,l,o)=>l in a?e(a,l,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[l]=o,i=(e,a)=>{for(var l in a||(a={}))s.call(a,l)&&t(e,l,a[l]);if(o)for(var l of o(a))r.call(a,l)&&t(e,l,a[l]);return e},u=(e,o)=>a(e,l(o));import{aa as d,b2 as n,bt as p,a2 as b,bP as v,a as c,a3 as m,c as f,an as y,_ as g,d as h,X as k,e as V,f as B,h as j,J as S,d7 as x,u as C,aG as R,i as w,I as G,j as O,l as _,m as E,n as I,g as z,ak as F,o as P,a7 as U,r as K,t as N,w as $,F as A,G as L,y as q,Y as D,bH as H,ap as J,aq as X}from"./index-ip5gDR6L.js";import{C as Y,U as M}from"./index-CHAf6FpU.js";import{u as Q,b as T}from"./use-form-common-props-BwBs_jod.js";import{u as W}from"./index-D-iZIej9.js";import{u as Z,d as ee}from"./index-fnD_mPvE.js";import{u as ae,a as le,b as oe}from"./use-form-item-BDb3ZgPk.js";const se=b({modelValue:{type:[String,Number,Boolean],default:void 0},size:v,disabled:Boolean,label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),re=b(u(i({},se),{border:Boolean})),te={[M]:e=>d(e)||n(e)||p(e),[Y]:e=>d(e)||n(e)||p(e)},ie=Symbol("radioGroupKey"),ue=(e,a)=>{const l=c(),o=m(ie,void 0),s=f(()=>!!o),r=f(()=>y(e.value)?e.label:e.value),t=f({get:()=>s.value?o.modelValue:e.modelValue,set(t){s.value?o.changeEvent(t):a&&a(M,t),l.value.checked=e.modelValue===r.value}}),i=Q(f(()=>null==o?void 0:o.size)),u=T(f(()=>null==o?void 0:o.disabled)),d=c(!1),n=f(()=>u.value||s.value&&t.value!==r.value?-1:0);return W({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},f(()=>s.value&&y(e.value))),{radioRef:l,isGroup:s,radioGroup:o,focus:d,size:i,disabled:u,tabIndex:n,modelValue:t,actualValue:r}},de=h({name:"ElRadio"});var ne=g(h(u(i({},de),{props:re,emits:te,setup(e,{emit:a}){const l=e,o=k("radio"),{radioRef:s,radioGroup:r,focus:t,size:i,disabled:u,modelValue:d,actualValue:n}=ue(l,a);function p(){I(()=>a(Y,d.value))}return(e,a)=>{var l;return B(),V("label",{class:w([C(o).b(),C(o).is("disabled",C(u)),C(o).is("focus",C(t)),C(o).is("bordered",e.border),C(o).is("checked",C(d)===C(n)),C(o).m(C(i))])},[j("span",{class:w([C(o).e("input"),C(o).is("disabled",C(u)),C(o).is("checked",C(d)===C(n))])},[S(j("input",{ref_key:"radioRef",ref:s,"onUpdate:modelValue":e=>G(d)?d.value=e:null,class:w(C(o).e("original")),value:C(n),name:e.name||(null==(l=C(r))?void 0:l.name),disabled:C(u),checked:C(d)===C(n),type:"radio",onFocus:e=>t.value=!0,onBlur:e=>t.value=!1,onChange:p,onClick:R(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","checked","onFocus","onBlur","onClick"]),[[x,C(d)]]),j("span",{class:w(C(o).e("inner"))},null,2)],2),j("span",{class:w(C(o).e("label")),onKeydown:R(()=>{},["stop"])},[O(e.$slots,"default",{},()=>[_(E(e.label),1)])],42,["onKeydown"])],2)}}})),[["__file","radio.vue"]]);const pe=b(i({},se)),be=h({name:"ElRadioButton"});var ve=g(h(u(i({},be),{props:pe,setup(e){const a=e,l=k("radio"),{radioRef:o,focus:s,size:r,disabled:t,modelValue:i,radioGroup:u,actualValue:d}=ue(a),n=f(()=>({backgroundColor:(null==u?void 0:u.fill)||"",borderColor:(null==u?void 0:u.fill)||"",boxShadow:(null==u?void 0:u.fill)?`-1px 0 0 0 ${u.fill}`:"",color:(null==u?void 0:u.textColor)||""}));return(e,a)=>{var p;return B(),V("label",{class:w([C(l).b("button"),C(l).is("active",C(i)===C(d)),C(l).is("disabled",C(t)),C(l).is("focus",C(s)),C(l).bm("button",C(r))])},[S(j("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":e=>G(i)?i.value=e:null,class:w(C(l).be("button","original-radio")),value:C(d),type:"radio",name:e.name||(null==(p=C(u))?void 0:p.name),disabled:C(t),onFocus:e=>s.value=!0,onBlur:e=>s.value=!1,onClick:R(()=>{},["stop"])},null,42,["onUpdate:modelValue","value","name","disabled","onFocus","onBlur","onClick"]),[[x,C(i)]]),j("span",{class:w(C(l).be("button","inner")),style:z(C(i)===C(d)?C(n):{}),onKeydown:R(()=>{},["stop"])},[O(e.$slots,"default",{},()=>[_(E(e.label),1)])],46,["onKeydown"])],2)}}})),[["__file","radio-button.vue"]]);const ce=b(i({id:{type:String,default:void 0},size:v,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},options:{type:F(Array)},props:{type:F(Object),default:()=>fe}},Z(["ariaLabel"]))),me=te,fe={label:"label",value:"value",disabled:"disabled"},ye=h({name:"ElRadioGroup"});var ge=g(h(u(i({},ye),{props:ce,emits:me,setup(e,{emit:a}){const l=e,o=k("radio"),s=ae(),r=c(),{formItem:t}=le(),{inputId:d,isLabeledByFormItem:n}=oe(l,{formItemContext:t});P(()=>{const e=r.value.querySelectorAll("[type=radio]"),a=e[0];!Array.from(e).some(e=>e.checked)&&a&&(a.tabIndex=0)});const p=f(()=>l.name||s.value),b=f(()=>i(i({},fe),l.props));return U(ie,K(u(i({},N(l)),{changeEvent:e=>{a(M,e),I(()=>a(Y,e))},name:p}))),$(()=>l.modelValue,(e,a)=>{l.validateEvent&&!H(e,a)&&(null==t||t.validate("change").catch(e=>ee()))}),(e,a)=>(B(),V("div",{id:C(d),ref_key:"radioGroupRef",ref:r,class:w(C(o).b("group")),role:"radiogroup","aria-label":C(n)?void 0:e.ariaLabel||"radio-group","aria-labelledby":C(n)?C(t).labelId:void 0},[O(e.$slots,"default",{},()=>[(B(!0),V(A,null,L(l.options,(e,a)=>(B(),q(ne,D({key:a},(e=>{const a={label:e[b.value.label],value:e[b.value.value],disabled:e[b.value.disabled]};return i(i({},e),a)})(e)),null,16))),128))])],10,["id","aria-label","aria-labelledby"]))}})),[["__file","radio-group.vue"]]);const he=J(ne,{RadioButton:ve,RadioGroup:ge}),ke=X(ge),Ve=X(ve);export{Ve as E,ke as a,he as b};