| 1 |
- import xe from"./ContentContainer-DTYObT5L.js";import{_ as Ve,B as Se}from"./Modal-xOacY5AE.js";/* empty css */import"./index-DhKoY12H.js";import{C as se}from"./index-BJbCsCKB.js";import"./index-B3rE5vt3.js";import{P as Ue}from"./index-CFFFPv-L.js";import{S as De}from"./index-Cf-t12mF.js";import{u as oe,s as I,o as h,A as s,D as t,q as ie,P as g,j as v,e as Ae,p as ee,a as E,I as V,J as $,c as q,F as L,_ as Z,U as re,w as te,L as Re,Z as Pe,r as ze,x as Be,a9 as Fe,B as H}from"./vue-vendor-BOX7Kenj.js";import{M as J}from"./index-ugL_7kbA.js";import"./index-BgDRZce_.js";import{A as Te,D as Oe}from"./Action-Gzth8lbn.js";import{R as Me,C as Ee,a as qe,F as Le}from"./index-CU2Ui3xA.js";import"./index-Cv88WlPC.js";import{S as Qe,T as ue}from"./index-BsGqlWxn.js";/* empty css */import"./index-CIpEbTAU.js";/* empty css */import{_ as W,M as de,H as F,u as je,aC as Ze,B as Ge,aD as He}from"./index-_atq84Ji.js";import{I as Je}from"./index-CoF0H4ok.js";import{D as ce}from"./index-DR9CscKy.js";import{S as pe}from"./index-BHTmVRE6.js";import{R as Ke,b as We}from"./index-DnLxEI07.js";import{T as Xe}from"./index-8xG_TqDZ.js";import{_ as Ye}from"./DeleteModal-Q4EbXz0d.js";import{a as et}from"./login-QSRFfQ9t.js";import{a as tt,b as st,c as ot}from"./common-CzmKFV4g.js";import"./index-42YnQv79.js";import"./index-BlAITTqL.js";/* empty css *//* empty css */import"./index-B4JT3Sd4.js";import"./index-B3z4cY-J.js";import"./get-value-by-path-5GE1jYEF.js";import"./responsive-observe-4ACH6YSC.js";import"./use-merge-state-CudXQmS1.js";import"./resize-observer-BIIvGtO1.js";import"./index-TzJgFsmL.js";import"./index.es-BW_FzNZC.js";import"./index-C8qH4TAY.js";import"./render-function-L9CkAxUA.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},D=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:D},null,8,["modelValue","options"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])}}},lt=W(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),D=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",D("close")};return(m,o)=>{const w=ee("icon-menu"),r=We,d=Ke,y=ue,C=pe,x=ce,G=ee("icon-bookmark"),Q=ee("icon-relation"),S=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(S,{class:"card-body",hoverable:""},{default:s(()=>[E("div",it,[E("div",null,[t(w,{size:"18"}),V($(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(()=>[V($(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(()=>[V($(p.name),1)]),_:2},1024))),128))]),_:1}),t(x),E("div",rt,[t(G,{size:"18"}),V($(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(()=>[V($(p.name),1)]),_:2},1024))),128))]),_:1}),t(x),E("div",ut,[t(Q,{size:"18"}),V(" "+$(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(()=>[V($(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(()=>[V($(p.name),1)]),_:2},1024))),128))]),_:1})]),_:1})])]),_:1},8,["visible","title","okText"])}}},ct=W(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),D=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",D.value)};return te(()=>l.dept_detail,w=>{w.length>0?w.forEach(r=>{D.value.includes(r.deptId)||(n.value.push({deptId:r.deptId,deptName:r.deptName}),D.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})})}):(D.value=[],n.value=[],i.value=[])}),te(()=>l.dept_list,w=>{w.length>0&&Re(()=>{z.value.expandAll()})}),(w,r)=>{const d=Xe,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]=S=>re(c)?c.value=S: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":D.value,"onUpdate:checkedKeys":r[0]||(r[0]=S=>D.value=S),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,S=>(h(),I(C,{key:S.deptId},{default:s(()=>[V($(S.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,S=>(h(),I(C,{key:S.roleId,color:"arcoblue"},{default:s(()=>[V($(S.roleName),1)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"])])]),_:1},8,["visible","title"])}}},ft=W(_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([]),D=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),S=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,X(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")})},X=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},Y=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&&(S.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,()=>{D.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=De,_=Ge,b=Ue,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:D.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:U})=>[t(u,{modelValue:U.status,"onUpdate:modelValue":j=>U.status=j,onChange:j=>ge(U),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue","onUpdate:modelValue","onChange"])]),operationSlot:s(({record:U})=>[E("div",$t,[t(b,{content:e.$t("permission.account.reset_password"),onOk:j=>he(U)},{default:s(()=>[H((h(),I(_,{type:"text"},{default:s(()=>[V($(e.$t("permission.account.reset_password")),1)]),_:1})),[[B,"system:role:resetPassword"]])]),_:2},1032,["content","onOk"]),H((h(),I(_,{type:"text",onClick:j=>X(U,!0)},{default:s(()=>[V($(e.$t("permission.edit")),1)]),_:2},1032,["onClick"])),[[B,"system:user:edit"]]),H((h(),I(_,{type:"text",onClick:j=>Y(U,!0)},{default:s(()=>[V($(e.$t("permission.account.view_permission")),1)]),_:2},1032,["onClick"])),[[B,"system:user:viewPermission"]]),H((h(),I(_,{type:"text",onClick:j=>le(U,!0)},{default:s(()=>[V($(e.$t("permission.account.dept_config")),1)]),_:2},1032,["onClick"])),[[B,"system:user:deptEdit"]]),H((h(),I(_,{onClick:j=>$e(U.userId),type:"text",status:"warning"},{default:s(()=>[V($(e.$t("permission.delete")),1)]),_:2},1032,["onClick"])),[[B,"system:user:delete"]])])]),_:1},8,["data","columns","size","loading","pagination"])]),_:1}),t(Ve,{visible:N.value,onOk:be,onCancel:a[0]||(a[0]=U=>X(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]=U=>Y(null,!1)),onClose:a[2]||(a[2]=U=>Y(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:S.value,onOk:we,onCancel:a[3]||(a[3]=U=>le(null,!1))},null,8,["visible","dept_list","dept_detail"]),t(Ye,{visible:R.value,onOk:Ce,onCancel:a[4]||(a[4]=U=>R.value=!1)},null,8,["visible"])],64)}}},xt=W(Ct,[["__scopeId","data-v-b61b7438"]]),fs={__name:"PermissionAccount",setup(f){return(O,l)=>(h(),I(xe,null,{default:s(()=>[t(Se,{current_label:"用户"}),t(xt)]),_:1}))}};export{fs as default};
|