邹方成 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
8.1 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var e=Object.defineProperty,l=Object.defineProperties,a=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable,d=(l,a,s)=>a in l?e(l,a,{enumerable:!0,configurable:!0,writable:!0,value:s}):l[a]=s;import{d as t,x as m,c as i,a as p,r as n,o as u,E as b,e as c,f,h as x,m as w,u as j,p as v,F as g,G as _,z as V,J as y,y as h,l as k}from"./index-ip5gDR6L.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as P}from"./index.vue_vue_type_script_setup_true_lang-CCGboj8m.js";import{_ as U}from"./avatar-pR7-E1hl.js";import{E as N}from"./index-Ca1H-sCf.js";import{a as O,E}from"./index-CxGOZAw2.js";import{E as q}from"./index-DfrOVkw6.js";import{E as C,a as D}from"./index-Br3btmwp.js";import{E as I}from"./index-opP5No9I.js";import"./use-form-common-props-BwBs_jod.js";import"./index-D-10FtUD.js";import"./index-CHAf6FpU.js";import"./index-fnD_mPvE.js";import"./use-form-item-BDb3ZgPk.js";import"./_initCloneObject-DwsgJamq.js";import"./index-C9KXwj2c.js";import"./index-DbRz3Zuu.js";import"./index-D1xXI5gl.js";import"./token-DWNpOE8r.js";import"./scroll-ChxXkPhM.js";import"./debounce-B9s63_mG.js";import"./index-Jz5GfFad.js";import"./vnode-6FKeug3R.js";import"./index-D-iZIej9.js";const S={class:"w-full h-full p-0 bg-transparent border-none shadow-none"},z={class:"relative flex-b mt-2.5 max-md:block max-md:mt-1"},F={class:"w-112 mr-5 max-md:w-full max-md:mr-0"},J={class:"art-card-sm relative p-9 pb-6 overflow-hidden text-center"},Y={class:"mt-5 text-xl font-normal"},A={class:"w-75 mx-auto mt-7.5 text-left"},B={class:"mt-2.5"},G={class:"mt-2.5"},H={class:"mt-2.5"},R={class:"mt-2.5"},X={class:"mt-10"},K={class:"flex flex-wrap justify-center mt-3.5"},L={class:"flex-1 overflow-hidden max-md:w-full max-md:mt-3.5"},M={class:"art-card-sm"},Q={class:"flex-c justify-end [&_.el-button]:!w-27.5"},T={class:"art-card-sm my-5"},W={class:"flex-c justify-end [&_.el-button]:!w-27.5"},Z=t(($=((e,l)=>{for(var a in l||(l={}))r.call(l,a)&&d(e,a,l[a]);if(s)for(var a of s(l))o.call(l,a)&&d(e,a,l[a]);return e})({},{name:"UserCenter"}),l($,a({__name:"index",setup(e){const l=m(),a=i(()=>l.getUserInfo),s=p(!1),r=p(!1),o=p(""),d=p(),t=n({realName:"John Snow",nikeName:"皮卡丘",email:"59301283@mall.com",mobile:"18888888888",address:"广东省深圳市宝安区西乡街道101栋201",sex:"2",des:"Art Design Pro 是一款兼具设计美学与高效开发的后台系统."}),Z=n({password:"123456",newPassword:"123456",confirmPassword:"123456"}),$=n({realName:[{required:!0,message:"请输入姓名",trigger:"blur"},{min:2,max:50,message:"长度在 2 到 50 个字符",trigger:"blur"}],nikeName:[{required:!0,message:"请输入昵称",trigger:"blur"},{min:2,max:50,message:"长度在 2 到 50 个字符",trigger:"blur"}],email:[{required:!0,message:"请输入邮箱",trigger:"blur"}],mobile:[{required:!0,message:"请输入手机号码",trigger:"blur"}],address:[{required:!0,message:"请输入地址",trigger:"blur"}],sex:[{required:!0,message:"请选择性别",trigger:"blur"}]}),ee=[{value:"1",label:"男"},{value:"2",label:"女"}],le=["专注设计","很有想法","辣~","大长腿","川妹子","海纳百川"];u(()=>{ae()});const ae=()=>{const e=(new Date).getHours();o.value=e>=6&&e<9?"早上好":e>=9&&e<11?"上午好":e>=11&&e<13?"中午好":e>=13&&e<18?"下午好":e>=18&&e<24?"晚上好":"很晚了,早点睡"},se=()=>{s.value=!s.value},re=()=>{r.value=!r.value};return(e,l)=>{const o=P,m=q,i=O,p=D,n=C,u=N,ae=I,oe=E,de=b("ripple");return f(),c("div",S,[x("div",z,[x("div",F,[x("div",J,[l[15]||(l[15]=x("img",{class:"absolute top-0 left-0 w-full h-50 object-cover",src:"/assets/bg-DrCBEYh-.webp"},null,-1)),l[16]||(l[16]=x("img",{class:"relative z-10 w-20 h-20 mt-30 mx-auto object-cover border-2 border-white rounded-full",src:U},null,-1)),x("h2",Y,w(j(a).userName),1),l[17]||(l[17]=x("p",{class:"mt-5 text-sm"},"专注于用户体验跟视觉设计",-1)),x("div",A,[x("div",B,[v(o,{icon:"ri:mail-line",class:"text-g-700"}),l[10]||(l[10]=x("span",{class:"ml-2 text-sm"},"jdkjjfnndf@mall.com",-1))]),x("div",G,[v(o,{icon:"ri:user-3-line",class:"text-g-700"}),l[11]||(l[11]=x("span",{class:"ml-2 text-sm"},"交互专家",-1))]),x("div",H,[v(o,{icon:"ri:map-pin-line",class:"text-g-700"}),l[12]||(l[12]=x("span",{class:"ml-2 text-sm"},"广东省深圳市",-1))]),x("div",R,[v(o,{icon:"ri:dribbble-fill",class:"text-g-700"}),l[13]||(l[13]=x("span",{class:"ml-2 text-sm"},"字节跳动某某平台部UED",-1))])]),x("div",X,[l[14]||(l[14]=x("h3",{class:"text-sm font-medium"},"标签",-1)),x("div",K,[(f(),c(g,null,_(le,e=>x("div",{key:e,class:"py-1 px-1.5 mr-2.5 mb-2.5 text-xs border border-g-300 rounded"},w(e),1)),64))])])])]),x("div",L,[x("div",M,[l[18]||(l[18]=x("h1",{class:"p-4 text-xl font-normal border-b border-g-300"},"基本设置",-1)),v(oe,{model:j(t),class:"box-border p-5 [&>.el-row_.el-form-item]:w-[calc(50%-10px)] [&>.el-row_.el-input]:w-full [&>.el-row_.el-select]:w-full",ref_key:"ruleFormRef",ref:d,rules:j($),"label-width":"86px","label-position":"top"},{default:V(()=>[v(u,null,{default:V(()=>[v(i,{label:"姓名",prop:"realName"},{default:V(()=>[v(m,{modelValue:j(t).realName,"onUpdate:modelValue":l[0]||(l[0]=e=>j(t).realName=e),disabled:!j(s)},null,8,["modelValue","disabled"])]),_:1}),v(i,{label:"性别",prop:"sex",class:"ml-5"},{default:V(()=>[v(n,{modelValue:j(t).sex,"onUpdate:modelValue":l[1]||(l[1]=e=>j(t).sex=e),placeholder:"Select",disabled:!j(s)},{default:V(()=>[(f(),c(g,null,_(ee,e=>v(p,{key:e.value,label:e.label,value:e.value},null,8,["label","value"])),64))]),_:1},8,["modelValue","disabled"])]),_:1})]),_:1}),v(u,null,{default:V(()=>[v(i,{label:"昵称",prop:"nikeName"},{default:V(()=>[v(m,{modelValue:j(t).nikeName,"onUpdate:modelValue":l[2]||(l[2]=e=>j(t).nikeName=e),disabled:!j(s)},null,8,["modelValue","disabled"])]),_:1}),v(i,{label:"邮箱",prop:"email",class:"ml-5"},{default:V(()=>[v(m,{modelValue:j(t).email,"onUpdate:modelValue":l[3]||(l[3]=e=>j(t).email=e),disabled:!j(s)},null,8,["modelValue","disabled"])]),_:1})]),_:1}),v(u,null,{default:V(()=>[v(i,{label:"手机",prop:"mobile"},{default:V(()=>[v(m,{modelValue:j(t).mobile,"onUpdate:modelValue":l[4]||(l[4]=e=>j(t).mobile=e),disabled:!j(s)},null,8,["modelValue","disabled"])]),_:1}),v(i,{label:"地址",prop:"address",class:"ml-5"},{default:V(()=>[v(m,{modelValue:j(t).address,"onUpdate:modelValue":l[5]||(l[5]=e=>j(t).address=e),disabled:!j(s)},null,8,["modelValue","disabled"])]),_:1})]),_:1}),v(i,{label:"个人介绍",prop:"des",class:"h-32"},{default:V(()=>[v(m,{type:"textarea",rows:4,modelValue:j(t).des,"onUpdate:modelValue":l[6]||(l[6]=e=>j(t).des=e),disabled:!j(s)},null,8,["modelValue","disabled"])]),_:1}),x("div",Q,[y((f(),h(ae,{type:"primary",class:"w-22.5",onClick:se},{default:V(()=>[k(w(j(s)?"保存":"编辑"),1)]),_:1})),[[de]])])]),_:1},8,["model","rules"])]),x("div",T,[l[19]||(l[19]=x("h1",{class:"p-4 text-xl font-normal border-b border-g-300"},"更改密码",-1)),v(oe,{model:j(Z),class:"box-border p-5","label-width":"86px","label-position":"top"},{default:V(()=>[v(i,{label:"当前密码",prop:"password"},{default:V(()=>[v(m,{modelValue:j(Z).password,"onUpdate:modelValue":l[7]||(l[7]=e=>j(Z).password=e),type:"password",disabled:!j(r),"show-password":""},null,8,["modelValue","disabled"])]),_:1}),v(i,{label:"新密码",prop:"newPassword"},{default:V(()=>[v(m,{modelValue:j(Z).newPassword,"onUpdate:modelValue":l[8]||(l[8]=e=>j(Z).newPassword=e),type:"password",disabled:!j(r),"show-password":""},null,8,["modelValue","disabled"])]),_:1}),v(i,{label:"确认新密码",prop:"confirmPassword"},{default:V(()=>[v(m,{modelValue:j(Z).confirmPassword,"onUpdate:modelValue":l[9]||(l[9]=e=>j(Z).confirmPassword=e),type:"password",disabled:!j(r),"show-password":""},null,8,["modelValue","disabled"])]),_:1}),x("div",W,[y((f(),h(ae,{type:"primary",class:"w-22.5",onClick:re},{default:V(()=>[k(w(j(r)?"保存":"编辑"),1)]),_:1})),[[de]])])]),_:1},8,["model"])])])])])}}}))));var $;export{Z as default};