user.1706520491627.js 5.5 KB

1
  1. import{r as e,b as a,c as l,d as t,e as o,k as r,h as i,X as d,a1 as n,g as u,m as s,a2 as p,L as m}from"./index.1706520491627.js";const c={class:"userManager"},g={class:"p-4 bg-white rounded-lg overflow-hidden flex flex-wrap gap-4"},v={class:"mt-4 p-4 bg-white rounded-lg overflow-hidden w-full"},h={__name:"user",setup(h){const f={mail:"",password:"",manager:0},_=e(!1),b=e(Object.assign({},f)),w=e(!1),V=e([]),y=e({email:""}),k=()=>{b.value=e({mail:"",password:"",manager:""}).value,w.value=!0},C=()=>{d({url:"/admin/userUpdate",method:"post",data:b.value}).then((e=>{1===e.code&&(w.value=!1,j()),m.success(e.msg)}))},z=e({current_page:1,per_page:50,total:0,refresh(e){z.value.current_page=e,j()},sizes(e){z.value.per_page=e,j()}}),U=e([]),x={order:"desc",prop:"id"},j=()=>{d({url:"/admin/UserList",method:"post",data:{search:y.value,page:z.value.current_page,limit:z.value.per_page,sort:x}}).then((e=>{let a=e.data;U.value=a.data,Object.assign(z.value,a)}))},I=({column:e,prop:a,order:l})=>{let t="asc";"descending"===l&&(t="desc"),x.order=t,x.prop=a,j()};return j(),(e,h)=>{const x=a("el-input"),L=a("el-button"),O=a("el-table-column"),P=a("el-tag"),S=a("el-table"),D=a("el-pagination"),A=a("el-dialog"),M=a("el-form-item"),R=a("el-option"),X=a("el-select"),q=a("el-form"),B=a("el-link");return l(),t("div",c,[o("div",g,[r(x,{modelValue:y.value.email,"onUpdate:modelValue":h[0]||(h[0]=e=>y.value.email=e),style:{width:"200px"},placeholder:"邮箱",clearable:""},null,8,["modelValue"]),r(L,{onClick:j,type:"primary"},{default:i((()=>[n("搜索")])),_:1}),r(L,{type:"danger",onClick:k},{default:i((()=>[n("添加新用户")])),_:1})]),o("div",v,[r(S,{onSortChange:I,data:U.value,height:"calc(100vh - 203px)",he:""},{default:i((()=>[r(O,{prop:"id",sortable:"custom",label:"用户ID",align:"center","min-width":"100"}),r(O,{prop:"mail",label:"邮箱",align:"center","min-width":"200"}),r(O,{prop:"login_ip",label:"登录IP",align:"center","min-width":"200"}),r(O,{prop:"login_time",sortable:"custom",label:"上次登录时间",align:"center","min-width":"200"}),r(O,{prop:"register_ip",label:"注册IP",align:"center","min-width":"200"}),r(O,{prop:"create_time",sortable:"custom",label:"注册时间",align:"center","min-width":"200"}),r(O,{prop:"login_fail_count",sortable:"custom",label:"登录失败次数",align:"center","min-width":"150"}),r(O,{prop:"manager",label:"权限",align:"center","min-width":"100"},{default:i((e=>[0===e.row.manager?(l(),u(P,{key:0,type:"info",size:"small"},{default:i((()=>[n("用户")])),_:1})):s("",!0),1===e.row.manager?(l(),u(P,{key:1,type:"danger",size:"small"},{default:i((()=>[n("管理员")])),_:1})):s("",!0)])),_:1}),r(O,{fixed:"right",label:"操作","min-width":"180",align:"center"},{default:i((e=>[r(L,{type:"info",onClick:a=>{return l=e.row,_.value=!0,V.value=[],void d({url:"/admin/userLoginRecord",method:"post",data:{user_id:l.id}}).then((e=>{1===e.code&&(V.value=e.data)}));var l},size:"small"},{default:i((()=>[n("登录记录")])),_:2},1032,["onClick"]),r(L,{type:"primary",onClick:a=>{return l=e.row,b.value=Object.assign({},f,l),void(w.value=!0);var l},size:"small"},{default:i((()=>[n("操作")])),_:2},1032,["onClick"])])),_:1})])),_:1},8,["data"]),r(D,{"page-sizes":[15,20,30,40,50,100],onCurrentChange:z.value.refresh,class:"mt-6",layout:"sizes,total,prev,pager,jumper","page-size":z.value.per_page,onSizeChange:z.value.sizes,total:z.value.total},null,8,["onCurrentChange","page-size","onSizeChange","total"])]),r(A,{title:"登录记录(最近100条记录)",modelValue:_.value,"onUpdate:modelValue":h[1]||(h[1]=e=>_.value=e),width:1e3,"align-center":"","close-on-click-modal":!1},{default:i((()=>[r(S,{border:"",data:V.value,height:"calc(100vh - 203px)",he:""},{default:i((()=>[r(O,{prop:"ip",label:"登录IP",align:"center",width:"180"}),r(O,{prop:"create_time",label:"登录时间",align:"center",width:"180"}),r(O,{prop:"user_agent",label:"User-Agent",align:"center","min-width":"200"})])),_:1},8,["data"])])),_:1},8,["modelValue"]),r(A,{title:"编辑用户",modelValue:w.value,"onUpdate:modelValue":h[7]||(h[7]=e=>w.value=e),width:600,"align-center":"","close-on-click-modal":!1},{default:i((()=>[r(q,{modelValue:b.value,"onUpdate:modelValue":h[5]||(h[5]=e=>b.value=e),"label-width":"100px","label-position":"top"},{default:i((()=>[r(M,{label:"邮箱"},{default:i((()=>[r(x,{modelValue:b.value.mail,"onUpdate:modelValue":h[2]||(h[2]=e=>b.value.mail=e),placeholder:"请输入邮箱"},null,8,["modelValue"])])),_:1}),r(M,{label:"设置密码"},{default:i((()=>[r(x,{modelValue:b.value.password,"onUpdate:modelValue":h[3]||(h[3]=e=>b.value.password=e),placeholder:"请设置新密码,否则请留空"},null,8,["modelValue"])])),_:1}),r(M,{label:"是否管理员"},{default:i((()=>[r(X,{modelValue:b.value.manager,"onUpdate:modelValue":h[4]||(h[4]=e=>b.value.manager=e),class:"w-full",placeholder:"请选择"},{default:i((()=>[r(R,{label:"用户",value:0}),r(R,{label:"管理员",value:1})])),_:1},8,["modelValue"])])),_:1})])),_:1},8,["modelValue"]),r(L,{class:"mt-4 w-full",onClick:C,type:"primary",size:"large"},{default:i((()=>[n("提交")])),_:1}),b.value.id?(l(),u(B,{key:0,class:"mt-6",type:"danger",onClick:h[6]||(h[6]=e=>(async e=>{try{await p.confirm("您确定删除当前用户?删除后数据将全部删除!","危险操作警告"),1===(await d({url:"/admin/userDelete",method:"post",data:{id:e}})).code&&(m.success("已删除当前用户所有数据"),w.value=!1,j())}catch(a){m.info("操作已取消")}})(b.value.id))},{default:i((()=>[n("删除用户")])),_:1})):s("",!0)])),_:1},8,["modelValue"])])}}};export{h as default};