1 line
7.0 KiB
JavaScript
1 line
7.0 KiB
JavaScript
import{At as e,C as t,D as n,Dt as ee,E as r,H as i,S as a,T as o,Tt as s,W as c,a as l,b as u,dt as te,gt as d,h as f,it as p,w as m,x as h}from"./iconify-DYZHDLa8.js";import{a as ne,i as re,n as ie,r as ae,t as oe}from"./SelectValue-Dhq6ao6U.js";import"./vue-vendor-DjtlKxRy.js";import{G as g,q as se}from"./index-Uji7rFqr.js";import"./Teleport-BIYegdAM.js";import{n as ce}from"./button-BuRmTYve.js";import{a as le,i as ue,n as de,r as fe,t as pe}from"./DialogTitle-CMQDEO8n.js";import{t as me}from"./Label-BOs1t85p.js";import{t as he}from"./Input-DFmzhatB.js";import{T as _,i as v,s as y}from"./monisuo-admin.api-dPrln-7F.js";import{t as ge}from"./Card-mLutrMBs.js";import{r as b}from"./global-layout-BGXP2p6j.js";import{a as x,i as S,n as C,o as w,r as T,t as E}from"./TableHead-BHgluwhS.js";import{t as D}from"./Badge-RIbvVUq1.js";var O={class:`space-y-4`},k={class:`flex justify-end`},A={class:`md:hidden space-y-3`},j={key:0,class:`text-center py-8`},M={class:`flex items-start justify-between`},N={class:`font-mono font-bold`},P={class:`text-sm text-muted-foreground`},F={class:`flex gap-1`},I={key:0,class:`mt-2 flex justify-end`},L={key:2,class:`text-center py-8 text-muted-foreground`},_e={class:`grid gap-4 py-4`},ve={class:`grid gap-2`},ye={class:`grid gap-2`},be={class:`grid gap-2`},xe={class:`grid gap-2`},R=n({__name:`admins`,setup(n){let{data:R,isLoading:z,refetch:B}=y(),V=v(),H=_(),U=u(()=>R.value?.data||[]),W=d(!1),G=d({username:``,password:``,nickname:``,role:2});function Se(){G.value={username:``,password:``,nickname:``,role:2},W.value=!0}async function Ce(){if(!G.value.username||!G.value.password){g.error(`请输入用户名和密码`);return}if(G.value.password.length<4){g.error(`密码至少4位`);return}try{await V.mutateAsync(G.value),g.success(`创建成功`),W.value=!1,B()}catch(e){g.error(e.message||e.response?.data?.msg||`创建失败`)}}async function K(e){if(e.isSystem===1){g.error(`系统预置管理员不可操作`);return}let t=e.status===1?0:1;try{await H.mutateAsync({id:e.id,status:t}),g.success(t===1?`已启用`:`已禁用`),B()}catch(e){g.error(e.message||e.response?.data?.msg||`操作失败`)}}function q(e){return e===1?`超级管理员`:e===2?`管理员`:e===3?`财务`:`未知`}function J(e){return e===1?`default`:e===3?`outline`:`secondary`}return(n,u)=>{let d=ce,g=E,_=C,v=T,y=se,R=S,B=D,we=x,Te=w,Y=ge,Ee=pe,De=de,X=me,Z=he,Oe=oe,Q=ie,$=ae,ke=re,Ae=ne,je=fe,Me=ue,Ne=le;return i(),a(s(b),{title:`管理员管理`,description:`管理系统管理员和财务账号`},{default:p(()=>[h(`div`,O,[h(`div`,k,[r(d,{onClick:Se},{default:p(()=>[r(s(l),{icon:`lucide:plus`,class:`size-4 mr-2`}),u[6]||=o(` 新增账号 `,-1)]),_:1})]),r(Y,{class:`hidden md:block overflow-x-auto p-4`},{default:p(()=>[r(Te,null,{default:p(()=>[r(v,null,{default:p(()=>[r(_,null,{default:p(()=>[r(g,{class:`w-[80px]`},{default:p(()=>[...u[7]||=[o(` ID `,-1)]]),_:1}),r(g,null,{default:p(()=>[...u[8]||=[o(`用户名`,-1)]]),_:1}),r(g,null,{default:p(()=>[...u[9]||=[o(`昵称`,-1)]]),_:1}),r(g,null,{default:p(()=>[...u[10]||=[o(`角色`,-1)]]),_:1}),r(g,null,{default:p(()=>[...u[11]||=[o(`状态`,-1)]]),_:1}),r(g,null,{default:p(()=>[...u[12]||=[o(`创建时间`,-1)]]),_:1}),r(g,{class:`text-right`},{default:p(()=>[...u[13]||=[o(` 操作 `,-1)]]),_:1})]),_:1})]),_:1}),r(we,null,{default:p(()=>[s(z)?(i(),a(_,{key:0},{default:p(()=>[r(R,{"col-span":7,class:`text-center py-8`},{default:p(()=>[r(y,{class:`mx-auto`})]),_:1})]),_:1})):s(U).length===0?(i(),a(_,{key:1},{default:p(()=>[r(R,{"col-span":7,class:`text-center py-8 text-muted-foreground`},{default:p(()=>[...u[14]||=[o(` 暂无数据 `,-1)]]),_:1})]),_:1})):t(``,!0),(i(!0),m(f,null,c(s(U),n=>(i(),a(_,{key:n.id},{default:p(()=>[r(R,null,{default:p(()=>[o(e(n.id),1)]),_:2},1024),r(R,{class:`font-mono font-medium`},{default:p(()=>[o(e(n.username),1)]),_:2},1024),r(R,null,{default:p(()=>[o(e(n.nickname),1)]),_:2},1024),r(R,null,{default:p(()=>[r(B,{variant:J(n.role)},{default:p(()=>[o(e(q(n.role)),1)]),_:2},1032,[`variant`])]),_:2},1024),r(R,null,{default:p(()=>[r(B,{variant:n.status===1?`default`:`destructive`},{default:p(()=>[o(e(n.status===1?`正常`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),r(R,null,{default:p(()=>[o(e(n.createTime),1)]),_:2},1024),r(R,{class:`text-right`},{default:p(()=>[n.isSystem===1?t(``,!0):(i(),a(d,{key:0,size:`sm`,variant:`ghost`,disabled:s(H).isPending.value,onClick:e=>K(n)},{default:p(()=>[r(s(l),{icon:n.status===1?`lucide:ban`:`lucide:check-circle`,class:ee([`size-4`,n.status===1?`text-destructive`:`text-green-500`])},null,8,[`icon`,`class`])]),_:2},1032,[`disabled`,`onClick`]))]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),h(`div`,A,[s(z)?(i(),m(`div`,j,[r(y,{class:`mx-auto`})])):s(U).length>0?(i(!0),m(f,{key:1},c(s(U),n=>(i(),a(Y,{key:n.id,class:`p-4`},{default:p(()=>[h(`div`,M,[h(`div`,null,[h(`div`,N,e(n.username),1),h(`div`,P,e(n.nickname),1)]),h(`div`,F,[r(B,{variant:J(n.role)},{default:p(()=>[o(e(q(n.role)),1)]),_:2},1032,[`variant`]),r(B,{variant:n.status===1?`default`:`destructive`},{default:p(()=>[o(e(n.status===1?`正常`:`禁用`),1)]),_:2},1032,[`variant`])])]),n.isSystem===1?t(``,!0):(i(),m(`div`,I,[r(d,{size:`sm`,variant:`outline`,disabled:s(H).isPending.value,onClick:e=>K(n)},{default:p(()=>[o(e(n.status===1?`禁用`:`启用`),1)]),_:2},1032,[`disabled`,`onClick`])]))]),_:2},1024))),128)):(i(),m(`div`,L,` 暂无数据 `))])]),r(Ne,{open:s(W),"onUpdate:open":u[5]||=e=>te(W)?W.value=e:null},{default:p(()=>[r(Me,{class:`max-w-md`},{default:p(()=>[r(De,null,{default:p(()=>[r(Ee,null,{default:p(()=>[...u[15]||=[o(`新增账号`,-1)]]),_:1})]),_:1}),h(`div`,_e,[h(`div`,ve,[r(X,null,{default:p(()=>[...u[16]||=[o(`用户名 `,-1),h(`span`,{class:`text-red-500`},`*`,-1)]]),_:1}),r(Z,{modelValue:s(G).username,"onUpdate:modelValue":u[0]||=e=>s(G).username=e,placeholder:`请输入用户名`},null,8,[`modelValue`])]),h(`div`,ye,[r(X,null,{default:p(()=>[...u[17]||=[o(`密码 `,-1),h(`span`,{class:`text-red-500`},`*`,-1)]]),_:1}),r(Z,{modelValue:s(G).password,"onUpdate:modelValue":u[1]||=e=>s(G).password=e,type:`password`,placeholder:`至少4位`},null,8,[`modelValue`])]),h(`div`,be,[r(X,null,{default:p(()=>[...u[18]||=[o(`昵称`,-1)]]),_:1}),r(Z,{modelValue:s(G).nickname,"onUpdate:modelValue":u[2]||=e=>s(G).nickname=e,placeholder:`可选`},null,8,[`modelValue`])]),h(`div`,xe,[r(X,null,{default:p(()=>[...u[19]||=[o(`角色 `,-1),h(`span`,{class:`text-red-500`},`*`,-1)]]),_:1}),r(Ae,{modelValue:s(G).role,"onUpdate:modelValue":u[3]||=e=>s(G).role=e},{default:p(()=>[r(Q,null,{default:p(()=>[r(Oe,{placeholder:`请选择角色`})]),_:1}),r(ke,null,{default:p(()=>[r($,{value:2},{default:p(()=>[...u[20]||=[o(` 管理员 `,-1)]]),_:1}),r($,{value:3},{default:p(()=>[...u[21]||=[o(` 财务 `,-1)]]),_:1})]),_:1})]),_:1},8,[`modelValue`])])]),r(je,null,{default:p(()=>[r(d,{variant:`outline`,onClick:u[4]||=e=>W.value=!1},{default:p(()=>[...u[22]||=[o(` 取消 `,-1)]]),_:1}),r(d,{disabled:s(V).isPending.value,onClick:Ce},{default:p(()=>[s(V).isPending.value?(i(),a(y,{key:0,class:`mr-2`})):t(``,!0),u[23]||=o(` 创建 `,-1)]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`open`])]),_:1})}}});export{R as default}; |