feat(admin): 新增管理后台前端资源文件 feat(api): 实现获取用户统计数据的API接口 - 添加获取用户道具卡数量、优惠券数量和积分余额的接口 - 实现设置默认地址和删除地址的接口 feat(service): 新增用户统计服务方法 - 实现GetUserStats方法查询用户统计数据 - 添加地址管理相关服务方法 fix(core): 修复静态资源路由问题 - 调整静态资源路由配置 - 优化404路由处理逻辑 chore: 更新前端构建配置 - 添加Windows平台构建命令 - 更新README构建说明
2 lines
10 KiB
JavaScript
2 lines
10 KiB
JavaScript
var e=Object.defineProperty,r=Object.defineProperties,t=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable,i=(r,t,s)=>t in r?e(r,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):r[t]=s,n=(e,r)=>{for(var t in r||(r={}))o.call(r,t)&&i(e,t,r[t]);if(s)for(var t of s(r))a.call(r,t)&&i(e,t,r[t]);return e},l=(e,s)=>r(e,t(s)),p=(e,r,t)=>new Promise((s,o)=>{var a=e=>{try{n(t.next(e))}catch(r){o(r)}},i=e=>{try{n(t.throw(e))}catch(r){o(r)}},n=e=>e.done?s(e.value):Promise.resolve(e.value).then(a,i);n((t=t.apply(e,r)).next())});import{b2 as u,a2 as c,ak as m,am as d,_ as v,d as j,bI as f,X as g,bW as y,c as x,bV as h,a as b,aZ as _,af as w,w as k,o as S,e as P,f as C,j as O,k as E,h as z,m as I,u as T,i as $,F as L,Y as B,y as N,c6 as A,z as D,bR as R,c5 as F,n as V,ck as G,aa as U,dA as M,dB as X,dC as Z,ap as J,E as Y,p as q,I as H,J as K,l as Q,a9 as W,dD as ee,O as re}from"./index-ip5gDR6L.js";/* empty css */import{_ as te}from"./index-C4WacTPc.js";import{_ as se}from"./index-BVNligJO.js";/* empty css *//* empty css */import{_ as oe}from"./index.vue_vue_type_script_setup_true_lang-CK7Y-5lS.js";import{_ as ae,A as ie}from"./user-dialog.vue_vue_type_script_setup_true_lang-DrlMpwgS.js";import{u as ne}from"./useTable-BFClY0KQ.js";import{_ as le}from"./user-search.vue_vue_type_script_setup_true_lang-DQn1KPU8.js";/* empty css */import{E as pe}from"./message-box-DnMmMCB0.js";/* empty css *//* empty css *//* empty css */import{E as ue}from"./index-BY5Lb5w1.js";import{E as ce}from"./index-opP5No9I.js";import{E as me}from"./index-BBSYL4g8.js";import{E as de}from"./index-ChjUsiLf.js";import{u as ve}from"./index-DfrOVkw6.js";import{a as je}from"./scroll-ChxXkPhM.js";import{E as fe}from"./index-D1xXI5gl.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";import"./index-DbRz3Zuu.js";import"./index-fnD_mPvE.js";import"./index-C9KXwj2c.js";import"./index-CHAf6FpU.js";import"./use-form-item-BDb3ZgPk.js";import"./use-form-common-props-BwBs_jod.js";import"./_initCloneObject-DwsgJamq.js";import"./isArrayLikeObject-OMLaZ5Za.js";import"./index-Br3btmwp.js";import"./token-DWNpOE8r.js";import"./index-D-10FtUD.js";import"./debounce-B9s63_mG.js";import"./index-Jz5GfFad.js";import"./vnode-6FKeug3R.js";import"./index-KXWZe8V3.js";import"./index-D-iZIej9.js";import"./_plugin-vue_export-helper-BCo6x5W8.js";import"./el-popover-Do33geGb.js";import"./el-dropdown-item-DEgPCg9g.js";import"./refs-Cw5r5QN8.js";import"./index.vue_vue_type_script_setup_true_lang-CCGboj8m.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./avatar6-6Evj8BB9.js";import"./avatar10-Dom60BwY.js";import"./index-CxGOZAw2.js";import"./index-BpP4itD-.js";import"./index-D17cYxP7.js";import"./use-dialog-Cj8YneNA.js";import"./index-D6zsJoyl.js";import"./useTableColumns-C9X2IKmh.js";import"./index-C4Je2wdo.js";/* empty css *//* empty css *//* empty css */import"./tree-select-CzJzgJx_.js";import"./index-B1PFnxt8.js";import"./cloneDeep-D8SNDfdC.js";import"./index-BMPM6CSe.js";import"./index-BbcTNOqF.js";import"./index-HtXsSizM.js";import"./index-D8-uSzHS.js";import"./index-DPYIWjrn.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./index-Ca1H-sCf.js";import"./index-D5xppMej.js";import"./index-B1Z255S_.js";import"./validator-eDtn0zQf.js";const ge=c({hideOnClickModal:Boolean,src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:Boolean,scrollContainer:{type:m([String,Object])},previewSrcList:{type:m(Array),default:()=>d([])},previewTeleported:Boolean,zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},scale:{type:Number,default:1},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:m(String)}}),ye={load:e=>e instanceof Event,error:e=>e instanceof Event,switch:e=>u(e),close:()=>!0,show:()=>!0},xe=j({name:"ElImage",inheritAttrs:!1});const he=J(v(j(l(n({},xe),{props:ge,emits:ye,setup(e,{expose:r,emit:t}){const s=e,{t:o}=f(),a=g("image"),i=y(),n=x(()=>h(Object.entries(i).filter(([e])=>/^(data-|on[A-Z])/i.test(e)||["id","style"].includes(e)))),l=ve({excludeListeners:!0,excludeKeys:x(()=>Object.keys(n.value))}),u=b(),c=b(!1),m=b(!0),d=b(!1),v=b(),j=b(),J=_&&"loading"in HTMLImageElement.prototype;let Y;const q=x(()=>[a.e("inner"),K.value&&a.e("preview"),m.value&&a.is("loading")]),H=x(()=>{const{fit:e}=s;return _&&e?{objectFit:e}:{}}),K=x(()=>{const{previewSrcList:e}=s;return w(e)&&e.length>0}),Q=x(()=>{const{previewSrcList:e,initialIndex:r}=s;let t=r;return r>e.length-1&&(t=0),t}),W=x(()=>"eager"!==s.loading&&(!J&&"lazy"===s.loading||s.lazy)),ee=()=>{_&&(m.value=!0,c.value=!1,u.value=s.src)};function re(e){m.value=!1,c.value=!1,t("load",e)}function te(e){m.value=!1,c.value=!0,t("error",e)}const se=Z(function(e){e&&(ee(),ae())},200,!0);function oe(){return p(this,null,function*(){var e;if(!_)return;yield V();const{scrollContainer:r}=s;if(G(r))j.value=r;else if(U(r)&&""!==r)j.value=null!=(e=document.querySelector(r))?e:void 0;else if(v.value){const e=je(v.value);j.value=M(e)?void 0:e}const{stop:t}=X(v,([e])=>{se(e.isIntersecting)},{root:j});Y=t})}function ae(){_&&se&&(null==Y||Y(),j.value=void 0,Y=void 0)}function ie(){K.value&&(d.value=!0,t("show"))}function ne(){d.value=!1,t("close")}function le(e){t("switch",e)}return k(()=>s.src,()=>{W.value?(m.value=!0,c.value=!1,ae(),oe()):ee()}),S(()=>{W.value?oe():ee()}),r({showPreview:ie}),(e,r)=>(C(),P("div",B({ref_key:"container",ref:v},T(n),{class:[T(a).b(),e.$attrs.class]}),[c.value?O(e.$slots,"error",{key:0},()=>[z("div",{class:$(T(a).e("error"))},I(T(o)("el.image.error")),3)]):(C(),P(L,{key:1},[void 0!==u.value?(C(),P("img",B({key:0},T(l),{src:u.value,loading:e.loading,style:T(H),class:T(q),crossorigin:e.crossorigin,onClick:ie,onLoad:re,onError:te}),null,16,["src","loading","crossorigin"])):E("v-if",!0),m.value?(C(),P("div",{key:1,class:$(T(a).e("wrapper"))},[O(e.$slots,"placeholder",{},()=>[z("div",{class:$(T(a).e("placeholder"))},null,2)])],2)):E("v-if",!0)],64)),T(K)?(C(),P(L,{key:2},[d.value?(C(),N(T(de),{key:0,"z-index":e.zIndex,"initial-index":T(Q),infinite:e.infinite,"zoom-rate":e.zoomRate,"min-scale":e.minScale,"max-scale":e.maxScale,"show-progress":e.showProgress,"url-list":e.previewSrcList,scale:e.scale,crossorigin:e.crossorigin,"hide-on-click-modal":e.hideOnClickModal,teleported:e.previewTeleported,"close-on-press-escape":e.closeOnPressEscape,onClose:ne,onSwitch:le},A({toolbar:D(r=>[O(e.$slots,"toolbar",R(F(r)))]),default:D(()=>[e.$slots.viewer?(C(),P("div",{key:0},[O(e.$slots,"viewer")])):E("v-if",!0)]),_:2},[e.$slots.progress?{name:"progress",fn:D(r=>[O(e.$slots,"progress",R(F(r)))])}:void 0,e.$slots["viewer-error"]?{name:"viewer-error",fn:D(r=>[O(e.$slots,"viewer-error",R(F(r)))])}:void 0]),1032,["z-index","initial-index","infinite","zoom-rate","min-scale","max-scale","show-progress","url-list","scale","crossorigin","hide-on-click-modal","teleported","close-on-press-escape"])):E("v-if",!0)],64)):E("v-if",!0)],16))}})),[["__file","image.vue"]])),be={class:"user-page art-full-height"},_e=j(l(n({},{name:"User"}),{__name:"index",setup(e){const r=b("add"),t=b(!1),s=b({}),o=b([]),a=b({userName:void 0,userGender:void 0,userPhone:void 0,userEmail:void 0,status:"1"}),i={1:{type:"success",text:"在线"},2:{type:"info",text:"离线"},3:{type:"warning",text:"异常"},4:{type:"danger",text:"注销"}},{columns:u,columnChecks:c,data:m,loading:d,pagination:v,getDataDebounced:j,searchParams:f,resetSearchParams:g,handleSizeChange:y,handleCurrentChange:x,refreshData:h}=ne({core:{apiFn:ee,apiParams:{current:1,size:20},columnsFactory:()=>[{type:"selection"},{type:"index",width:60,label:"序号"},{prop:"userInfo",label:"用户名",width:280,formatter:e=>W("div",{class:"user flex-c"},[W(he,{class:"size-9.5 rounded-md",src:e.avatar,previewSrcList:[e.avatar],previewTeleported:!0}),W("div",{class:"ml-2"},[W("p",{class:"user-name"},e.userName),W("p",{class:"email"},e.userEmail)])])},{prop:"userGender",label:"性别",sortable:!0,formatter:e=>e.userGender},{prop:"userPhone",label:"手机号"},{prop:"status",label:"状态",formatter:e=>{const r=(t=e.status,i[t]||{type:"info",text:"未知"});var t;return W(fe,{type:r.type},()=>r.text)}},{prop:"createTime",label:"创建日期",sortable:!0},{prop:"operation",label:"操作",width:120,fixed:"right",formatter:e=>W("div",[W(oe,{type:"edit",onClick:()=>w("edit",e)}),W(oe,{type:"delete",onClick:()=>k(e)})])}]},transform:{dataTransformer:e=>Array.isArray(e)?e.map((e,r)=>l(n({},e),{avatar:ie[r%ie.length].avatar})):[]}}),_=e=>{const r=n({},f);Object.assign(r,e),j(r)},w=(e,o)=>{r.value=e,s.value=o||{},V(()=>{t.value=!0})},k=e=>{pe.confirm("确定要注销该用户吗?","注销用户",{confirmButtonText:"确定",cancelButtonText:"取消",type:"error"}).then(()=>{re.success("注销成功")})},S=()=>p(this,null,function*(){try{t.value=!1,s.value={}}catch(e){}}),O=e=>{o.value=e};return(e,o)=>{const i=ce,n=ue,l=se,p=te,j=me,f=Y("ripple");return C(),P("div",be,[q(le,{modelValue:T(a),"onUpdate:modelValue":o[0]||(o[0]=e=>H(a)?a.value=e:null),onSearch:_,onReset:T(g)},null,8,["modelValue","onReset"]),q(j,{class:"art-table-card",shadow:"never"},{default:D(()=>[q(l,{columns:T(c),"onUpdate:columns":o[2]||(o[2]=e=>H(c)?c.value=e:null),loading:T(d),onRefresh:T(h)},{left:D(()=>[q(n,{wrap:""},{default:D(()=>[K((C(),N(i,{onClick:o[1]||(o[1]=e=>w("add"))},{default:D(()=>[...o[4]||(o[4]=[Q("新增用户",-1)])]),_:1})),[[f]])]),_:1})]),_:1},8,["columns","loading","onRefresh"]),q(p,{loading:T(d),data:T(m),columns:T(u),pagination:T(v),onSelectionChange:O,"onPagination:sizeChange":T(y),"onPagination:currentChange":T(x)},null,8,["loading","data","columns","pagination","onPagination:sizeChange","onPagination:currentChange"]),q(ae,{visible:T(t),"onUpdate:visible":o[3]||(o[3]=e=>H(t)?t.value=e:null),type:T(r),"user-data":T(s),onSubmit:S},null,8,["visible","type","user-data"])]),_:1})])}}}));export{_e as default};
|