feat(admin): 新增管理后台前端资源文件 feat(api): 实现获取用户统计数据的API接口 - 添加获取用户道具卡数量、优惠券数量和积分余额的接口 - 实现设置默认地址和删除地址的接口 feat(service): 新增用户统计服务方法 - 实现GetUserStats方法查询用户统计数据 - 添加地址管理相关服务方法 fix(core): 修复静态资源路由问题 - 调整静态资源路由配置 - 优化404路由处理逻辑 chore: 更新前端构建配置 - 添加Windows平台构建命令 - 更新README构建说明
2 lines
7.0 KiB
JavaScript
2 lines
7.0 KiB
JavaScript
var e=Object.defineProperty,t=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable,i=(t,o,r)=>o in t?e(t,o,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[o]=r,l=(e,l)=>{for(var s in l||(l={}))o.call(l,s)&&i(e,s,l[s]);if(t)for(var s of t(l))r.call(l,s)&&i(e,s,l[s]);return e},s=(e,t,o)=>new Promise((r,i)=>{var l=e=>{try{a(o.next(e))}catch(t){i(t)}},s=e=>{try{a(o.throw(e))}catch(t){i(t)}},a=e=>e.done?r(e.value):Promise.resolve(e.value).then(l,s);a((o=o.apply(e,t)).next())});import{_ as a}from"./index-C4WacTPc.js";import{d as p,a as n,r as m,o as d,e as u,f as c,p as j,z as v,l as _,ab as y,u as f,b9 as b,m as x,O as g}from"./index-ip5gDR6L.js";/* empty css *//* empty css */import{_ as h}from"./index-C4Je2wdo.js";/* empty css */import{E as w}from"./message-box-DnMmMCB0.js";/* empty css *//* empty css *//* empty css */import{i as k}from"./itemCards-C_dE3q5e.js";import S from"./item-card-dialog-DZ9NFB0E.js";import{_ as C}from"./index.vue_vue_type_script_setup_true_lang-CK7Y-5lS.js";import{_ as O}from"./index-BVNligJO.js";import{E as z}from"./index-opP5No9I.js";import{E as P}from"./index-D1xXI5gl.js";import{_ as E}from"./_plugin-vue_export-helper-BCo6x5W8.js";/* 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"./scroll-ChxXkPhM.js";import"./debounce-B9s63_mG.js";import"./index-Jz5GfFad.js";import"./vnode-6FKeug3R.js";import"./index-KXWZe8V3.js";import"./index-D-iZIej9.js";import"./index-DfrOVkw6.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./tree-select-CzJzgJx_.js";import"./index-B1PFnxt8.js";import"./cloneDeep-D8SNDfdC.js";import"./index-CxGOZAw2.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 *//* 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";import"./index-D17cYxP7.js";import"./index-D6zsJoyl.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index-BpP4itD-.js";import"./use-dialog-Cj8YneNA.js";import"./refs-Cw5r5QN8.js";import"./index.vue_vue_type_script_setup_true_lang-CCGboj8m.js";import"./el-popover-Do33geGb.js";import"./el-dropdown-item-DEgPCg9g.js";const V={class:"page-container"},D={key:0},I={key:1},L={key:2},A=E(p({__name:"index",setup(e){const t=e=>{if(!e)return"";try{return new Date(e).toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}catch(t){return e}},o=n(!1),r=n([]),i=m({current:1,size:10,total:0}),p=m({name:"",status:void 0}),E=n(!1),A=n("create"),N=n(null),R=[{key:"name",label:"名称",type:"input",props:{placeholder:"请输入道具卡名称",clearable:!0}},{key:"status",label:"状态",type:"select",props:{placeholder:"请选择状态",clearable:!0,options:[{label:"启用",value:1},{label:"禁用",value:2}]}}],U=[{prop:"id",label:"ID",width:80},{prop:"name",label:"名称",minWidth:150},{prop:"status",label:"状态",width:80,slot:"status",useSlot:!0},{prop:"card_type",label:"类型",width:100,slot:"card_type",useSlot:!0},{prop:"scope_type",label:"范围",width:100,slot:"scope_type",useSlot:!0},{prop:"effect_type",label:"效果",width:100,slot:"effect_type",useSlot:!0},{prop:"price",label:"价格",width:100},{prop:"valid_time",label:"有效期",minWidth:200,slot:"valid_time",useSlot:!0},{prop:"created_at",label:"创建时间",width:160},{prop:"actions",label:"操作",width:150,fixed:"right",slot:"actions",useSlot:!0}],$={0:"未知",1:"抽奖卡",2:"加成卡",3:"保底卡"},F={0:"未知",1:"全局",2:"活动分类",3:"活动",4:"期次"},G={0:"未知",1:"概率提升",2:"奖励翻倍",3:"保底机制"},J=()=>s(this,null,function*(){o.value=!0;try{const e=l({page:i.current,page_size:i.size},p),t=yield k.getList(e);if(t&&t.list&&Array.isArray(t.list)){if(t.list.length>0){t.list[0]}r.value=t.list,i.total=t.total}else r.value=[],i.total=0}catch(e){g.error("获取道具卡列表失败"),r.value=[],i.total=0}finally{o.value=!1}}),W=()=>{i.current=1,J()},X=()=>{p.name="",p.status=void 0,W()},Y=e=>{i.current=e,J()},Z=e=>{i.size=e,J()},q=()=>{N.value=null,A.value="create",E.value=!0},H=e=>s(this,null,function*(){try{yield w.confirm(`确定要删除道具卡 "${e.name}" 吗?`,"提示",{type:"warning"});yield k.delete(e.id);g.success("删除成功"),J()}catch(t){"cancel"!==t&&g.error("删除失败")}}),K=()=>{E.value=!1,J()};return d(()=>{J()}),(e,s)=>{const n=h,m=y,d=z,g=P,w=a;return c(),u("div",V,[j(n,{items:R,modelValue:p,onSearch:W,onReset:X},null,8,["modelValue"]),j(O,{columns:U,"onUpdate:columns":s[0]||(s[0]=e=>U=e),loading:o.value,onRefresh:J},{left:v(()=>[j(d,{type:"primary",onClick:q},{default:v(()=>[j(m,null,{default:v(()=>[j(f(b))]),_:1}),s[2]||(s[2]=_(" 新增道具卡 ",-1))]),_:1})]),_:1},8,["loading"]),j(w,{loading:o.value,columns:U,data:r.value,pagination:i,onPageChange:Y,onSizeChange:Z,"empty-text":"暂无数据"},{actions:v(({row:e})=>[j(C,{type:"edit",onClick:t=>(e=>{N.value=l({},e),A.value="edit",E.value=!0})(e)},null,8,["onClick"]),j(C,{type:"delete",onClick:t=>H(e)},null,8,["onClick"])]),status:v(({row:e})=>[j(g,{type:1===e.status?"success":"danger"},{default:v(()=>[_(x(1===e.status?"启用":2===e.status?"禁用":"未知"),1)]),_:2},1032,["type"])]),card_type:v(({row:e})=>[j(g,null,{default:v(()=>{return[_(x((t=e.card_type||0,$[t]||"未知")),1)];var t}),_:2},1024)]),scope_type:v(({row:e})=>[j(g,null,{default:v(()=>{return[_(x((t=e.scope_type||0,F[t]||"未知")),1)];var t}),_:2},1024)]),effect_type:v(({row:e})=>[j(g,null,{default:v(()=>{return[_(x((t=e.effect_type||0,G[t]||"未知")),1)];var t}),_:2},1024)]),valid_time:v(({row:e})=>[e.valid_start&&e.valid_end?(c(),u("div",D,x(t(e.valid_start))+" ~ "+x(t(e.valid_end)),1)):e.valid_start?(c(),u("div",I,x(t(e.valid_start))+" 起 ",1)):(c(),u("div",L,"永久有效"))]),_:1},8,["loading","data","pagination"]),j(S,{modelValue:E.value,"onUpdate:modelValue":s[1]||(s[1]=e=>E.value=e),data:N.value,mode:A.value,onSuccess:K},null,8,["modelValue","data","mode"])])}}}),[["__scopeId","data-v-8e7b245c"]]);export{A as default};
|