import{C as Ye,a as je,d as Ae,r as _,O as te,a2 as Qe,S as He,a3 as Je,j as d,H as ae,c as S,o as u,e as t,w as a,f as h,P as L,k as o,F as k,l as oe,I as T,J as D,h as r,m as g,R as ne,i as y,B as se}from"./index-CrAWI0wi.js";import{d as Ge,l as We,f as ue,h as Xe,i as Ze,r as el,j as ll,k as tl}from"./user-Bxl06CMk.js";const al={class:"app-container"},ol={class:"head-container"},nl={class:"head-container"},sl={class:"dialog-footer"},ul={class:"el-upload__tip text-center"},dl={class:"el-upload__tip"},rl={class:"dialog-footer"},il=Ye({name:"User"}),cl=Object.assign(il,{setup(pl){const de=je(),{proxy:i}=Ae(),{sys_normal_disable:H,sys_user_sex:re}=i.useDict("sys_normal_disable","sys_user_sex"),J=_([]),x=_(!1),z=_(!0),P=_(!0),E=_([]),G=_(!0),W=_(!0),K=_(0),M=_(""),$=_([]),F=_(""),Y=_(void 0),ie=_(void 0),j=_([]),A=_([]),b=te({open:!1,title:"",isUploading:!1,updateSupport:0,headers:{Authorization:"Bearer "+Qe()},url:"/prod-api/system/user/importData"}),I=_([{key:0,label:"用户编号",visible:!0},{key:1,label:"用户名称",visible:!0},{key:2,label:"用户昵称",visible:!0},{key:3,label:"部门",visible:!0},{key:4,label:"手机号码",visible:!0},{key:5,label:"状态",visible:!0},{key:6,label:"创建时间",visible:!0}]),pe=te({form:{},queryParams:{pageNum:1,pageSize:10,userName:void 0,phonenumber:void 0,status:void 0,deptId:void 0},rules:{userName:[{required:!0,message:"用户名称不能为空",trigger:"blur"},{min:2,max:20,message:"用户名称长度必须介于 2 和 20 之间",trigger:"blur"}],nickName:[{required:!0,message:"用户昵称不能为空",trigger:"blur"}],password:[{required:!0,message:"用户密码不能为空",trigger:"blur"},{min:5,max:20,message:"用户密码长度必须介于 5 和 20 之间",trigger:"blur"},{pattern:/^[^<>"'|\\]+$/,message:`不能包含非法字符:< > " ' \\ |`,trigger:"blur"}],email:[{type:"email",message:"请输入正确的邮箱地址",trigger:["blur","change"]}],phonenumber:[{pattern:/^1[3|4|5|6|7|8|9][0-9]\d{8}$/,message:"请输入正确的手机号码",trigger:"blur"}]}}),{queryParams:f,form:s,rules:me}=He(pe),fe=(n,e)=>n?e.label.indexOf(n)!==-1:!0;Je(F,n=>{i.$refs.deptTreeRef.filter(n)});function ce(){Ge().then(n=>{Y.value=n.data})}function U(){z.value=!0,We(i.addDateRange(f.value,$.value)).then(n=>{z.value=!1,J.value=n.rows,K.value=n.total})}function ve(n){f.value.deptId=n.id,R()}function R(){f.value.pageNum=1,U()}function _e(){$.value=[],i.resetForm("queryRef"),f.value.deptId=void 0,i.$refs.tree.setCurrentKey(null),R()}function X(n){const e=n.userId||E.value;i.$modal.confirm('是否确认删除用户编号为"'+e+'"的数据项?').then(function(){return Xe(e)}).then(()=>{U(),i.$modal.msgSuccess("删除成功")}).catch(()=>{})}function be(){i.download("system/user/export",{...f.value},`user_${new Date().getTime()}.xlsx`)}function ge(n){let e=n.status==="0"?"启用":"停用";i.$modal.confirm('确认要"'+e+'""'+n.userName+'"用户吗?').then(function(){return Ze(n.userId,n.status)}).then(()=>{i.$modal.msgSuccess(e+"成功")}).catch(function(){n.status=n.status==="0"?"1":"0"})}function ye(n){const e=n.userId;de.push("/system/user-auth/role/"+e)}function ke(n){i.$prompt('请输入"'+n.userName+'"的新密码',"提示",{confirmButtonText:"确定",cancelButtonText:"取消",closeOnClickModal:!1,inputPattern:/^.{5,20}$/,inputErrorMessage:"用户密码长度必须介于 5 和 20 之间",inputValidator:e=>{if(/<|>|"|'|\||\\/.test(e))return`不能包含非法字符:< > " ' \\ |`}}).then(({value:e})=>{el(n.userId,e).then(p=>{i.$modal.msgSuccess("修改成功,新密码是:"+e)})}).catch(()=>{})}function he(n){E.value=n.map(e=>e.userId),G.value=n.length!=1,W.value=!n.length}function Ve(){b.title="用户导入",b.open=!0}function we(){i.download("system/user/importTemplate",{},`user_template_${new Date().getTime()}.xlsx`)}const xe=(n,e,p)=>{b.isUploading=!0},Ie=(n,e,p)=>{b.open=!1,b.isUploading=!1,i.$refs.uploadRef.handleRemove(e),i.$alert("
","导入结果",{dangerouslyUseHTMLString:!0}),U()};function Ue(){i.$refs.uploadRef.submit()}function Q(){s.value={userId:void 0,deptId:void 0,userName:void 0,nickName:void 0,password:void 0,phonenumber:void 0,email:void 0,sex:void 0,status:"0",remark:void 0,postIds:[],roleIds:[]},i.resetForm("userRef")}function Ce(){x.value=!1,Q()}function Ne(){Q(),ue().then(n=>{j.value=n.posts,A.value=n.roles,x.value=!0,M.value="添加用户",s.value.password=ie.value})}function Z(n){Q();const e=n.userId||E.value;ue(e).then(p=>{s.value=p.data,j.value=p.posts,A.value=p.roles,s.value.postIds=p.postIds,s.value.roleIds=p.roleIds,x.value=!0,M.value="修改用户",s.password=""})}function Se(){i.$refs.userRef.validate(n=>{n&&(s.value.userId!=null?ll(s.value).then(e=>{i.$modal.msgSuccess("修改成功"),x.value=!1,U()}):tl(s.value).then(e=>{i.$modal.msgSuccess("新增成功"),x.value=!1,U()}))})}return ce(),U(),(n,e)=>{const p=d("el-input"),$e=d("el-tree"),m=d("el-col"),c=d("el-form-item"),B=d("el-option"),q=d("el-select"),Re=d("el-date-picker"),v=d("el-button"),ee=d("el-form"),Te=d("right-toolbar"),C=d("el-row"),V=d("el-table-column"),De=d("el-switch"),O=d("el-tooltip"),Pe=d("el-table"),Fe=d("pagination"),Be=d("el-tree-select"),qe=d("el-radio"),Oe=d("el-radio-group"),le=d("el-dialog"),Le=d("upload-filled"),ze=d("el-icon"),Ee=d("el-checkbox"),Ke=d("el-upload"),w=ae("hasPermi"),Me=ae("loading");return u(),S("div",al,[t(C,{gutter:20},{default:a(()=>[t(m,{span:4,xs:24},{default:a(()=>[h("div",ol,[t(p,{modelValue:o(F),"onUpdate:modelValue":e[0]||(e[0]=l=>L(F)?F.value=l:null),placeholder:"请输入部门名称",clearable:"","prefix-icon":"Search",style:{"margin-bottom":"20px"}},null,8,["modelValue"])]),h("div",nl,[t($e,{data:o(Y),props:{label:"label",children:"children"},"expand-on-click-node":!1,"filter-node-method":fe,ref:"deptTreeRef","node-key":"id","highlight-current":"","default-expand-all":"",onNodeClick:ve},null,8,["data"])])]),_:1}),t(m,{span:20,xs:24},{default:a(()=>[k(t(ee,{model:o(f),ref:"queryRef",inline:!0,"label-width":"68px"},{default:a(()=>[t(c,{label:"用户名称",prop:"userName"},{default:a(()=>[t(p,{modelValue:o(f).userName,"onUpdate:modelValue":e[1]||(e[1]=l=>o(f).userName=l),placeholder:"请输入用户名称",clearable:"",style:{width:"240px"},onKeyup:oe(R,["enter"])},null,8,["modelValue"])]),_:1}),t(c,{label:"手机号码",prop:"phonenumber"},{default:a(()=>[t(p,{modelValue:o(f).phonenumber,"onUpdate:modelValue":e[2]||(e[2]=l=>o(f).phonenumber=l),placeholder:"请输入手机号码",clearable:"",style:{width:"240px"},onKeyup:oe(R,["enter"])},null,8,["modelValue"])]),_:1}),t(c,{label:"状态",prop:"status"},{default:a(()=>[t(q,{modelValue:o(f).status,"onUpdate:modelValue":e[3]||(e[3]=l=>o(f).status=l),placeholder:"用户状态",clearable:"",style:{width:"240px"}},{default:a(()=>[(u(!0),S(T,null,D(o(H),l=>(u(),r(B,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(c,{label:"创建时间",style:{width:"308px"}},{default:a(()=>[t(Re,{modelValue:o($),"onUpdate:modelValue":e[4]||(e[4]=l=>L($)?$.value=l:null),"value-format":"YYYY-MM-DD",type:"daterange","range-separator":"-","start-placeholder":"开始日期","end-placeholder":"结束日期"},null,8,["modelValue"])]),_:1}),t(c,null,{default:a(()=>[t(v,{type:"primary",icon:"Search",onClick:R},{default:a(()=>e[23]||(e[23]=[g("搜索")])),_:1}),t(v,{icon:"Refresh",onClick:_e},{default:a(()=>e[24]||(e[24]=[g("重置")])),_:1})]),_:1})]),_:1},8,["model"]),[[ne,o(P)]]),t(C,{gutter:10,class:"mb8"},{default:a(()=>[t(m,{span:1.5},{default:a(()=>[k((u(),r(v,{type:"primary",plain:"",icon:"Plus",onClick:Ne},{default:a(()=>e[25]||(e[25]=[g("新增")])),_:1})),[[w,["system:user:add"]]])]),_:1}),t(m,{span:1.5},{default:a(()=>[k((u(),r(v,{type:"success",plain:"",icon:"Edit",disabled:o(G),onClick:Z},{default:a(()=>e[26]||(e[26]=[g("修改")])),_:1},8,["disabled"])),[[w,["system:user:edit"]]])]),_:1}),t(m,{span:1.5},{default:a(()=>[k((u(),r(v,{type:"danger",plain:"",icon:"Delete",disabled:o(W),onClick:X},{default:a(()=>e[27]||(e[27]=[g("删除")])),_:1},8,["disabled"])),[[w,["system:user:remove"]]])]),_:1}),t(m,{span:1.5},{default:a(()=>[k((u(),r(v,{type:"info",plain:"",icon:"Upload",onClick:Ve},{default:a(()=>e[28]||(e[28]=[g("导入")])),_:1})),[[w,["system:user:import"]]])]),_:1}),t(m,{span:1.5},{default:a(()=>[k((u(),r(v,{type:"warning",plain:"",icon:"Download",onClick:be},{default:a(()=>e[29]||(e[29]=[g("导出")])),_:1})),[[w,["system:user:export"]]])]),_:1}),t(Te,{showSearch:o(P),"onUpdate:showSearch":e[5]||(e[5]=l=>L(P)?P.value=l:null),onQueryTable:U,columns:o(I)},null,8,["showSearch","columns"])]),_:1}),k((u(),r(Pe,{data:o(J),onSelectionChange:he},{default:a(()=>[t(V,{type:"selection",width:"50",align:"center"}),o(I)[0].visible?(u(),r(V,{label:"用户编号",align:"center",key:"userId",prop:"userId"})):y("",!0),o(I)[1].visible?(u(),r(V,{label:"用户名称",align:"center",key:"userName",prop:"userName","show-overflow-tooltip":!0})):y("",!0),o(I)[2].visible?(u(),r(V,{label:"用户昵称",align:"center",key:"nickName",prop:"nickName","show-overflow-tooltip":!0})):y("",!0),o(I)[3].visible?(u(),r(V,{label:"部门",align:"center",key:"deptName",prop:"dept.deptName","show-overflow-tooltip":!0})):y("",!0),o(I)[4].visible?(u(),r(V,{label:"手机号码",align:"center",key:"phonenumber",prop:"phonenumber",width:"120"})):y("",!0),o(I)[5].visible?(u(),r(V,{label:"状态",align:"center",key:"status"},{default:a(l=>[t(De,{modelValue:l.row.status,"onUpdate:modelValue":N=>l.row.status=N,"active-value":"0","inactive-value":"1",onChange:N=>ge(l.row)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})):y("",!0),o(I)[6].visible?(u(),r(V,{key:6,label:"创建时间",align:"center",prop:"createTime",width:"160"},{default:a(l=>[h("span",null,se(n.parseTime(l.row.createTime)),1)]),_:1})):y("",!0),t(V,{label:"操作",align:"center",width:"150","class-name":"small-padding fixed-width",fixed:"right"},{default:a(l=>[l.row.userId!==1?(u(),r(O,{key:0,content:"修改",placement:"top"},{default:a(()=>[k(t(v,{link:"",type:"primary",icon:"Edit",onClick:N=>Z(l.row)},null,8,["onClick"]),[[w,["system:user:edit"]]])]),_:2},1024)):y("",!0),l.row.userId!==1?(u(),r(O,{key:1,content:"删除",placement:"top"},{default:a(()=>[k(t(v,{link:"",type:"primary",icon:"Delete",onClick:N=>X(l.row)},null,8,["onClick"]),[[w,["system:user:remove"]]])]),_:2},1024)):y("",!0),l.row.userId!==1?(u(),r(O,{key:2,content:"重置密码",placement:"top"},{default:a(()=>[k(t(v,{link:"",type:"primary",icon:"Key",onClick:N=>ke(l.row)},null,8,["onClick"]),[[w,["system:user:resetPwd"]]])]),_:2},1024)):y("",!0),l.row.userId!==1?(u(),r(O,{key:3,content:"分配角色",placement:"top"},{default:a(()=>[k(t(v,{link:"",type:"primary",icon:"CircleCheck",onClick:N=>ye(l.row)},null,8,["onClick"]),[[w,["system:user:edit"]]])]),_:2},1024)):y("",!0)]),_:1})]),_:1},8,["data"])),[[Me,o(z)]]),k(t(Fe,{total:o(K),page:o(f).pageNum,"onUpdate:page":e[6]||(e[6]=l=>o(f).pageNum=l),limit:o(f).pageSize,"onUpdate:limit":e[7]||(e[7]=l=>o(f).pageSize=l),onPagination:U},null,8,["total","page","limit"]),[[ne,o(K)>0]])]),_:1})]),_:1}),t(le,{title:o(M),modelValue:o(x),"onUpdate:modelValue":e[19]||(e[19]=l=>L(x)?x.value=l:null),width:"600px","append-to-body":""},{footer:a(()=>[h("div",sl,[t(v,{type:"primary",onClick:Se},{default:a(()=>e[30]||(e[30]=[g("确 定")])),_:1}),t(v,{onClick:Ce},{default:a(()=>e[31]||(e[31]=[g("取 消")])),_:1})])]),default:a(()=>[t(ee,{model:o(s),rules:o(me),ref:"userRef","label-width":"80px"},{default:a(()=>[t(C,null,{default:a(()=>[t(m,{span:12},{default:a(()=>[t(c,{label:"用户昵称",prop:"nickName"},{default:a(()=>[t(p,{modelValue:o(s).nickName,"onUpdate:modelValue":e[8]||(e[8]=l=>o(s).nickName=l),placeholder:"请输入用户昵称",maxlength:"30"},null,8,["modelValue"])]),_:1})]),_:1}),t(m,{span:12},{default:a(()=>[t(c,{label:"归属部门",prop:"deptId"},{default:a(()=>[t(Be,{modelValue:o(s).deptId,"onUpdate:modelValue":e[9]||(e[9]=l=>o(s).deptId=l),data:o(Y),props:{value:"id",label:"label",children:"children"},"value-key":"id",placeholder:"请选择归属部门","check-strictly":""},null,8,["modelValue","data"])]),_:1})]),_:1})]),_:1}),t(C,null,{default:a(()=>[t(m,{span:12},{default:a(()=>[t(c,{label:"手机号码",prop:"phonenumber"},{default:a(()=>[t(p,{modelValue:o(s).phonenumber,"onUpdate:modelValue":e[10]||(e[10]=l=>o(s).phonenumber=l),placeholder:"请输入手机号码",maxlength:"11"},null,8,["modelValue"])]),_:1})]),_:1}),t(m,{span:12},{default:a(()=>[t(c,{label:"邮箱",prop:"email"},{default:a(()=>[t(p,{modelValue:o(s).email,"onUpdate:modelValue":e[11]||(e[11]=l=>o(s).email=l),placeholder:"请输入邮箱",maxlength:"50"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),t(C,null,{default:a(()=>[t(m,{span:12},{default:a(()=>[o(s).userId==null?(u(),r(c,{key:0,label:"用户名称",prop:"userName"},{default:a(()=>[t(p,{modelValue:o(s).userName,"onUpdate:modelValue":e[12]||(e[12]=l=>o(s).userName=l),placeholder:"请输入用户名称",maxlength:"30"},null,8,["modelValue"])]),_:1})):y("",!0)]),_:1}),t(m,{span:12},{default:a(()=>[o(s).userId==null?(u(),r(c,{key:0,label:"用户密码",prop:"password"},{default:a(()=>[t(p,{modelValue:o(s).password,"onUpdate:modelValue":e[13]||(e[13]=l=>o(s).password=l),placeholder:"请输入用户密码",type:"password",maxlength:"20","show-password":""},null,8,["modelValue"])]),_:1})):y("",!0)]),_:1})]),_:1}),t(C,null,{default:a(()=>[t(m,{span:12},{default:a(()=>[t(c,{label:"用户性别"},{default:a(()=>[t(q,{modelValue:o(s).sex,"onUpdate:modelValue":e[14]||(e[14]=l=>o(s).sex=l),placeholder:"请选择"},{default:a(()=>[(u(!0),S(T,null,D(o(re),l=>(u(),r(B,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),t(m,{span:12},{default:a(()=>[t(c,{label:"状态"},{default:a(()=>[t(Oe,{modelValue:o(s).status,"onUpdate:modelValue":e[15]||(e[15]=l=>o(s).status=l)},{default:a(()=>[(u(!0),S(T,null,D(o(H),l=>(u(),r(qe,{key:l.value,value:l.value},{default:a(()=>[g(se(l.label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),t(C,null,{default:a(()=>[t(m,{span:12},{default:a(()=>[t(c,{label:"岗位"},{default:a(()=>[t(q,{modelValue:o(s).postIds,"onUpdate:modelValue":e[16]||(e[16]=l=>o(s).postIds=l),multiple:"",placeholder:"请选择"},{default:a(()=>[(u(!0),S(T,null,D(o(j),l=>(u(),r(B,{key:l.postId,label:l.postName,value:l.postId,disabled:l.status==1},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),t(m,{span:12},{default:a(()=>[t(c,{label:"角色"},{default:a(()=>[t(q,{modelValue:o(s).roleIds,"onUpdate:modelValue":e[17]||(e[17]=l=>o(s).roleIds=l),multiple:"",placeholder:"请选择"},{default:a(()=>[(u(!0),S(T,null,D(o(A),l=>(u(),r(B,{key:l.roleId,label:l.roleName,value:l.roleId,disabled:l.status==1},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),t(C,null,{default:a(()=>[t(m,{span:24},{default:a(()=>[t(c,{label:"备注"},{default:a(()=>[t(p,{modelValue:o(s).remark,"onUpdate:modelValue":e[18]||(e[18]=l=>o(s).remark=l),type:"textarea",placeholder:"请输入内容"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["title","modelValue"]),t(le,{title:o(b).title,modelValue:o(b).open,"onUpdate:modelValue":e[22]||(e[22]=l=>o(b).open=l),width:"400px","append-to-body":""},{footer:a(()=>[h("div",rl,[t(v,{type:"primary",onClick:Ue},{default:a(()=>e[36]||(e[36]=[g("确 定")])),_:1}),t(v,{onClick:e[21]||(e[21]=l=>o(b).open=!1)},{default:a(()=>e[37]||(e[37]=[g("取 消")])),_:1})])]),default:a(()=>[t(Ke,{ref:"uploadRef",limit:1,accept:".xlsx, .xls",headers:o(b).headers,action:o(b).url+"?updateSupport="+o(b).updateSupport,disabled:o(b).isUploading,"on-progress":xe,"on-success":Ie,"auto-upload":!1,drag:""},{tip:a(()=>[h("div",ul,[h("div",dl,[t(Ee,{modelValue:o(b).updateSupport,"onUpdate:modelValue":e[20]||(e[20]=l=>o(b).updateSupport=l)},null,8,["modelValue"]),e[32]||(e[32]=g("是否更新已经存在的用户数据 "))]),e[34]||(e[34]=h("span",null,"仅允许导入xls、xlsx格式文件。",-1)),t(v,{type:"primary",link:"",style:{"font-size":"12px","vertical-align":"baseline"},onClick:we},{default:a(()=>e[33]||(e[33]=[g("下载模板")])),_:1})])]),default:a(()=>[t(ze,{class:"el-icon--upload"},{default:a(()=>[t(Le)]),_:1}),e[35]||(e[35]=h("div",{class:"el-upload__text"},[g("将文件拖到此处,或"),h("em",null,"点击上传")],-1))]),_:1},8,["headers","action","disabled"])]),_:1},8,["title","modelValue"])])}}});export{cl as default};