| 1 |
- import Ce from"./ContentContainer-C0mXB1ci.js";import{_ as xe,B as Se}from"./Modal-DFmXHFS2.js";/* empty css */import"./index-DR8FSWQ-.js";import{C as se}from"./index-D9mm3Cus.js";import"./index-DN8oxZIy.js";import{P as Ve}from"./index-B73PIRQI.js";import{S as Ue}from"./index-DQBQpKdL.js";import{q as oe,p as I,o as _,y as s,B as t,m as ie,V as v,f,e as De,l as ee,a as q,F as S,G as C,c as Q,P as j,X as Z,O as re,w as te,I as Ae,W as Re,r as Pe,u as ze,a5 as Be,z as K}from"./vue-vendor-DFp1TAzT.js";import{M as W}from"./index-DAe172gz.js";import"./index-BvlYtx2e.js";import{A as Fe,D as Oe}from"./Action-D3eUkbin.js";import{R as Te,C as Me,a as Ee,F as qe}from"./index-BOAJgGqb.js";import{I as Qe}from"./index-sXG0X98R.js";import{S as je,T as ue}from"./index-nVFQleeb.js";/* empty css */import"./index-DPIe0o3_.js";/* empty css */import{_ as X}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{D as de}from"./index-BSJDHMn3.js";import{S as ce}from"./index-DtymwdQ4.js";import{R as Le,b as Ge}from"./index-0cpidreQ.js";import{M as pe,x as O,u as Ze,ap as He,B as Ke,aq as We}from"./index-B3bKhTPo.js";import{T as Xe}from"./index-COiczX-E.js";import{_ as Je}from"./DeleteModal-BtHdkUj0.js";import{a as Ye}from"./login-BPpGgCwD.js";import{a as et,b as tt}from"./common-D-dOeJHP.js";import"./index-8NNLSwmO.js";/* empty css *//* empty css */import"./index-CXTBk0xB.js";import"./responsive-observe-Ib2S-anM.js";import"./resize-observer-CCUg78Tr.js";import"./index.es-BW_FzNZC.js";import"./index-BnhaUFis.js";import"./render-function-BUOKTXkZ.js";const st={__name:"AccountForm",props:{edit_form:Object,is_edit_mode:Boolean,role_list:Array},setup(p){const M=p,a={userName:[{required:!0,message:"用户名必填"}],email:[{required:!0,message:"邮箱必填"}],pwd:[{required:!0,message:"密码必填"},{validator:(k,u)=>{const d=/^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$/;k.length<8||!d.test(k)?u("密码至少8位,且包含字母和数字"):u()}}],roles:[{required:!0,message:"角色必选"}]},{edit_form:m,is_edit_mode:R,role_list:E}=oe(M),P=k=>{m.role=k};return(k,u)=>{const d=Qe,y=Ee,N=Me,A=Te,h=je,n=qe;return _(),I(n,{ref:"accountFormRef",rules:a,model:v(m),"auto-label-width":""},{default:s(()=>[t(A,{gutter:24,class:"flex-row"},{default:s(()=>[v(R)?ie("",!0):(_(),I(N,{key:0,span:12,class:"flex-col"},{default:s(()=>[t(y,{field:"userName",label:k.$t("permission.account.username")},{default:s(()=>[t(d,{modelValue:v(m).userName,"onUpdate:modelValue":u[0]||(u[0]=l=>v(m).userName=l)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})),t(N,{span:12,class:"flex-col"},{default:s(()=>[t(y,{field:"loginName",label:k.$t("permission.account.name")},{default:s(()=>[t(d,{modelValue:v(m).loginName,"onUpdate:modelValue":u[1]||(u[1]=l=>v(m).loginName=l)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1}),t(A,{gutter:24,class:"flex-row"},{default:s(()=>[t(N,{span:12,class:"flex-col"},{default:s(()=>[t(y,{field:"phone",label:k.$t("permission.account.phone")},{default:s(()=>[t(d,{modelValue:v(m).phone,"onUpdate:modelValue":u[2]||(u[2]=l=>v(m).phone=l)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1}),t(N,{span:12,class:"flex-col"},{default:s(()=>[t(y,{required:"",field:"email",label:k.$t("permission.account.email")},{default:s(()=>[t(d,{modelValue:v(m).email,"onUpdate:modelValue":u[3]||(u[3]=l=>v(m).email=l)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})]),_:1}),t(A,{gutter:24,class:"flex-row"},{default:s(()=>[v(R)?ie("",!0):(_(),I(N,{key:0,span:12,class:"flex-col"},{default:s(()=>[t(y,{field:"pwd",label:k.$t("permission.account.password")},{default:s(()=>[t(d,{modelValue:v(m).pwd,"onUpdate:modelValue":u[4]||(u[4]=l=>v(m).pwd=l),type:"password"},null,8,["modelValue"])]),_:1},8,["label"])]),_:1})),t(N,{span:12,class:"flex-col"},{default:s(()=>[t(y,{field:"roles",label:k.$t("permission.account.roles")},{default:s(()=>[t(h,{multiple:"",modelValue:v(m).roles,"onUpdate:modelValue":u[5]||(u[5]=l=>v(m).roles=l),options:v(E),"field-names":{value:"roleId",label:"roleName"},onChange:P},null,8,["modelValue","options"])]),_:1},8,["label"])]),_:1})]),_:1})]),_:1},8,["model"])}}},ot=X(st,[["__scopeId","data-v-a9367643"]]),at={style:{display:"flex","flex-direction":"column"}},lt={class:"title-box",style:{"justify-content":"space-between"}},nt={class:"title-box"},it={class:"title-box"},rt={__name:"ViewPermission",props:{visible:Boolean,menu_permissions_list:{type:Array},knowledge_permissions_list:{type:Array},dialog_permissions_list:{type:Array},agent_permissions_list:{type:Array}},emits:["close"],setup(p,{emit:M}){const a=p,{visible:m,menu_permissions_list:R,knowledge_permissions_list:E,dialog_permissions_list:P,agent_permissions_list:k}=oe(a),u=M,d=f("all"),y=[{title:"permission.account.all",value:"all"},{title:"permission.account.org",value:"org"},{title:"permission.account.user",value:"user"}],N=De(()=>d.value==="all"?R.value:R.value.filter(h=>h.type===d.value)),A=()=>{d.value="all",u("close")};return(h,n)=>{const l=ee("icon-menu"),i=Ge,$=Le,g=ue,x=ce,D=de,L=ee("icon-bookmark"),H=ee("icon-relation"),V=se,B=pe;return _(),I(B,{width:"50%",visible:v(m),"onUpdate:visible":n[1]||(n[1]=w=>re(m)?m.value=w:null),title:h.$t("permission.account.user_permission"),okText:h.$t("permission.close"),"hide-cancel":"true",onOk:A,onCancel:A},{default:s(()=>[q("div",at,[t(V,{class:"card-body",hoverable:""},{default:s(()=>[q("div",lt,[q("div",null,[t(l,{size:"18"}),S(C(h.$t("permission.account.menu_function"))+":",1)]),t($,{modelValue:d.value,"onUpdate:modelValue":n[0]||(n[0]=w=>d.value=w),type:"button",size:"small"},{default:s(()=>[(_(),Q(j,null,Z(y,(w,ae)=>t(i,{key:w.value,value:w.value},{default:s(()=>[S(C(h.$t(w.title)),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"])]),t(x,{wrap:""},{default:s(()=>[(_(!0),Q(j,null,Z(N.value,w=>(_(),I(g,{key:w.id},{default:s(()=>[S(C(w.name),1)]),_:2},1024))),128))]),_:1}),t(D),q("div",nt,[t(L,{size:"18"}),S(C(h.$t("permission.account.knowledge_base"))+":",1)]),t(x,{wrap:""},{default:s(()=>[(_(!0),Q(j,null,Z(v(E),w=>(_(),I(g,{color:"arcoblue",key:w.id},{default:s(()=>[S(C(w.name),1)]),_:2},1024))),128))]),_:1}),t(D),q("div",it,[t(H,{size:"18"}),S(" "+C(h.$t("permission.account.agent"))+":",1)]),t(x,{wrap:""},{default:s(()=>[(_(!0),Q(j,null,Z(v(P),w=>(_(),I(g,{color:"green",key:w.id},{default:s(()=>[S(C(w.name),1)]),_:2},1024))),128)),(_(!0),Q(j,null,Z(v(k),w=>(_(),I(g,{color:"green",key:w.id},{default:s(()=>[S(C(w.name),1)]),_:2},1024))),128))]),_:1})]),_:1})])]),_:1},8,["visible","title","okText"])}}},ut=X(rt,[["__scopeId","data-v-d74af748"]]),dt={style:{display:"flex"}},ct={style:{"margin-bottom":"8px"}},pt={__name:"DeptConfigModal",props:{visible:Boolean,dept_list:{type:Array,default:()=>[]},dept_detail:{type:Object,default:()=>[]}},emits:["close","ok"],setup(p,{emit:M}){const a=p,{visible:m,dept_list:R,dept_detail:E}=oe(a),P=M,k=f(null),u=f([]),d=f([]),y=f([]),N=(l,i)=>{l.children&&l.children.length>0&&l.children.forEach($=>{const g=i.findIndex(x=>x.deptId===$.deptId);g!==-1&&(i.splice(g,1),N($,i))})},A=(l,i)=>{const $={deptId:i.node.deptId,deptName:i.node.deptName};if(i.checked)i.node.roles.forEach(g=>{y.value.some(D=>D.roleId===g.roleId)||y.value.push(g)}),d.value.push($);else{const g=d.value.findIndex(D=>D.deptId===i.node.deptId);d.value.splice(g,1);const x=y.value.findIndex(D=>D.deptId===i.node.deptId);y.value.splice(x,1),N(i.node,d.value)}},h=()=>{m.value=!1,P("close")},n=()=>{P("ok",u.value)};return te(()=>a.dept_detail,l=>{l.length>0?l.forEach(i=>{u.value.includes(i.deptId)||(d.value.push({deptId:i.deptId,deptName:i.deptName}),u.value.push(i.deptId)),i.roles.forEach($=>{y.value.some(g=>g.roleId===$.roleId)||y.value.push({roleId:$.roleId,roleName:$.roleName,deptId:i.deptId})})}):(u.value=[],d.value=[],y.value=[])}),te(()=>a.dept_list,l=>{l.length>0&&Ae(()=>{k.value.expandAll()})}),(l,i)=>{const $=Xe,g=se,x=ue,D=ce,L=de,H=pe;return _(),I(H,{width:"50%",visible:v(m),"onUpdate:visible":i[1]||(i[1]=V=>re(m)?m.value=V:null),title:l.$t("permission.account.dept_config"),onCancel:h,onOk:n},{default:s(()=>[q("div",dt,[t(g,{class:"card-body",title:l.$t("permission.account.organization"),hoverable:""},{default:s(()=>[t($,{data:v(R),ref_key:"treeRef",ref:k,"checked-keys":u.value,"onUpdate:checkedKeys":i[0]||(i[0]=V=>u.value=V),checkable:!0,"check-strictly":!0,"show-line":!0,onCheck:A,fieldNames:{key:"deptId",title:"deptName",children:"children"}},null,8,["data","checked-keys"])]),_:1},8,["title"]),t(g,{class:"card-body",title:l.$t("permission.account.user_department")},{default:s(()=>[t(D,{wrap:""},{default:s(()=>[(_(!0),Q(j,null,Z(d.value,V=>(_(),I(x,{key:V.deptId},{default:s(()=>[S(C(V.deptName),1)]),_:2},1024))),128))]),_:1}),t(L),q("div",ct,C(l.$t("permission.account.department_roles"))+":",1),t(D,{wrap:""},{default:s(()=>[(_(!0),Q(j,null,Z(y.value,V=>(_(),I(x,{key:V.roleId,color:"arcoblue"},{default:s(()=>[S(C(V.roleName),1)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"])])]),_:1},8,["visible","title"])}}},mt=X(pt,[["__scopeId","data-v-4694b105"]]),T="/api/user";function _t(p){return O({url:`${T}/list`,method:"get",params:p})}function ft(p){return O({url:`${T}/dept`,method:"get",params:{userId:p}})}function vt(p){return O({url:`${T}/dept`,method:"put",data:p})}function ht(p){return O({url:`${T}/add_user`,method:"post",data:p})}function gt(p){return O({url:`${T}/edit_user`,method:"put",data:p})}function wt(p){return O({url:`${T}/change_status`,method:"put",data:p})}function yt(p){return O({url:`${T}/reset_pwd`,method:"put",data:{userId:p}})}function kt(p){return O({url:`${T}/permission`,method:"get",params:{userId:p}})}function bt(p){return O({url:`${T}/delete_user/${p}`,method:"delete"})}const It={class:"operation-btn-container"},Nt={__name:"index",setup(p){const M=Re(),{t:a,locale:m}=Ze(),R=f(""),E=f(null),P=f(!1),k=f([]),u=f([{title:a("permission.group.serial_number"),width:130,fixed:"left",slotName:"index"},{title:a("permission.account.username"),dataIndex:"userName",fixed:"left",width:100,titleSlotName:"userName"},{title:a("permission.account.name"),dataIndex:"loginName",width:100,titleSlotName:"loginName"},{title:a("permission.account.roles"),dataIndex:"roleName",width:300,ellipsis:!0,tooltip:{position:"top"},titleSlotName:"roleName"},{title:a("permission.account.user_department"),dataIndex:"deptName",width:400,ellipsis:!0,tooltip:{position:"top"},titleSlotName:"deptName"},{title:a("permission.account.phone"),dataIndex:"phone",width:150,titleSlotName:"phone"},{title:a("permission.account.email"),dataIndex:"email",width:250,titleSlotName:"email"},{title:a("permission.group.status"),dataIndex:"status",width:100,slotName:"status"},{title:a("permission.group.action"),dataIndex:"operation",fixed:"right",slotName:"operationSlot"}]),d=f({total:10,current:1,pageSize:15}),y=f("medium"),N=f(!1),A=f(!1),h=f(!1),n=Pe({userName:"",loginName:"",phone:"",email:"",pwd:"",roles:[]}),l=f([]),i=f(!1),$=f([]),g=f([]),x=f([]),D=f([]),L=f(!1),H=f([]),V=f([]),B=async()=>{const e={keyword:R.value,current:d.value.current,pageSize:d.value.pageSize};N.value=!0;const{code:o,data:r}=await _t(e);if(o===200){for(const c of r.rows){if(c.deptName="",c.roleName="",c.depts)for(let b=0;b<c.depts.length;b++){const z=c.depts[b];c.deptName+=z.deptName+(b<c.depts.length-1?", ":"")}if(c.roles)for(let b=0;b<c.roles.length;b++){const z=c.roles[b];c.roleName+=z.roleName+(b<c.roles.length-1?", ":"")}}d.value.total=r.total,k.value=r.rows,N.value=!1}else N.value=!1},w=e=>{R.value=e,B()},ae=()=>{R.value="",B()},me=()=>{n.userId=0,n.userName="",n.loginName="",n.phone="",n.email="",n.pwd="",n.roles=[],h.value=!1,J(null,!0)},_e=()=>{B()},fe=e=>{d.value.current=e,B()},ve=async e=>{const o={userId:e.userId,status:e.status},{code:r}=await wt(o);r===200&&W.success({content:a("permission.status_switch_success")})},he=async e=>{const{code:o}=await yt(e.userId);o===200&&W.success({content:a("permission.account.reset_password_success")})},J=async(e,o)=>{if(o){const{code:r,data:c}=await tt();r===200&&(l.value=c.rows)}e&&(n.userId=e.userId,n.userName=e.userName,n.loginName=e.loginName,n.phone=e.phone,n.email=e.email,n.pwd=e.pwd,n.roles=e.roles.map(r=>r.roleId),h.value=!0),A.value=o},Y=async(e,o)=>{if(e){x.value=[],g.value=[],$.value=[];const{code:r,data:c}=await kt(e.userId);if(r===200){const{knowledge:b,menus:z,dialog:F}=c;F&&F.length>0&&(x.value=F),b&&b.length>0&&(g.value=b),z&&z.length>0&&($.value=ne(z))}}i.value=o},le=async(e,o)=>{if(e){n.userId=e.userId;const{code:r,data:{rows:c}}=await ft(e.userId);r===200&&(H.value=c)}L.value=o},ge=async e=>{L.value=!1;const o={userId:n.userId,depts:e},{code:r}=await vt(o);r===200&&(W.success({content:a("permission.account.dept_config_success")}),B())},we=async e=>{const{code:o}=await bt(e);o===200&&(W.success({content:a("permission.account.delete_success")}),B())},ye=async()=>{E.value.$refs.accountFormRef.validate&&E.value.$refs.accountFormRef.validate(async e=>{if(!e){A.value=!1;const o={userId:h.value?n.userId:0,...n},r=h.value?gt:ht,{code:c,data:{userFlag:b}}=await r(o);if(c===200){const z=h.value?a("permission.edit"):a("permission.add");W.success({content:`${z}${a("permission.success")}`}),!h.value&&b&&ke(b),B()}}})},ke=async e=>{await Ye(e)},be=e=>{y.value=e},ne=(e,o=[])=>(e.forEach(r=>{r.id&&r.meta.title&&o.push({id:r.id,name:r.meta.title,type:r.type}),r.children&&r.children.length>0&&ne(r.children,o)}),o),Ie=async()=>{const{code:e,data:{rows:o}}=await et();e==200&&(V.value=We(o))},Ne=e=>{n.userId=e,P.value=!0},$e=()=>{we(n.userId),P.value=!1};return te(()=>m.value,()=>{u.value=[{title:a("permission.group.serial_number"),width:130,fixed:"left",slotName:"index"},{title:a("permission.account.username"),dataIndex:"userName",fixed:"left",width:100,titleSlotName:"userName"},{title:a("permission.account.name"),dataIndex:"loginName",width:100,titleSlotName:"loginName"},{title:a("permission.account.roles"),dataIndex:"roleName",width:300,ellipsis:!0,tooltip:{position:"top"},titleSlotName:"roleName"},{title:a("permission.account.user_department"),dataIndex:"deptName",width:400,ellipsis:!0,tooltip:{position:"top"},titleSlotName:"deptName"},{title:a("permission.account.phone"),dataIndex:"phone",width:150,titleSlotName:"phone"},{title:a("permission.account.email"),dataIndex:"email",width:250,titleSlotName:"email"},{title:a("permission.group.status"),dataIndex:"status",width:100,slotName:"status"},{title:a("permission.group.action"),dataIndex:"operation",fixed:"right",slotName:"operationSlot"}]}),ze(()=>{He("system:user:list")?(B(),Ie()):M.push("/denied")}),(e,o)=>{const r=Ue,c=Ke,b=Ve,z=se,F=Be("hasPermi");return _(),Q(j,null,[t(z,{class:"account-page-card"},{default:s(()=>[t(Fe,{btn_text:e.$t("permission.account.new_user"),btn_permission:"system:user:add",onSearchClick:w,onResetClick:ae,onCreateClick:me,onSizeChange:be,onRefreshClick:_e},null,8,["btn_text"]),t(Oe,{data:k.value,columns:u.value,"row-key":"userId",scroll:{x:2e3,y:"calc(100vh - 300px)"},size:y.value,loading:N.value,pagination:d.value,onPageChange:fe},{status:s(({record:U})=>[t(r,{modelValue:U.status,"onUpdate:modelValue":G=>U.status=G,onChange:G=>ve(U),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue","onUpdate:modelValue","onChange"])]),operationSlot:s(({record:U})=>[q("div",It,[t(b,{content:e.$t("permission.account.reset_password"),onOk:G=>he(U)},{default:s(()=>[K((_(),I(c,{type:"text"},{default:s(()=>[S(C(e.$t("permission.account.reset_password")),1)]),_:1})),[[F,"system:role:resetPassword"]])]),_:2},1032,["content","onOk"]),K((_(),I(c,{type:"text",onClick:G=>J(U,!0)},{default:s(()=>[S(C(e.$t("permission.edit")),1)]),_:2},1032,["onClick"])),[[F,"system:user:edit"]]),K((_(),I(c,{type:"text",onClick:G=>Y(U,!0)},{default:s(()=>[S(C(e.$t("permission.account.view_permission")),1)]),_:2},1032,["onClick"])),[[F,"system:user:viewPermission"]]),K((_(),I(c,{type:"text",onClick:G=>le(U,!0)},{default:s(()=>[S(C(e.$t("permission.account.dept_config")),1)]),_:2},1032,["onClick"])),[[F,"system:user:deptEdit"]]),K((_(),I(c,{onClick:G=>Ne(U.userId),type:"text",status:"warning"},{default:s(()=>[S(C(e.$t("permission.delete")),1)]),_:2},1032,["onClick"])),[[F,"system:user:delete"]])])]),_:1},8,["data","columns","size","loading","pagination"])]),_:1}),t(xe,{visible:A.value,onOk:ye,onCancel:o[0]||(o[0]=U=>J(null,!1)),title:h.value?e.$t("permission.account.edit"):e.$t("permission.account.new_user")},{default:s(()=>[t(ot,{ref_key:"accountForm",ref:E,edit_form:n,is_edit_mode:h.value,role_list:l.value},null,8,["edit_form","is_edit_mode","role_list"])]),_:1},8,["visible","title"]),t(ut,{visible:i.value,onCancel:o[1]||(o[1]=U=>Y(null,!1)),onClose:o[2]||(o[2]=U=>Y(null,!1)),menu_permissions_list:$.value,knowledge_permissions_list:g.value,dialog_permissions_list:x.value,agent_permissions_list:D.value},null,8,["visible","menu_permissions_list","knowledge_permissions_list","dialog_permissions_list","agent_permissions_list"]),t(mt,{visible:L.value,dept_list:V.value,dept_detail:H.value,onOk:ge,onCancel:o[3]||(o[3]=U=>le(null,!1))},null,8,["visible","dept_list","dept_detail"]),t(Je,{visible:P.value,onOk:$e,onCancel:o[4]||(o[4]=U=>P.value=!1)},null,8,["visible"])],64)}}},$t=X(Nt,[["__scopeId","data-v-3d33529c"]]),rs={__name:"PermissionAccount",setup(p){return(M,a)=>(_(),I(Ce,null,{default:s(()=>[t(Se,{current_label:"用户"}),t($t)]),_:1}))}};export{rs as default};
|