import{_ as pe}from"./welcome-6f9b345d.js";import{aA as me,r as m,c as B,m as ge,al as p,z as b,A as y,B as l,R as a,J as o,u as c,aD as fe,P as _,M as F,O as V,Q as $,a4 as N,D as w}from"./vue-vendor-164775a6.js";import{E as g,a as R,g as _e,u as be,s as ye,d as q,b as he,c as ke,e as xe,f as Ce,l as Me,n as Ve,o as we}from"./element-plus-4a19e5e8.js";import{u as De,d as Te,a as Pe,b as Ie}from"./members-fa2c2290.js";import{_ as Se}from"./index-2fb4354b.js";import"./utils-edfcd65b.js";const Be={class:"member-management"},$e={class:"sidebar"},Ae={class:"nav-menu"},Le={class:"nav-item active"},Ye={class:"main-content"},Ee={class:"top-header"},Ue={class:"search-bar"},ze={class:"header-actions"},Fe={class:"notification-icon-wrapper"},Ne={class:"user-avatar"},Re={class:"member-content"},qe={class:"content-header"},Oe={key:0,class:"selection-info"},Ge={class:"table-toolbar"},Je={class:"toolbar-left"},Qe={class:"toolbar-right"},je={class:"table-container"},He={class:"member-table"},Ke={class:"checkbox-col"},We=["checked"],Xe={class:"checkbox-col"},Ze=["checked","onChange"],el={class:"pagination-container"},ll={class:"pagination"},tl=["onClick"],al={class:"dialog-footer"},sl={__name:"MemberManagement",setup(nl){const k=me(),d=m([]),D=m("all"),r=m(1),A=m(10),T=m(50),h=m(!1),P=m(),I=m(!1),u=m({id:"",username:"",level:"",points:0,expiryDate:""}),O={username:[{required:!0,message:"请输入用户名",trigger:"blur"},{min:2,max:20,message:"用户名长度在 2 到 20 个字符",trigger:"blur"}],level:[{required:!0,message:"请选择会员等级",trigger:"change"}],points:[{required:!0,message:"请输入资源点",trigger:"blur"},{type:"number",min:0,message:"资源点不能小于0",trigger:"blur"}],expiryDate:[{required:!0,message:"请选择到期时间",trigger:"change"}]},v=m([]),G=()=>{k.push("/admin/dashboard")},J=()=>{k.push("/admin/orders")},Q=()=>{k.push("/api-management")},j=()=>{k.push("/generate-task-record")},H=()=>{k.push("/system-settings")},L=B(()=>v.value.length>0&&d.value.length===v.value.length),f=B(()=>Math.ceil(T.value/A.value)),K=B(()=>{const t=[],e=f.value,n=r.value;if(e<=7)for(let i=1;i<=e;i++)t.push(i);else if(n<=3)for(let i=1;i<=5;i++)t.push(i);else if(n>=e-2)for(let i=e-4;i<=e;i++)t.push(i);else for(let i=n-2;i<=n+2;i++)t.push(i);return t}),W=()=>{L.value?d.value=[]:d.value=[...v.value]},X=t=>{const e=d.value.findIndex(n=>n.id===t.id);e>-1?d.value.splice(e,1):d.value.push(t)},Z=()=>{r.value>1&&(r.value--,x())},ee=()=>{r.value{r.value=t,x()},le=t=>{u.value={id:t.id,username:t.username,level:t.level,points:t.points,expiryDate:t.expiryDate},h.value=!0},te=()=>{var t;h.value=!1,(t=P.value)==null||t.resetFields()},ae=async()=>{if(P.value)try{await P.value.validate(),I.value=!0,await De(u.value.id,{username:u.value.username,level:u.value.level,points:u.value.points,expiryDate:u.value.expiryDate});const t=v.value.findIndex(e=>e.id===u.value.id);t>-1&&(v.value[t]={...u.value}),g.success("会员信息更新成功"),h.value=!1}catch(t){console.error("保存失败:",t),g.error("保存失败,请检查输入信息")}finally{I.value=!1}},se=async t=>{try{await R.confirm(`确定要删除用户 ${t.username} 吗?`,"确认删除",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}),await Ie(t.id);const e=v.value.findIndex(n=>n.id===t.id);e>-1&&(v.value.splice(e,1),T.value--),g.success("删除成功")}catch(e){e!=="cancel"&&(console.error("删除失败:",e),g.error("删除失败"))}},ne=async()=>{if(d.value.length===0){g.warning("请先选择要删除的会员");return}try{await R.confirm(`确定要删除选中的 ${d.value.length} 个会员吗?`,"批量删除",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const t=d.value.map(e=>e.id);await Te(t),v.value=v.value.filter(e=>!t.includes(e.id)),T.value-=t.length,d.value=[],g.success("批量删除成功")}catch(t){t!=="cancel"&&(console.error("批量删除失败:",t),g.error("批量删除失败"))}},oe=()=>{r.value=1,x()},x=async()=>{try{const t=await Pe({page:r.value,pageSize:A.value,level:D.value==="all"?"":D.value});console.log("获取会员列表响应:",t);const e=(t==null?void 0:t.data)||t||{};console.log("解析后的数据:",e),e&&e.list?(v.value=e.list.map(n=>({id:n.id,username:n.username,level:ie(n.membership),points:n.points||0,expiryDate:ue(n.membership)})),T.value=e.total||0,console.log("设置后的会员列表:",v.value)):(console.error("API返回数据格式错误:",e),g.error("API返回数据格式错误"))}catch(t){console.error("加载会员数据失败:",t),g.error("加载会员数据失败: "+(t.message||"未知错误"))}},ie=t=>t&&t.display_name||"标准会员",ue=t=>t&&t.end_date?t.end_date.split(" ")[0]:"2025-12-31";return ge(()=>{x()}),(t,e)=>{const n=p("el-icon"),i=p("el-option"),E=p("el-select"),S=p("el-button"),U=p("el-link"),z=p("el-input"),C=p("el-form-item"),de=p("el-input-number"),re=p("el-date-picker"),ve=p("el-form"),ce=p("el-dialog");return b(),y("div",Be,[l("aside",$e,[e[15]||(e[15]=l("div",{class:"logo"},[l("div",{class:"logo-icon"}),l("span",null,"LOGO")],-1)),l("nav",Ae,[l("div",{class:"nav-item",onClick:G},[a(n,null,{default:o(()=>[a(c(_e))]),_:1}),e[9]||(e[9]=l("span",null,"数据仪表台",-1))]),l("div",Le,[a(n,null,{default:o(()=>[a(c(be))]),_:1}),e[10]||(e[10]=l("span",null,"会员管理",-1))]),l("div",{class:"nav-item",onClick:J},[a(n,null,{default:o(()=>[a(c(ye))]),_:1}),e[11]||(e[11]=l("span",null,"订单管理",-1))]),l("div",{class:"nav-item",onClick:Q},[a(n,null,{default:o(()=>[a(c(q))]),_:1}),e[12]||(e[12]=l("span",null,"API管理",-1))]),l("div",{class:"nav-item",onClick:j},[a(n,null,{default:o(()=>[a(c(q))]),_:1}),e[13]||(e[13]=l("span",null,"生成任务记录",-1))]),l("div",{class:"nav-item",onClick:H},[a(n,null,{default:o(()=>[a(c(he))]),_:1}),e[14]||(e[14]=l("span",null,"系统设置",-1))])]),e[16]||(e[16]=fe('',1))]),l("main",Ye,[l("header",Ee,[l("div",Ue,[a(n,{class:"search-icon"},{default:o(()=>[a(c(ke))]),_:1}),e[17]||(e[17]=l("input",{type:"text",placeholder:"搜索你想要的内容",class:"search-input"},null,-1))]),l("div",ze,[l("div",Fe,[a(n,{class:"notification-icon"},{default:o(()=>[a(c(xe))]),_:1}),e[18]||(e[18]=l("span",{class:"notification-badge"},null,-1))]),l("div",Ne,[e[19]||(e[19]=l("img",{src:pe,alt:"用户头像"},null,-1)),a(n,{class:"arrow-down"},{default:o(()=>[a(c(Ce))]),_:1})])])]),l("section",Re,[l("div",qe,[e[20]||(e[20]=l("h2",null,"会员列表",-1)),d.value.length>0?(b(),y("div",Oe," 已选择"+_(d.value.length)+"项 ",1)):F("",!0)]),l("div",Ge,[l("div",Je,[a(E,{modelValue:D.value,"onUpdate:modelValue":e[0]||(e[0]=s=>D.value=s),placeholder:"全部等级",size:"small",onChange:oe},{default:o(()=>[a(i,{label:"全部等级",value:"all"}),a(i,{label:"专业会员",value:"professional"}),a(i,{label:"标准会员",value:"standard"})]),_:1},8,["modelValue"])]),l("div",Qe,[a(S,{type:"danger",size:"small",onClick:ne,disabled:d.value.length===0},{default:o(()=>[a(n,null,{default:o(()=>[a(c(Me))]),_:1}),e[21]||(e[21]=V(" 删除 ",-1))]),_:1},8,["disabled"])])]),l("div",je,[l("table",He,[l("thead",null,[l("tr",null,[l("th",Ke,[l("input",{type:"checkbox",onChange:W,checked:L.value},null,40,We)]),e[22]||(e[22]=l("th",null,"用户ID",-1)),e[23]||(e[23]=l("th",null,"用户名",-1)),e[24]||(e[24]=l("th",null,"会员等级",-1)),e[25]||(e[25]=l("th",null,"剩余资源点",-1)),e[26]||(e[26]=l("th",null,"到期时间",-1)),e[27]||(e[27]=l("th",null,"编辑",-1))])]),l("tbody",null,[(b(!0),y($,null,N(v.value,s=>(b(),y("tr",{key:s.id,class:"table-row"},[l("td",Xe,[l("input",{type:"checkbox",checked:d.value.some(M=>M.id===s.id),onChange:M=>X(s)},null,40,Ze)]),l("td",null,_(s.id),1),l("td",null,_(s.username),1),l("td",null,[l("span",{class:w(["level-tag",s.level==="专业会员"?"professional":"standard"])},_(s.level),3)]),l("td",null,_(s.points.toLocaleString()),1),l("td",null,_(s.expiryDate),1),l("td",null,[a(U,{type:"primary",class:"action-link",onClick:M=>le(s)},{default:o(()=>[...e[28]||(e[28]=[V("编辑",-1)])]),_:1},8,["onClick"]),a(U,{type:"danger",class:"action-link",onClick:M=>se(s)},{default:o(()=>[...e[29]||(e[29]=[V("删除",-1)])]),_:1},8,["onClick"])])]))),128))])])]),l("div",el,[l("div",ll,[a(n,{class:w(["page-arrow",{disabled:r.value===1}]),onClick:Z},{default:o(()=>[a(c(Ve))]),_:1},8,["class"]),(b(!0),y($,null,N(K.value,s=>(b(),y("button",{key:s,class:w(["page-btn",{active:s===r.value}]),onClick:M=>Y(s)},_(s),11,tl))),128)),f.value>7&&r.valueY(f.value))},_(f.value),3)],64)):F("",!0),a(n,{class:w(["page-arrow",{disabled:r.value===f.value}]),onClick:ee},{default:o(()=>[a(c(we))]),_:1},8,["class"])])])])]),a(ce,{modelValue:h.value,"onUpdate:modelValue":e[8]||(e[8]=s=>h.value=s),title:"编辑会员信息",width:"500px","before-close":te},{footer:o(()=>[l("span",al,[a(S,{onClick:e[7]||(e[7]=s=>h.value=!1)},{default:o(()=>[...e[31]||(e[31]=[V("取消",-1)])]),_:1}),a(S,{type:"primary",onClick:ae,loading:I.value},{default:o(()=>[...e[32]||(e[32]=[V("保存",-1)])]),_:1},8,["loading"])])]),default:o(()=>[a(ve,{ref_key:"editFormRef",ref:P,model:u.value,rules:O,"label-width":"100px"},{default:o(()=>[a(C,{label:"用户ID",prop:"id"},{default:o(()=>[a(z,{modelValue:u.value.id,"onUpdate:modelValue":e[2]||(e[2]=s=>u.value.id=s),disabled:""},null,8,["modelValue"])]),_:1}),a(C,{label:"用户名",prop:"username"},{default:o(()=>[a(z,{modelValue:u.value.username,"onUpdate:modelValue":e[3]||(e[3]=s=>u.value.username=s),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1}),a(C,{label:"会员等级",prop:"level"},{default:o(()=>[a(E,{modelValue:u.value.level,"onUpdate:modelValue":e[4]||(e[4]=s=>u.value.level=s),placeholder:"请选择会员等级"},{default:o(()=>[a(i,{label:"专业会员",value:"专业会员"}),a(i,{label:"标准会员",value:"标准会员"})]),_:1},8,["modelValue"])]),_:1}),a(C,{label:"剩余资源点",prop:"points"},{default:o(()=>[a(de,{modelValue:u.value.points,"onUpdate:modelValue":e[5]||(e[5]=s=>u.value.points=s),min:0,max:99999,placeholder:"请输入资源点"},null,8,["modelValue"])]),_:1}),a(C,{label:"到期时间",prop:"expiryDate"},{default:o(()=>[a(re,{modelValue:u.value.expiryDate,"onUpdate:modelValue":e[6]||(e[6]=s=>u.value.expiryDate=s),type:"date",placeholder:"选择到期时间",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}},cl=Se(sl,[["__scopeId","data-v-e287821d"]]);export{cl as default};