1 line
4.2 KiB
JavaScript
1 line
4.2 KiB
JavaScript
import{$ as e,F as t,M as n,Q as r,R as i,b as a,bt as o,g as s,ot as c,p as l,q as u,s as d,t as f,v as p,y as m}from"./api-DftvpHMa.js";import{a as h}from"./config-provider-DjHSmQsy.js";import{t as g}from"./modal-B_MK8QJe.js";import{t as _}from"./time-pIfF89ap.js";import{t as v}from"./_plugin-vue_export-helper-BDNMzG2s.js";var y={class:`toolbar`},b=v(a({__name:`AdminAccounts`,setup(a){let v=e(!1),b=e([]),x=e(!1),S=e(null),C=r({username:``,password:``,role:`operator`}),w=e(``);async function T(){v.value=!0;try{b.value=await f.adminAccounts()}finally{v.value=!1}}async function E(){if(C.password.length<12)return h.error(`初始密码至少 12 位`);await f.createAdminAccount(C),h.success(`管理员已创建`),x.value=!1,Object.assign(C,{username:``,password:``,role:`operator`}),await T()}async function D(e,t){try{await f.updateAdminAccount(e.id,{role:t.role??e.role,isActive:t.isActive??e.isActive,mustChangePassword:t.mustChangePassword??e.mustChangePassword}),await T()}catch(e){h.error(e.response?.data?.message||`更新失败`)}}async function O(){if(!S.value||w.value.length<12)return h.error(`新密码至少 12 位`);await f.resetAdminPassword(S.value.id,w.value),h.success(`密码已重置,现有会话已撤销`),S.value=null,w.value=``,await T()}function k(e){g.confirm({title:`撤销 ${e.username} 的全部会话?`,async onOk(){await f.revokeAdminSessions(e.id),h.success(`会话已撤销`),await T()}})}return n(T),(e,n)=>{let r=i(`a-button`),a=i(`a-table-column`),f=i(`a-select-option`),h=i(`a-select`),g=i(`a-switch`),T=i(`a-space`),A=i(`a-table`),j=i(`a-input`),M=i(`a-form-item`),N=i(`a-input-password`),P=i(`a-form`),F=i(`a-modal`);return t(),s(d,null,[l(`div`,y,[n[8]||=l(`div`,null,[l(`h2`,null,`管理员账号`),l(`span`,null,`角色、登录状态与会话`)],-1),m(r,{type:`primary`,onClick:n[0]||=e=>x.value=!0},{default:u(()=>[...n[7]||=[p(`新建管理员`,-1)]]),_:1})]),m(A,{"data-source":b.value,loading:v.value,"row-key":`id`,pagination:!1,size:`middle`},{default:u(()=>[m(a,{title:`账号`,"data-index":`username`}),m(a,{title:`角色`},{default:u(({record:e})=>[m(h,{value:e.role,style:{width:`138px`},onChange:t=>D(e,{role:t})},{default:u(()=>[m(f,{value:`super_admin`},{default:u(()=>[...n[9]||=[p(`super_admin`,-1)]]),_:1}),m(f,{value:`operator`},{default:u(()=>[...n[10]||=[p(`operator`,-1)]]),_:1}),m(f,{value:`viewer`},{default:u(()=>[...n[11]||=[p(`viewer`,-1)]]),_:1})]),_:1},8,[`value`,`onChange`])]),_:1}),m(a,{title:`状态`},{default:u(({record:e})=>[m(g,{checked:e.isActive,onChange:t=>D(e,{isActive:t})},null,8,[`checked`,`onChange`])]),_:1}),m(a,{title:`会话`,"data-index":`activeSessions`}),m(a,{title:`最近登录`},{default:u(({record:e})=>[p(o(c(_)(e.lastLoginAt)),1)]),_:1}),m(a,{title:`操作`,width:230},{default:u(({record:e})=>[m(T,null,{default:u(()=>[m(r,{size:`small`,onClick:t=>S.value=e},{default:u(()=>[...n[12]||=[p(`重置密码`,-1)]]),_:1},8,[`onClick`]),m(r,{size:`small`,danger:``,onClick:t=>k(e)},{default:u(()=>[...n[13]||=[p(`撤销会话`,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:1})]),_:1},8,[`data-source`,`loading`]),m(F,{open:x.value,"onUpdate:open":n[4]||=e=>x.value=e,title:`新建管理员`,"ok-text":`创建`,onOk:E},{default:u(()=>[m(P,{layout:`vertical`},{default:u(()=>[m(M,{label:`用户名`},{default:u(()=>[m(j,{value:C.username,"onUpdate:value":n[1]||=e=>C.username=e},null,8,[`value`])]),_:1}),m(M,{label:`初始密码`},{default:u(()=>[m(N,{value:C.password,"onUpdate:value":n[2]||=e=>C.password=e},null,8,[`value`])]),_:1}),m(M,{label:`角色`},{default:u(()=>[m(h,{value:C.role,"onUpdate:value":n[3]||=e=>C.role=e},{default:u(()=>[m(f,{value:`operator`},{default:u(()=>[...n[14]||=[p(`operator`,-1)]]),_:1}),m(f,{value:`viewer`},{default:u(()=>[...n[15]||=[p(`viewer`,-1)]]),_:1}),m(f,{value:`super_admin`},{default:u(()=>[...n[16]||=[p(`super_admin`,-1)]]),_:1})]),_:1},8,[`value`])]),_:1})]),_:1})]),_:1},8,[`open`]),m(F,{open:!!S.value,title:`重置密码`,"ok-text":`重置并撤销会话`,onCancel:n[6]||=e=>S.value=null,onOk:O},{default:u(()=>[m(N,{value:w.value,"onUpdate:value":n[5]||=e=>w.value=e,placeholder:`至少 12 位的新密码`},null,8,[`value`])]),_:1},8,[`open`])],64)}}}),[[`__scopeId`,`data-v-ac276d87`]]);export{b as default}; |