import{M as ue,s as pe,p as me,j as R,a3 as ce,k as ge,m as fe,am as i,aw as _e,o as _,a as $,_ as a,U as l,Y as u,u as r,ae as we,V as E,T as x,X as S,b as F,F as ye,ad as be}from"./vue.aade88c7.js";import{H as y,U as b,u as he,E as T,f as L}from"./index.189c97df.js";import{r as ve}from"./ruleReg.f85b89d8.js";const h={async init(){let s=b.admin.init;return await y.get(s)},async list(s){let d=b.admin.list;return await y.get(d,s)},async add(s){let d=b.admin.add;return await y.post(d,s)},async edit(s){let d=b.admin.edit;return await y.post(d,s)},async delete(s){let d=b.admin.delete;return await y.get(d,{ids:s})},async detail(s){let d=b.admin.detail;return await y.get(d,{id:s})},async resetPwd(s,d){let c=b.admin.resetPwd;return await y.get(c,{id:s,password:d})}},xe={class:"p20"},Ce={class:"yc_pagebox"},ke=F("div",{class:"height20"},null,-1),Te=ue({__name:"index",setup(s){const d=he(),{themeConfig:c}=pe(d),k=me(()=>c.value),P=R(),V=R([]);let e=ce({params:{pageSize:k.value.pageSize,page:1,keyword:""},pagination:{currentPage:1,pageSize:k.value.pageSize,total:100},loading:!1,tableData:[],dialog:{show:!1,title:"添加",isLoading:!1},roleList:[],form:{}});const N=()=>({id:0,name:"",password:"",phone:"",role_id:"",valid:1});ge(()=>e.params.keyword,()=>{e.params.page=1});const K=t=>{e.params.pageSize=t,w()},A=t=>{e.params.page=t,w()},H=async()=>{e.params.page=1,await w()},I=async()=>{let t=await h.init();t.code==0&&(e.roleList=t.data.roleList,console.log("lzj500🚀 ~ file: index.vue:170 ~ init ~ roleList:",e.roleList))},w=async()=>{e.loading=!0;const t=await h.list(e.params);e.loading=!1,t.code==0&&(e.tableData=t.data.data,e.pagination.total=t.data.total,e.pagination.currentPage=t.data.current_page,e.pagination.pageSize=t.data.per_page,console.log("lzj500🚀 ~ file: index.vue:95 ~ getList ~ res:",t))},O=t=>{V.value=t,console.log("lzj500🚀 ~ file: index.vue:203 ~ handleTableDataSelectionChange ~ val:",t)},z=()=>{e.dialog.show=!1},X=()=>{e.dialog.show=!0,e.dialog.title="添加管理员",e.form=N(),console.log("lzj500🚀 ~ file: index.vue:160 ~ addPage ~ dialog:",e.dialog)},Y=async t=>{e.dialog.show=!0,e.dialog.title="编辑管理员",e.form=t,await G(t.id)},G=async t=>{let n=await h.detail(t);n.code==0&&(e.form=n.data)},J=t=>{t&&t.validate(async n=>{var g;if(!n)return console.log("error submit!"),!1;let p=null;e.dialog.isLoading=!0,(g=e.form)!=null&&g.id?p=await h.edit(e.form):p=await h.add(e.form),e.dialog.isLoading=!1,p.code==0&&(T.success(p.msg),H(),z())})},Q=t=>{L.confirm("删除后不可恢复,确定要删除该记录吗?","警告",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{U(t.id)}).catch(()=>{})},W=t=>{if(V.value.length==0){T.error("请选择要删除的记录");return}let n=V.value.map(p=>p.id).join(",");L.confirm("删除后不可恢复,确定要删除选中记录吗?","警告",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{U(n)}).catch(()=>{})},U=async t=>{e.loading=!0;let n=await h.delete(t);e.loading=!1,n.code==0&&await w()},Z=t=>{L.prompt("请填写重置的密码","重置密码",{confirmButtonText:"确定",cancelButtonText:"取消",inputPattern:/^[\w_-]{6,16}$/,inputErrorMessage:"密码强度不符合要求!密码最短6位,最长16位,支持字母或数字"}).then(async({value:n})=>{let p=await h.resetPwd(t.id,n);p.code==0&&T.success(p.msg)}).catch(()=>{})};return fe(async()=>{w(),I()}),(t,n)=>{const p=i("el-text"),g=i("el-input"),ee=i("ele-Search"),ae=i("el-icon"),f=i("el-button"),B=i("el-col"),te=i("el-row"),D=i("el-card"),m=i("el-table-column"),j=i("el-tag"),le=i("el-table"),oe=i("el-pagination"),v=i("el-form-item"),ne=i("el-option"),re=i("el-select"),q=i("el-radio"),ie=i("el-radio-group"),se=i("el-form"),de=i("vuecmf-dialog"),M=_e("loading");return _(),$("div",xe,[a(D,{class:"box-card"},{default:l(()=>[a(te,null,{default:l(()=>[a(B,{span:12},{default:l(()=>[a(p,{class:"mx-1"},{default:l(()=>[u("关键词:")]),_:1}),a(g,{class:"width160",placeholder:"请输入关键词",modelValue:r(e).params.keyword,"onUpdate:modelValue":n[0]||(n[0]=o=>r(e).params.keyword=o),onKeyup:we(w,["enter","native"])},null,8,["modelValue","onKeyup"]),a(f,{type:"primary",class:"ml10",onClick:w},{default:l(()=>[a(ae,null,{default:l(()=>[a(ee)]),_:1}),u(" 查询 ")]),_:1})]),_:1}),a(B,{span:12,class:"tr"},{default:l(()=>[a(f,{type:"primary",onClick:X},{default:l(()=>[u("新增")]),_:1}),a(f,{type:"danger",onClick:W},{default:l(()=>[u("删除")]),_:1})]),_:1})]),_:1})]),_:1}),E((_(),x(D,{class:"box-card mt20"},{default:l(()=>[a(le,{data:r(e).tableData,onSelectionChange:O},{default:l(()=>[a(m,{type:"selection",width:"55"}),a(m,{fixed:"",prop:"id",label:"ID",width:"60"}),a(m,{fixed:"",prop:"name",label:"账号",width:"150"}),a(m,{prop:"phone",label:"手机号",width:""}),a(m,{prop:"login_count",label:"登录次数",width:"120"}),a(m,{prop:"login_last_time",label:"最后登录时间","min-width":"180"}),a(m,{prop:"valid",label:"状态",width:""},{default:l(o=>[o.row.valid==1?(_(),x(j,{key:0},{default:l(()=>[u("启用")]),_:1})):S("",!0),o.row.valid==0?(_(),x(j,{key:1,type:"danger"},{default:l(()=>[u("禁用")]),_:1})):S("",!0)]),_:1}),a(m,{prop:"role.name",label:"角色",width:"120"}),a(m,{fixed:"right",label:"操作",width:"200"},{default:l(o=>[a(f,{link:"",type:"primary",onClick:C=>Z(o.row)},{default:l(()=>[u("重置密码")]),_:2},1032,["onClick"]),a(f,{link:"",type:"primary",onClick:C=>Y(o.row)},{default:l(()=>[u("编辑")]),_:2},1032,["onClick"]),a(f,{link:"",type:"danger",onClick:C=>Q(o.row)},{default:l(()=>[u("删除")]),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"]),F("div",Ce,[a(oe,{"current-page":r(e).pagination.currentPage,"onUpdate:currentPage":n[1]||(n[1]=o=>r(e).pagination.currentPage=o),"page-size":r(e).pagination.pageSize,"onUpdate:pageSize":n[2]||(n[2]=o=>r(e).pagination.pageSize=o),"page-sizes":k.value.pageSizeArray,layout:"total, sizes, prev, pager, next, jumper",total:r(e).pagination.total,onSizeChange:K,onCurrentChange:A},null,8,["current-page","page-size","page-sizes","total"])])]),_:1})),[[M,r(e).loading]]),a(de,{width:"500px",model_value:r(e).dialog.show,title:r(e).dialog.title,onClose:z},{content:l(()=>[E((_(),x(se,{model:r(e).form,"label-width":"120px",ref_key:"formRef",ref:P},{default:l(()=>[a(v,{label:"账号",prop:"name",rules:[{required:!0,message:"请填写账号",trigger:"blur"}]},{default:l(()=>[a(g,{modelValue:r(e).form.name,"onUpdate:modelValue":n[3]||(n[3]=o=>r(e).form.name=o),placeholder:"账号提交后不能修改",disabled:r(e).form.id>0},null,8,["modelValue","disabled"])]),_:1}),a(v,{label:"真实姓名",prop:"real_name",rules:[{required:!0,message:"请填写真实姓名",trigger:"blur"}]},{default:l(()=>[a(g,{modelValue:r(e).form.real_name,"onUpdate:modelValue":n[4]||(n[4]=o=>r(e).form.real_name=o),placeholder:"请填写真实姓名"},null,8,["modelValue"])]),_:1}),a(v,{label:"手机号",prop:"phone",rules:[{required:!0,message:"请填写手机号",trigger:"blur"},{validator:r(ve).phoneReg(r(e).form.phone),message:"请填写正确的手机号",trigger:"blur"}]},{default:l(()=>[a(g,{modelValue:r(e).form.phone,"onUpdate:modelValue":n[5]||(n[5]=o=>r(e).form.phone=o),placeholder:"填写手机号码"},null,8,["modelValue"])]),_:1},8,["rules"]),r(e).form.id==0?(_(),x(v,{key:0,label:"登录密码",prop:"password",rules:[{required:!0,message:"请填写登录密码",trigger:"blur"}]},{default:l(()=>[a(g,{modelValue:r(e).form.password,"onUpdate:modelValue":n[6]||(n[6]=o=>r(e).form.password=o),type:"password",placeholder:"建议密码包含字母和数字","show-password":""},null,8,["modelValue"])]),_:1})):S("",!0),a(v,{label:"角色",prop:"role_id",rules:[{required:!0,message:"请选择角色",trigger:"blur"}]},{default:l(()=>[a(re,{modelValue:r(e).form.role_id,"onUpdate:modelValue":n[7]||(n[7]=o=>r(e).form.role_id=o),placeholder:"请选择角色"},{default:l(()=>[(_(!0),$(ye,null,be(r(e).roleList.sort((o,C)=>C.valid-o.valid),(o,C)=>(_(),x(ne,{key:o.id,label:o.name,value:o.id,disabled:!o.valid},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(v,{label:"状态",prop:"valid",rules:[{required:!0,message:"请选择状态",trigger:"blur"}]},{default:l(()=>[a(ie,{modelValue:r(e).form.valid,"onUpdate:modelValue":n[8]||(n[8]=o=>r(e).form.valid=o)},{default:l(()=>[a(q,{label:1},{default:l(()=>[u("启用")]),_:1}),a(q,{label:0},{default:l(()=>[u("禁用")]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])),[[M,r(e).dialog.isLoading]]),ke]),footer:l(()=>[a(f,{type:"default",onClick:z},{default:l(()=>[u("取消")]),_:1}),a(f,{type:"primary",onClick:n[9]||(n[9]=o=>J(P.value))},{default:l(()=>[u("提交")]),_:1})]),_:1},8,["model_value","title"])])}}});export{Te as default}; //# sourceMappingURL=index.1a217171.js.map