mi-assessment/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BdLlTLri.js
2026-02-21 18:21:13 +08:00

2 lines
13 KiB
JavaScript

import{R as y,d as Be,r as d,a as j,v as Ee,o as Fe,g as r,B as se,c as G,k as p,e as a,w as t,C as b,f as qe,t as u,z as v,F as ne,y as oe,x as de,b as ue,l as Ke,D as je,G as re,an as Ge,E as U,W as We,_ as He}from"./index-IVLVjSAe.js";import{h as Je}from"./role-D1lagRHw.js";import{g as Oe}from"./department-C9LDPR9Q.js";function Qe(o){return y({url:"/admin/users",method:"get",params:o})}function Xe(o){return y({url:"/admin/users",method:"post",data:o})}function Ye(o,x){return y({url:`/admin/users/${o}`,method:"put",data:x})}function Ze(o){return y({url:`/admin/users/${o}`,method:"delete"})}function el(o,x){return y({url:`/admin/users/${o}/status`,method:"put",data:{status:x}})}function ll(o){return y({url:`/admin/users/${o.userId}/reset-password`,method:"put",data:{newPassword:o.newPassword}})}function al(o){return y({url:`/admin/users/${o.userId}/roles`,method:"put",data:{roleIds:o.roleIds}})}function tl(o){return y({url:`/admin/users/${o}/roles`,method:"get"})}function sl(o){return y({url:`/admin/users/${o.userId}/department`,method:"put",data:{departmentId:o.departmentId}})}function nl(o){return y({url:`/admin/users/${o}/menus`,method:"get"})}function ol(o){return y({url:`/admin/users/${o.userId}/menus`,method:"put",data:{menuIds:o.menuIds}})}const dl={class:"page-container"},ul={class:"card-header"},rl=Be({__name:"index",setup(o){const x=d(!1),W=d([]),H=d(0),m=j({keyword:"",departmentId:void 0,status:void 0,page:1,pageSize:10}),J=d([]),L=d([]),O=d([]),I=d(!1),P=d(!1),ie=Ee(()=>P.value?"编辑管理员":"新增管理员"),M=d(),T=d(!1),n=j({id:0,username:"",password:"",realName:"",email:"",phone:"",status:1}),me={username:[{required:!0,message:"请输入用户名",trigger:"blur"},{min:3,max:20,message:"长度在 3 到 20 个字符",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,max:20,message:"长度在 6 到 20 个字符",trigger:"blur"}],email:[{type:"email",message:"请输入正确的邮箱地址",trigger:"blur"}],phone:[{pattern:/^1[3-9]\d{9}$/,message:"请输入正确的手机号",trigger:"blur"}]},R=d(!1),z=d([]),V=d(0),B=d(!1),S=d(!1),A=d(null),E=d(!1),D=d(!1),Q=d(),X=d([]),F=d(!1),h=d(!1),Y=d(),q=d(!1),c=j({newPassword:"",confirmPassword:""}),pe={newPassword:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,max:20,message:"长度在 6 到 20 个字符",trigger:"blur"}],confirmPassword:[{required:!0,message:"请再次输入密码",trigger:"blur"},{validator:(s,e,$)=>{e!==c.newPassword?$(new Error("两次输入密码不一致")):$()},trigger:"blur"}]},w=async()=>{x.value=!0;try{const s=await Qe(m);W.value=s.data.list,H.value=s.data.total}finally{x.value=!1}},fe=async()=>{const[s,e,$]=await Promise.all([Je(),Oe(),Ge()]);J.value=s.data,L.value=e.data,O.value=$.data},Z=()=>{m.page=1,w()},ve=()=>{m.keyword="",m.departmentId=void 0,m.status=void 0,m.page=1,w()},ee=()=>{var s;n.id=0,n.username="",n.password="",n.realName="",n.email="",n.phone="",n.status=1,(s=M.value)==null||s.resetFields()},ge=()=>{P.value=!1,ee(),I.value=!0},ye=s=>{P.value=!0,n.id=s.id,n.realName=s.realName||"",n.email=s.email||"",n.phone=s.phone||"",n.status=s.status,I.value=!0},ce=async()=>{var e;if(await((e=M.value)==null?void 0:e.validate())){T.value=!0;try{P.value?(await Ye(n.id,n),U.success("更新成功")):(await Xe(n),U.success("创建成功")),I.value=!1,w()}finally{T.value=!1}}},we=async s=>{try{await We.confirm(`确定要删除管理员 "${s.username}" 吗?`,"提示",{type:"warning"}),await Ze(s.id),U.success("删除成功"),w()}catch{}},be=async s=>{try{await el(s.id,s.status),U.success("状态更新成功")}catch{s.status=s.status===1?0:1}},Ve=async s=>{V.value=s.id;const e=await tl(s.id);z.value=e.data,R.value=!0},ke=async()=>{B.value=!0;try{await al({userId:V.value,roleIds:z.value}),U.success("分配成功"),R.value=!1,w()}finally{B.value=!1}},_e=s=>{V.value=s.id,A.value=s.departmentId,S.value=!0},Ce=async()=>{E.value=!0;try{await sl({userId:V.value,departmentId:A.value}),U.success("分配成功"),S.value=!1,w()}finally{E.value=!1}},Ue=async s=>{V.value=s.id;const e=await nl(s.id);X.value=e.data,D.value=!0},xe=async()=>{var s;F.value=!0;try{const e=(s=Q.value)==null?void 0:s.getCheckedKeys(!1);await ol({userId:V.value,menuIds:e}),U.success("分配成功"),D.value=!1}finally{F.value=!1}},Ie=s=>{V.value=s.id,c.newPassword="",c.confirmPassword="",h.value=!0},Pe=async()=>{var e;if(await((e=Y.value)==null?void 0:e.validate())){q.value=!0;try{await ll({userId:V.value,newPassword:c.newPassword}),U.success("密码重置成功"),h.value=!1}finally{q.value=!1}}};return Fe(()=>{fe(),w()}),(s,e)=>{const $=r("el-icon"),i=r("el-button"),k=r("el-input"),f=r("el-form-item"),le=r("el-tree-select"),ae=r("el-option"),$e=r("el-select"),K=r("el-form"),_=r("el-table-column"),Re=r("el-tag"),Se=r("el-switch"),De=r("el-table"),he=r("el-pagination"),Ne=r("el-card"),te=r("el-radio"),ze=r("el-radio-group"),N=r("el-dialog"),Ae=r("el-checkbox"),Le=r("el-checkbox-group"),Me=r("el-tree"),C=se("permission"),Te=se("loading");return p(),G("div",dl,[a(Ne,null,{header:t(()=>[ue("div",ul,[e[26]||(e[26]=ue("span",null,"管理员管理",-1)),b((p(),v(i,{type:"primary",onClick:ge},{default:t(()=>[a($,null,{default:t(()=>[a(Ke(je))]),_:1}),e[25]||(e[25]=u("新增管理员 ",-1))]),_:1})),[[C,"system:admin:add"]])])]),default:t(()=>[a(K,{inline:!0,model:m,class:"search-form"},{default:t(()=>[a(f,{label:"关键词"},{default:t(()=>[a(k,{modelValue:m.keyword,"onUpdate:modelValue":e[0]||(e[0]=l=>m.keyword=l),placeholder:"用户名/姓名/手机号",clearable:"",onKeyup:qe(Z,["enter"])},null,8,["modelValue"])]),_:1}),a(f,{label:"部门"},{default:t(()=>[a(le,{modelValue:m.departmentId,"onUpdate:modelValue":e[1]||(e[1]=l=>m.departmentId=l),data:L.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"全部",clearable:"",style:{width:"200px"}},null,8,["modelValue","data"])]),_:1}),a(f,{label:"状态"},{default:t(()=>[a($e,{modelValue:m.status,"onUpdate:modelValue":e[2]||(e[2]=l=>m.status=l),placeholder:"全部",clearable:""},{default:t(()=>[a(ae,{label:"启用",value:1}),a(ae,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),a(f,null,{default:t(()=>[a(i,{type:"primary",onClick:Z},{default:t(()=>[...e[27]||(e[27]=[u("查询",-1)])]),_:1}),a(i,{onClick:ve},{default:t(()=>[...e[28]||(e[28]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),b((p(),v(De,{data:W.value},{default:t(()=>[a(_,{prop:"username",label:"用户名","min-width":"100"}),a(_,{prop:"realName",label:"姓名","min-width":"100"}),a(_,{prop:"departmentName",label:"部门","min-width":"120"}),a(_,{prop:"phone",label:"手机号","min-width":"120"}),a(_,{label:"角色","min-width":"150"},{default:t(({row:l})=>[(p(!0),G(ne,null,oe(l.roles,g=>(p(),v(Re,{key:g.id,size:"small",style:{"margin-right":"4px"}},{default:t(()=>[u(de(g.name),1)]),_:2},1024))),128))]),_:1}),a(_,{prop:"status",label:"状态",width:"80"},{default:t(({row:l})=>[b(a(Se,{modelValue:l.status,"onUpdate:modelValue":g=>l.status=g,"active-value":1,"inactive-value":0,disabled:l.username==="admin",onChange:g=>be(l)},null,8,["modelValue","onUpdate:modelValue","disabled","onChange"]),[[C,"system:admin:edit"]])]),_:1}),a(_,{prop:"lastLoginTime",label:"最后登录",width:"170"}),a(_,{label:"操作",width:"320",fixed:"right"},{default:t(({row:l})=>[b((p(),v(i,{link:"",type:"primary",onClick:g=>ye(l)},{default:t(()=>[...e[29]||(e[29]=[u("编辑",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>Ve(l)},{default:t(()=>[...e[30]||(e[30]=[u("分配角色",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>_e(l)},{default:t(()=>[...e[31]||(e[31]=[u("分配部门",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>Ue(l)},{default:t(()=>[...e[32]||(e[32]=[u("专属菜单",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"warning",onClick:g=>Ie(l)},{default:t(()=>[...e[33]||(e[33]=[u("重置密码",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"danger",onClick:g=>we(l),disabled:l.username==="admin"},{default:t(()=>[...e[34]||(e[34]=[u("删除",-1)])]),_:1},8,["onClick","disabled"])),[[C,"system:admin:delete"]])]),_:1})]),_:1},8,["data"])),[[Te,x.value]]),a(he,{"current-page":m.page,"onUpdate:currentPage":e[3]||(e[3]=l=>m.page=l),"page-size":m.pageSize,"onUpdate:pageSize":e[4]||(e[4]=l=>m.pageSize=l),"page-sizes":[10,20,50,100],total:H.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:w,onCurrentChange:w,class:"pagination"},null,8,["current-page","page-size","total"])]),_:1}),a(N,{modelValue:I.value,"onUpdate:modelValue":e[12]||(e[12]=l=>I.value=l),title:ie.value,width:"500px",onClose:ee},{footer:t(()=>[a(i,{onClick:e[11]||(e[11]=l=>I.value=!1)},{default:t(()=>[...e[37]||(e[37]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:ce,loading:T.value},{default:t(()=>[...e[38]||(e[38]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(K,{ref_key:"formRef",ref:M,model:n,rules:me,"label-width":"80px"},{default:t(()=>[P.value?re("",!0):(p(),v(f,{key:0,label:"用户名",prop:"username"},{default:t(()=>[a(k,{modelValue:n.username,"onUpdate:modelValue":e[5]||(e[5]=l=>n.username=l),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1})),P.value?re("",!0):(p(),v(f,{key:1,label:"密码",prop:"password"},{default:t(()=>[a(k,{modelValue:n.password,"onUpdate:modelValue":e[6]||(e[6]=l=>n.password=l),type:"password",placeholder:"请输入密码","show-password":""},null,8,["modelValue"])]),_:1})),a(f,{label:"姓名",prop:"realName"},{default:t(()=>[a(k,{modelValue:n.realName,"onUpdate:modelValue":e[7]||(e[7]=l=>n.realName=l),placeholder:"请输入姓名"},null,8,["modelValue"])]),_:1}),a(f,{label:"手机号",prop:"phone"},{default:t(()=>[a(k,{modelValue:n.phone,"onUpdate:modelValue":e[8]||(e[8]=l=>n.phone=l),placeholder:"请输入手机号"},null,8,["modelValue"])]),_:1}),a(f,{label:"邮箱",prop:"email"},{default:t(()=>[a(k,{modelValue:n.email,"onUpdate:modelValue":e[9]||(e[9]=l=>n.email=l),placeholder:"请输入邮箱"},null,8,["modelValue"])]),_:1}),a(f,{label:"状态",prop:"status"},{default:t(()=>[a(ze,{modelValue:n.status,"onUpdate:modelValue":e[10]||(e[10]=l=>n.status=l)},{default:t(()=>[a(te,{value:1},{default:t(()=>[...e[35]||(e[35]=[u("启用",-1)])]),_:1}),a(te,{value:0},{default:t(()=>[...e[36]||(e[36]=[u("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(N,{modelValue:R.value,"onUpdate:modelValue":e[15]||(e[15]=l=>R.value=l),title:"分配角色",width:"400px"},{footer:t(()=>[a(i,{onClick:e[14]||(e[14]=l=>R.value=!1)},{default:t(()=>[...e[39]||(e[39]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:ke,loading:B.value},{default:t(()=>[...e[40]||(e[40]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(Le,{modelValue:z.value,"onUpdate:modelValue":e[13]||(e[13]=l=>z.value=l)},{default:t(()=>[(p(!0),G(ne,null,oe(J.value,l=>(p(),v(Ae,{key:l.id,value:l.id,disabled:l.code==="super_admin"},{default:t(()=>[u(de(l.name),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),a(N,{modelValue:S.value,"onUpdate:modelValue":e[18]||(e[18]=l=>S.value=l),title:"分配部门",width:"400px"},{footer:t(()=>[a(i,{onClick:e[17]||(e[17]=l=>S.value=!1)},{default:t(()=>[...e[41]||(e[41]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Ce,loading:E.value},{default:t(()=>[...e[42]||(e[42]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(le,{modelValue:A.value,"onUpdate:modelValue":e[16]||(e[16]=l=>A.value=l),data:L.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"请选择部门",clearable:"",style:{width:"100%"}},null,8,["modelValue","data"])]),_:1},8,["modelValue"]),a(N,{modelValue:D.value,"onUpdate:modelValue":e[20]||(e[20]=l=>D.value=l),title:"分配专属菜单",width:"500px"},{footer:t(()=>[a(i,{onClick:e[19]||(e[19]=l=>D.value=!1)},{default:t(()=>[...e[43]||(e[43]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:xe,loading:F.value},{default:t(()=>[...e[44]||(e[44]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(Me,{ref_key:"menuTreeRef",ref:Q,data:O.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":X.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"]),a(N,{modelValue:h.value,"onUpdate:modelValue":e[24]||(e[24]=l=>h.value=l),title:"重置密码",width:"400px"},{footer:t(()=>[a(i,{onClick:e[23]||(e[23]=l=>h.value=!1)},{default:t(()=>[...e[45]||(e[45]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Pe,loading:q.value},{default:t(()=>[...e[46]||(e[46]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(K,{ref_key:"passwordFormRef",ref:Y,model:c,rules:pe,"label-width":"80px"},{default:t(()=>[a(f,{label:"新密码",prop:"newPassword"},{default:t(()=>[a(k,{modelValue:c.newPassword,"onUpdate:modelValue":e[21]||(e[21]=l=>c.newPassword=l),type:"password",placeholder:"请输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),a(f,{label:"确认密码",prop:"confirmPassword"},{default:t(()=>[a(k,{modelValue:c.confirmPassword,"onUpdate:modelValue":e[22]||(e[22]=l=>c.confirmPassword=l),type:"password",placeholder:"请再次输入密码","show-password":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),fl=He(rl,[["__scopeId","data-v-c05f7e98"]]);export{fl as default};