user.B0S-8age.js 12 KB

1234
  1. /*!
  2. Build based on gin-vue-admin
  3. Time : 1757946830000 */
  4. import{M as e,a,U as l,g as t,c as u,o,f as i,b as d,w as s,h as r,v as n,i as m,d as p,X as c,bo as v,E as h,bp as g,k as f,bq as y,br as b,bs as w,bt as V}from"./index.DlqNVRUO.js";import{g as I}from"./authority.DxsNNS-Z.js";import{C as k}from"./index.DPTPLkd0.js";import{_}from"./warningBar.DQ1jV9hi.js";import{S as N}from"./selectImage.CawoTkMe.js";import"./image.GvU-S7BA.js";import"./QR-code.BexEuyTh.js";import"./vue-cropper.es.DpMT2N2c.js";const U={class:"gva-search-box"},C={class:"gva-table-box"},x={class:"gva-btn-list"},z={class:"gva-pagination"},D={class:"flex w-full"},j={class:"dialog-footer"},S={class:"flex justify-between items-center"},q=Object.assign({name:"User"},{__name:"user",setup(q){const J=e(),M=a({username:"",nickname:"",phone:"",email:""}),O=()=>{F.value=1,$()},T=()=>{M.value={username:"",nickname:"",phone:"",email:""},$()},E=(e,a)=>{e&&e.forEach(e=>{if(e.children&&e.children.length){const l={authorityId:e.authorityId,authorityName:e.authorityName,children:[]};E(e.children,l.children),a.push(l)}else{const l={authorityId:e.authorityId,authorityName:e.authorityName};a.push(l)}})},F=a(1),B=a(0),P=a(10),R=a([]),A=e=>{P.value=e,$()},X=e=>{F.value=e,$()},$=async()=>{const e=await V({page:F.value,pageSize:P.value,...M.value});0===e.code&&(R.value=e.data.list,B.value=e.data.total,F.value=e.data.page,P.value=e.data.pageSize)};l(()=>R.value,()=>{L()});(async()=>{$();const e=await I();ee(e.data)})();const H=a(!1),K=a(null),Q=a({ID:"",userName:"",nickName:"",password:""}),W=()=>{const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";let a="";for(let l=0;l<12;l++)a+=e.charAt(Math.floor(70*Math.random()));Q.value.password=a,navigator.clipboard.writeText(a).then(()=>{h({type:"success",message:"密码已复制到剪贴板"})}).catch(()=>{h({type:"error",message:"复制失败,请手动复制"})})},Z=async()=>{if(!Q.value.password)return void h({type:"warning",message:"请输入或生成密码"});const e=await b({ID:Q.value.ID,password:Q.value.password});0===e.code?(h({type:"success",message:e.msg||"密码重置成功"}),H.value=!1):h({type:"error",message:e.msg||"密码重置失败"})},G=()=>{Q.value.password="",H.value=!1},L=()=>{R.value&&R.value.forEach(e=>{e.authorityIds=e.authorities&&e.authorities.map(e=>e.authorityId)})},Y=a([]),ee=e=>{Y.value=[],E(e,Y.value)},ae=a({userName:"",password:"",nickName:"",headerImg:"",authorityId:"",authorityIds:[],enable:1}),le=a({userName:[{required:!0,message:"请输入用户名",trigger:"blur"},{min:5,message:"最低5位字符",trigger:"blur"}],password:[{required:!0,message:"请输入用户密码",trigger:"blur"},{min:6,message:"最低6位字符",trigger:"blur"}],nickName:[{required:!0,message:"请输入用户昵称",trigger:"blur"}],phone:[{pattern:/^1([38][0-9]|4[014-9]|[59][0-35-9]|6[2567]|7[0-8])\d{8}$/,message:"请输入合法手机号",trigger:"blur"}],email:[{pattern:/^([0-9A-Za-z\-_.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g,message:"请输入正确的邮箱",trigger:"blur"}],authorityId:[{required:!0,message:"请选择用户角色",trigger:"blur"}]}),te=a(null),ue=async()=>{ae.value.authorityId=ae.value.authorityIds[0],te.value.validate(async e=>{if(e){const e={...ae.value};if("add"===de.value){0===(await w(e)).code&&(h({type:"success",message:"创建成功"}),await $(),ie())}if("edit"===de.value){0===(await g(e)).code&&(h({type:"success",message:"编辑成功"}),await $(),ie())}}})},oe=a(!1),ie=()=>{te.value.resetFields(),ae.value.headerImg="",ae.value.authorityIds=[],oe.value=!1},de=a("add"),se=()=>{de.value="add",oe.value=!0},re={},ne=async(e,a,l)=>{if(a)return void(l||(re[e.ID]=[...e.authorityIds]));await c();0===(await v({ID:e.ID,authorityIds:e.authorityIds})).code?h({type:"success",message:"角色设置成功"}):l?e.authorityIds=[l,...e.authorityIds]:(e.authorityIds=[...re[e.ID]],delete re[e.ID])};return(e,a)=>{const l=t("el-input"),v=t("el-form-item"),b=t("el-button"),w=t("el-form"),V=t("el-table-column"),I=t("el-cascader"),q=t("el-switch"),E=t("el-table"),L=t("el-pagination"),ee=t("el-dialog"),re=t("el-drawer");return o(),u("div",null,[i(_,{title:"注:右上角头像下拉可切换角色"}),d("div",U,[i(w,{ref:"searchForm",inline:!0,model:M.value},{default:s(()=>[i(v,{label:"用户名"},{default:s(()=>[i(l,{modelValue:M.value.username,"onUpdate:modelValue":a[0]||(a[0]=e=>M.value.username=e),placeholder:"用户名"},null,8,["modelValue"])]),_:1}),i(v,{label:"昵称"},{default:s(()=>[i(l,{modelValue:M.value.nickname,"onUpdate:modelValue":a[1]||(a[1]=e=>M.value.nickname=e),placeholder:"昵称"},null,8,["modelValue"])]),_:1}),i(v,{label:"手机号"},{default:s(()=>[i(l,{modelValue:M.value.phone,"onUpdate:modelValue":a[2]||(a[2]=e=>M.value.phone=e),placeholder:"手机号"},null,8,["modelValue"])]),_:1}),i(v,{label:"邮箱"},{default:s(()=>[i(l,{modelValue:M.value.email,"onUpdate:modelValue":a[3]||(a[3]=e=>M.value.email=e),placeholder:"邮箱"},null,8,["modelValue"])]),_:1}),i(v,null,{default:s(()=>[i(b,{type:"primary",icon:"search",onClick:O},{default:s(()=>[...a[17]||(a[17]=[r(" 查询 ",-1)])]),_:1}),i(b,{icon:"refresh",onClick:T},{default:s(()=>[...a[18]||(a[18]=[r(" 重置 ",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),d("div",C,[d("div",x,[i(b,{type:"primary",icon:"plus",onClick:se},{default:s(()=>[...a[19]||(a[19]=[r("新增用户",-1)])]),_:1})]),i(E,{data:R.value,"row-key":"ID"},{default:s(()=>[i(V,{align:"left",label:"头像","min-width":"75"},{default:s(e=>[i(k,{style:{"margin-top":"8px"},"pic-src":e.row.headerImg},null,8,["pic-src"])]),_:1}),i(V,{align:"left",label:"ID","min-width":"50",prop:"ID"}),i(V,{align:"left",label:"用户名","min-width":"150",prop:"userName"}),i(V,{align:"left",label:"昵称","min-width":"150",prop:"nickName"}),i(V,{align:"left",label:"手机号","min-width":"180",prop:"phone"}),i(V,{align:"left",label:"邮箱","min-width":"180",prop:"email"}),i(V,{align:"left",label:"用户角色","min-width":"200"},{default:s(e=>[i(I,{modelValue:e.row.authorityIds,"onUpdate:modelValue":a=>e.row.authorityIds=a,options:Y.value,"show-all-levels":!1,"collapse-tags":"",props:{multiple:!0,checkStrictly:!0,label:"authorityName",value:"authorityId",disabled:"disabled",emitPath:!1},clearable:!1,onVisibleChange:a=>{ne(e.row,a,0)},onRemoveTag:a=>{ne(e.row,!1,a)}},null,8,["modelValue","onUpdate:modelValue","options","onVisibleChange","onRemoveTag"])]),_:1}),i(V,{align:"left",label:"启用","min-width":"150"},{default:s(e=>[i(q,{modelValue:e.row.enable,"onUpdate:modelValue":a=>e.row.enable=a,"inline-prompt":"","active-value":1,"inactive-value":2,onChange:()=>{(async e=>{ae.value=JSON.parse(JSON.stringify(e)),await c();const a={...ae.value};0===(await g(a)).code&&(h({type:"success",message:"".concat(2===a.enable?"禁用":"启用","成功")}),await $(),ae.value.headerImg="",ae.value.authorityIds=[])})(e.row)}},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),i(V,{label:"操作","min-width":n(J).operateMinWith,fixed:"right"},{default:s(e=>[i(b,{type:"primary",link:"",icon:"delete",onClick:a=>(async e=>{f.confirm("确定要删除吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{0===(await y({id:e.ID})).code&&(h.success("删除成功"),await $())})})(e.row)},{default:s(()=>[...a[20]||(a[20]=[r("删除",-1)])]),_:1},8,["onClick"]),i(b,{type:"primary",link:"",icon:"edit",onClick:a=>{return l=e.row,de.value="edit",ae.value=JSON.parse(JSON.stringify(l)),void(oe.value=!0);var l}},{default:s(()=>[...a[21]||(a[21]=[r("编辑",-1)])]),_:1},8,["onClick"]),i(b,{type:"primary",link:"",icon:"magic-stick",onClick:a=>{return l=e.row,Q.value.ID=l.ID,Q.value.userName=l.userName,Q.value.nickName=l.nickName,Q.value.password="",void(H.value=!0);var l}},{default:s(()=>[...a[22]||(a[22]=[r("重置密码",-1)])]),_:1},8,["onClick"])]),_:1},8,["min-width"])]),_:1},8,["data"]),d("div",z,[i(L,{"current-page":F.value,"page-size":P.value,"page-sizes":[10,30,50,100],total:B.value,layout:"total, sizes, prev, pager, next, jumper",onCurrentChange:X,onSizeChange:A},null,8,["current-page","page-size","total"])])]),i(ee,{modelValue:H.value,"onUpdate:modelValue":a[7]||(a[7]=e=>H.value=e),title:"重置密码",width:"500px","close-on-click-modal":!1,"close-on-press-escape":!1},{footer:s(()=>[d("div",j,[i(b,{onClick:G},{default:s(()=>[...a[24]||(a[24]=[r("取 消",-1)])]),_:1}),i(b,{type:"primary",onClick:Z},{default:s(()=>[...a[25]||(a[25]=[r("确 定",-1)])]),_:1})])]),default:s(()=>[i(w,{model:Q.value,ref_key:"resetPwdForm",ref:K,"label-width":"100px"},{default:s(()=>[i(v,{label:"用户账号"},{default:s(()=>[i(l,{modelValue:Q.value.userName,"onUpdate:modelValue":a[4]||(a[4]=e=>Q.value.userName=e),disabled:""},null,8,["modelValue"])]),_:1}),i(v,{label:"用户昵称"},{default:s(()=>[i(l,{modelValue:Q.value.nickName,"onUpdate:modelValue":a[5]||(a[5]=e=>Q.value.nickName=e),disabled:""},null,8,["modelValue"])]),_:1}),i(v,{label:"新密码"},{default:s(()=>[d("div",D,[i(l,{class:"flex-1",modelValue:Q.value.password,"onUpdate:modelValue":a[6]||(a[6]=e=>Q.value.password=e),placeholder:"请输入新密码","show-password":""},null,8,["modelValue"]),i(b,{type:"primary",onClick:W,style:{"margin-left":"10px"}},{default:s(()=>[...a[23]||(a[23]=[r(" 生成随机密码 ",-1)])]),_:1})])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),i(re,{modelValue:oe.value,"onUpdate:modelValue":a[16]||(a[16]=e=>oe.value=e),size:n(J).drawerSize,"show-close":!1,"close-on-press-escape":!1,"close-on-click-modal":!1},{header:s(()=>[d("div",S,[a[28]||(a[28]=d("span",{class:"text-lg"},"用户",-1)),d("div",null,[i(b,{onClick:ie},{default:s(()=>[...a[26]||(a[26]=[r("取 消",-1)])]),_:1}),i(b,{type:"primary",onClick:ue},{default:s(()=>[...a[27]||(a[27]=[r("确 定",-1)])]),_:1})])])]),default:s(()=>[i(w,{ref_key:"userForm",ref:te,rules:le.value,model:ae.value,"label-width":"80px"},{default:s(()=>["add"===de.value?(o(),m(v,{key:0,label:"用户名",prop:"userName"},{default:s(()=>[i(l,{modelValue:ae.value.userName,"onUpdate:modelValue":a[8]||(a[8]=e=>ae.value.userName=e)},null,8,["modelValue"])]),_:1})):p("",!0),"add"===de.value?(o(),m(v,{key:1,label:"密码",prop:"password"},{default:s(()=>[i(l,{modelValue:ae.value.password,"onUpdate:modelValue":a[9]||(a[9]=e=>ae.value.password=e)},null,8,["modelValue"])]),_:1})):p("",!0),i(v,{label:"昵称",prop:"nickName"},{default:s(()=>[i(l,{modelValue:ae.value.nickName,"onUpdate:modelValue":a[10]||(a[10]=e=>ae.value.nickName=e)},null,8,["modelValue"])]),_:1}),i(v,{label:"手机号",prop:"phone"},{default:s(()=>[i(l,{modelValue:ae.value.phone,"onUpdate:modelValue":a[11]||(a[11]=e=>ae.value.phone=e)},null,8,["modelValue"])]),_:1}),i(v,{label:"邮箱",prop:"email"},{default:s(()=>[i(l,{modelValue:ae.value.email,"onUpdate:modelValue":a[12]||(a[12]=e=>ae.value.email=e)},null,8,["modelValue"])]),_:1}),i(v,{label:"用户角色",prop:"authorityId"},{default:s(()=>[i(I,{modelValue:ae.value.authorityIds,"onUpdate:modelValue":a[13]||(a[13]=e=>ae.value.authorityIds=e),style:{width:"100%"},options:Y.value,"show-all-levels":!1,props:{multiple:!0,checkStrictly:!0,label:"authorityName",value:"authorityId",disabled:"disabled",emitPath:!1},clearable:!1},null,8,["modelValue","options"])]),_:1}),i(v,{label:"启用",prop:"disabled"},{default:s(()=>[i(q,{modelValue:ae.value.enable,"onUpdate:modelValue":a[14]||(a[14]=e=>ae.value.enable=e),"inline-prompt":"","active-value":1,"inactive-value":2},null,8,["modelValue"])]),_:1}),i(v,{label:"头像","label-width":"80px"},{default:s(()=>[i(N,{modelValue:ae.value.headerImg,"onUpdate:modelValue":a[15]||(a[15]=e=>ae.value.headerImg=e)},null,8,["modelValue"])]),_:1})]),_:1},8,["rules","model"])]),_:1},8,["modelValue","size"])])}}});export{q as default};