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