import{I as e,Q as t,R as n,_ as r,at as i,b as a,g as o,h as s,l as c,m as l,o as ee,ut as u,v as d,wt as f,x as p,y as m,yt as h}from"./vue.runtime.esm-bundler-DS0mm12S.js";import{a as te,i as ne,n as re,r as ie,t as g}from"./SelectValue-CPTo3Tck.js";import{t as ae}from"./Spinner-DJesLX-i.js";import{n as _}from"./lib-CiHeuR38.js";import{yt as v}from"./index-aDrlI3dP.js";import"./Teleport-CHY6zPT-.js";import{n as oe}from"./button-DQxx5HZh.js";import{i as se,n as ce,r as le,t as ue}from"./DialogTitle-DW0Sux5Q.js";import{t as de}from"./Label-BaWF5yt7.js";import{t as fe}from"./Input-Bq5OMrfM.js";import{S as y,h as b}from"./monisuo-admin.api-CkHxxpNg.js";import{t as pe}from"./DialogFooter-CfvX5qp7.js";import{t as me}from"./Card-BGPZ9IQg.js";import{r as he}from"./global-layout-avJcxscI.js";import{t as ge}from"./Badge-B93DSkNh.js";import{a as _e,i as ve,n as ye,o as be,r as xe,t as Se}from"./TableHead-Cg6B6rf4.js";var Ce={class:`space-y-4`},we={class:`flex flex-col sm:flex-row gap-4`},Te={class:`flex-1 grid gap-2`},x={class:`w-full sm:w-[160px] grid gap-2`},S={class:`flex items-end gap-2`},C={class:`flex justify-end gap-2`},w={class:`md:hidden space-y-3`},T={key:0,class:`text-center py-8`},E={class:`flex items-start justify-between`},D={class:`space-y-1`},O={class:`font-medium`},Ee={class:`text-sm text-muted-foreground`},De={class:`mt-3 pt-3 border-t text-sm text-muted-foreground space-y-1`},Oe={key:0},ke={class:`mt-3 flex gap-2`},Ae={key:2,class:`text-center py-8 text-muted-foreground`},je={key:0,class:`flex flex-col sm:flex-row items-center justify-between gap-4 px-2`},Me={class:`text-sm text-muted-foreground`},Ne={class:`flex items-center gap-4`},Pe={class:`flex items-center gap-2`},Fe={class:`flex items-center gap-2`},Ie={class:`text-sm min-w-[80px] text-center`},Le={key:0,class:`space-y-4`},Re={class:`grid grid-cols-3 gap-2 text-sm`},ze={class:`col-span-2 font-medium`},Be={class:`col-span-2 font-medium`},Ve={class:`col-span-2`},He={class:`col-span-2`},Ue={class:`col-span-2`},We={class:`col-span-2`},Ge={class:`col-span-2`},Ke={class:`col-span-2`},k=p({__name:`users`,setup(p){let k=u(1),A=u(10),j=u(``),M=u(),N=u(`all`),{data:P,isLoading:F,refetch:I}=b({pageNum:k.value,pageSize:A.value,username:j.value||void 0,status:M.value}),L=y(),R=l(()=>P.value?.data?.list||[]),z=l(()=>P.value?.data?.total||0),B=l(()=>Math.ceil(z.value/A.value)),V=u(!1),H=u(null);function U(e){H.value=e,V.value=!0}async function W(e){let t=e.status===1?0:1,n=t===0?`禁用`:`启用`;try{await L.mutateAsync({userId:e.id,status:t}),_.success(`已${n}用户 ${e.username}`)}catch(e){_.error(e.response?.data?.msg||`${n}失败`)}}function G(){M.value=N.value===`all`?void 0:N.value,k.value=1,I()}function qe(){j.value=``,N.value=`all`,M.value=void 0,k.value=1,I()}function K(e){k.value=e,I()}function Je(e){e!=null&&(A.value=Number(e),k.value=1,I())}return(l,u)=>{let p=de,_=fe,y=g,b=re,M=ie,P=ne,I=te,q=oe,J=me,Y=Se,X=ye,Ye=xe,Z=ae,Q=ve,$=ge,Xe=_e,Ze=be,Qe=ue,$e=ce,et=pe,tt=le,nt=se;return e(),o(h(he),{title:`用户管理`,description:`管理系统用户`},{default:t(()=>[s(`div`,Ce,[a(J,{class:`p-4`},{default:t(()=>[s(`div`,we,[s(`div`,Te,[a(p,null,{default:t(()=>[...u[6]||=[m(`用户名`,-1)]]),_:1}),a(_,{modelValue:h(j),"onUpdate:modelValue":u[0]||=e=>i(j)?j.value=e:null,placeholder:`搜索用户名`,onKeyup:ee(G,[`enter`])},null,8,[`modelValue`])]),s(`div`,x,[a(p,null,{default:t(()=>[...u[7]||=[m(`状态`,-1)]]),_:1}),a(I,{modelValue:h(N),"onUpdate:modelValue":u[1]||=e=>i(N)?N.value=e:null},{default:t(()=>[a(b,null,{default:t(()=>[a(y,{placeholder:`全部`})]),_:1}),a(P,null,{default:t(()=>[a(M,{value:`all`},{default:t(()=>[...u[8]||=[m(` 全部 `,-1)]]),_:1}),a(M,{value:1},{default:t(()=>[...u[9]||=[m(` 正常 `,-1)]]),_:1}),a(M,{value:0},{default:t(()=>[...u[10]||=[m(` 禁用 `,-1)]]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),s(`div`,S,[a(q,{onClick:G},{default:t(()=>[...u[11]||=[m(` 搜索 `,-1)]]),_:1}),a(q,{variant:`outline`,onClick:qe},{default:t(()=>[...u[12]||=[m(` 重置 `,-1)]]),_:1})])])]),_:1}),a(J,{class:`hidden md:block overflow-x-auto p-4`},{default:t(()=>[a(Ze,null,{default:t(()=>[a(Ye,null,{default:t(()=>[a(X,null,{default:t(()=>[a(Y,{class:`w-[80px]`},{default:t(()=>[...u[13]||=[m(` ID `,-1)]]),_:1}),a(Y,null,{default:t(()=>[...u[14]||=[m(`用户名`,-1)]]),_:1}),a(Y,null,{default:t(()=>[...u[15]||=[m(`昵称`,-1)]]),_:1}),a(Y,{class:`hidden lg:table-cell`},{default:t(()=>[...u[16]||=[m(` 手机 `,-1)]]),_:1}),a(Y,{class:`hidden xl:table-cell`},{default:t(()=>[...u[17]||=[m(` 邮箱 `,-1)]]),_:1}),a(Y,null,{default:t(()=>[...u[18]||=[m(`状态`,-1)]]),_:1}),a(Y,{class:`hidden sm:table-cell`},{default:t(()=>[...u[19]||=[m(` 注册时间 `,-1)]]),_:1}),a(Y,{class:`text-right`},{default:t(()=>[...u[20]||=[m(` 操作 `,-1)]]),_:1})]),_:1})]),_:1}),a(Xe,null,{default:t(()=>[h(F)?(e(),o(X,{key:0},{default:t(()=>[a(Q,{"col-span":8,class:`text-center py-8`},{default:t(()=>[a(Z,{class:`mx-auto`})]),_:1})]),_:1})):h(R).length===0?(e(),o(X,{key:1},{default:t(()=>[a(Q,{"col-span":8,class:`text-center py-8 text-muted-foreground`},{default:t(()=>[...u[21]||=[m(` 暂无数据 `,-1)]]),_:1})]),_:1})):r(``,!0),(e(!0),d(c,null,n(h(R),n=>(e(),o(X,{key:n.id},{default:t(()=>[a(Q,null,{default:t(()=>[m(f(n.id),1)]),_:2},1024),a(Q,{class:`font-medium`},{default:t(()=>[m(f(n.username),1)]),_:2},1024),a(Q,null,{default:t(()=>[m(f(n.nickname||`-`),1)]),_:2},1024),a(Q,{class:`hidden lg:table-cell`},{default:t(()=>[m(f(n.phone||`-`),1)]),_:2},1024),a(Q,{class:`hidden xl:table-cell`},{default:t(()=>[m(f(n.email||`-`),1)]),_:2},1024),a(Q,null,{default:t(()=>[a($,{variant:n.status===1?`default`:`destructive`},{default:t(()=>[m(f(n.status===1?`正常`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),a(Q,{class:`hidden sm:table-cell text-muted-foreground text-sm`},{default:t(()=>[m(f(n.createTime),1)]),_:2},1024),a(Q,{class:`text-right`},{default:t(()=>[s(`div`,C,[a(q,{size:`sm`,variant:`ghost`,onClick:e=>U(n)},{default:t(()=>[a(h(v),{icon:`lucide:eye`,class:`size-4`})]),_:1},8,[`onClick`]),a(q,{size:`sm`,variant:`outline`,disabled:h(L).isPending.value,onClick:e=>W(n)},{default:t(()=>[m(f(n.status===1?`禁用`:`启用`),1)]),_:2},1032,[`disabled`,`onClick`])])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),s(`div`,w,[h(F)?(e(),d(`div`,T,[a(Z,{class:`mx-auto`})])):h(R).length>0?(e(!0),d(c,{key:1},n(h(R),n=>(e(),o(J,{key:n.id,class:`p-4`},{default:t(()=>[s(`div`,E,[s(`div`,D,[s(`div`,O,f(n.username),1),s(`div`,Ee,f(n.nickname||`未设置昵称`),1)]),a($,{variant:n.status===1?`default`:`destructive`},{default:t(()=>[m(f(n.status===1?`正常`:`禁用`),1)]),_:2},1032,[`variant`])]),s(`div`,De,[n.phone?(e(),d(`div`,Oe,` 手机: `+f(n.phone),1)):r(``,!0),s(`div`,null,`注册: `+f(n.createTime),1)]),s(`div`,ke,[a(q,{size:`sm`,variant:`outline`,class:`flex-1`,onClick:e=>U(n)},{default:t(()=>[...u[22]||=[m(` 查看详情 `,-1)]]),_:1},8,[`onClick`]),a(q,{size:`sm`,variant:`outline`,class:`flex-1`,disabled:h(L).isPending.value,onClick:e=>W(n)},{default:t(()=>[m(f(n.status===1?`禁用`:`启用`),1)]),_:2},1032,[`disabled`,`onClick`])])]),_:2},1024))),128)):(e(),d(`div`,Ae,` 暂无数据 `))]),h(z)>0?(e(),d(`div`,je,[s(`div`,Me,` 共 `+f(h(z))+` 条记录 `,1),s(`div`,Ne,[s(`div`,Pe,[u[26]||=s(`span`,{class:`text-sm`},`每页`,-1),a(I,{"model-value":`${h(A)}`,"onUpdate:modelValue":Je},{default:t(()=>[a(b,{class:`h-8 w-[70px]`},{default:t(()=>[a(y)]),_:1}),a(P,null,{default:t(()=>[a(M,{value:`10`},{default:t(()=>[...u[23]||=[m(` 10 `,-1)]]),_:1}),a(M,{value:`20`},{default:t(()=>[...u[24]||=[m(` 20 `,-1)]]),_:1}),a(M,{value:`50`},{default:t(()=>[...u[25]||=[m(` 50 `,-1)]]),_:1})]),_:1})]),_:1},8,[`model-value`]),u[27]||=s(`span`,{class:`text-sm`},`条`,-1)]),s(`div`,Fe,[a(q,{variant:`outline`,size:`icon`,class:`h-8 w-8`,disabled:h(k)<=1,onClick:u[2]||=e=>K(h(k)-1)},{default:t(()=>[a(h(v),{icon:`lucide:chevron-left`,class:`size-4`})]),_:1},8,[`disabled`]),s(`span`,Ie,f(h(k))+` / `+f(h(B)),1),a(q,{variant:`outline`,size:`icon`,class:`h-8 w-8`,disabled:h(k)>=h(B),onClick:u[3]||=e=>K(h(k)+1)},{default:t(()=>[a(h(v),{icon:`lucide:chevron-right`,class:`size-4`})]),_:1},8,[`disabled`])])])])):r(``,!0)]),a(nt,{open:h(V),"onUpdate:open":u[5]||=e=>i(V)?V.value=e:null},{default:t(()=>[a(tt,{class:`max-w-md`},{default:t(()=>[a($e,null,{default:t(()=>[a(Qe,null,{default:t(()=>[...u[28]||=[m(`用户详情`,-1)]]),_:1})]),_:1}),h(H)?(e(),d(`div`,Le,[s(`div`,Re,[u[29]||=s(`div`,{class:`text-muted-foreground`},` 用户ID `,-1),s(`div`,ze,f(h(H).id),1),u[30]||=s(`div`,{class:`text-muted-foreground`},` 用户名 `,-1),s(`div`,Be,f(h(H).username),1),u[31]||=s(`div`,{class:`text-muted-foreground`},` 昵称 `,-1),s(`div`,Ve,f(h(H).nickname||`-`),1),u[32]||=s(`div`,{class:`text-muted-foreground`},` 手机 `,-1),s(`div`,He,f(h(H).phone||`-`),1),u[33]||=s(`div`,{class:`text-muted-foreground`},` 邮箱 `,-1),s(`div`,Ue,f(h(H).email||`-`),1),u[34]||=s(`div`,{class:`text-muted-foreground`},` 状态 `,-1),s(`div`,We,[a($,{variant:h(H).status===1?`default`:`destructive`},{default:t(()=>[m(f(h(H).status===1?`正常`:`禁用`),1)]),_:1},8,[`variant`])]),u[35]||=s(`div`,{class:`text-muted-foreground`},` 注册时间 `,-1),s(`div`,Ge,f(h(H).createTime),1),u[36]||=s(`div`,{class:`text-muted-foreground`},` 更新时间 `,-1),s(`div`,Ke,f(h(H).updateTime),1)])])):r(``,!0),a(et,null,{default:t(()=>[a(q,{variant:`outline`,onClick:u[4]||=e=>V.value=!1},{default:t(()=>[...u[37]||=[m(` 关闭 `,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]),_:1})}}});export{k as default};