| 1 |
- import{C as de}from"./ContentContainer-CuufwORI.js";import{_ as ce,B as me}from"./Modal-tK2KKdnT.js";import{A as pe,D as _e}from"./Action-3QeTPXN4.js";import{a2 as ue,c as d,o as i,g as C,w as a,f as n,j as I,_ as ie,r as l,e as X,i as $,$ as re,m as ve,S as fe,d as T,F as O,q as D,a3 as ge,t as R,h as se,x as B,b as be,y as ke,M as W}from"./index-DwjpfNya.js";import{b as ye,c as Ce}from"./common-BIPk1Ma_.js";const he={__name:"GroupForm",props:{edit_form:Object,is_edit_mode:Boolean},setup(s){const L=s,{edit_form:k}=ue(L);return(S,y)=>{const N=d("a-input"),h=d("a-form-item"),g=d("a-col"),w=d("a-row"),_=d("a-textarea"),r=d("a-form");return i(),C(r,{model:I(k),"auto-label-width":""},{default:a(()=>[n(w,{gutter:24},{default:a(()=>[n(g,{span:22},{default:a(()=>[n(h,{field:"groupName",label:"组名称",rules:[{required:!0,message:"组名称必填"}]},{default:a(()=>[n(N,{modelValue:I(k).groupName,"onUpdate:modelValue":y[0]||(y[0]=v=>I(k).groupName=v)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),n(w,{gutter:24},{default:a(()=>[n(g,{span:22},{default:a(()=>[n(h,{field:"description",label:"描述"},{default:a(()=>[n(_,{modelValue:I(k).description,"onUpdate:modelValue":y[1]||(y[1]=v=>I(k).description=v)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1},8,["model"])}}},we={class:"membert-config-modal"},xe={__name:"MembertConfigModal",props:{visible:Boolean,memberList:{type:Array,default:()=>[]},selectedMemberList:{type:Array,default:()=>[]}},emits:["cancel","ok"],setup(s,{emit:L}){const k=s,{visible:S,memberList:y,selectedMemberList:N}=ue(k),h=L,g=l([...N.value]),w=()=>{h("close")},_=()=>{h("ok",N.value)},r=v=>{const f=v.filter(b=>!g.value.includes(b)),x=g.value.filter(b=>!v.includes(b));f.length>0&&(g.value=[...g.value,...f]),x.length>0&&(g.value=g.value.filter(b=>!x.includes(b))),h("update:selectedMemberList",g.value)};return(v,f)=>{const x=d("a-transfer"),b=d("a-modal");return i(),C(b,{width:"50%",visible:I(S),"onUpdate:visible":f[0]||(f[0]=U=>re(S)?S.value=U:null),title:"权限配置",onCancel:w,onOk:_},{default:a(()=>[X("div",we,[n(x,{"show-search":"",data:I(y),"model-value":I(N),"source-input-search-props":{placeholder:"请输入用户名搜索"},"target-input-search-props":{placeholder:"请输入用户名搜索"},onChange:r},{"source-title":a(()=>f[1]||(f[1]=[$("可选成员")])),"target-title":a(()=>f[2]||(f[2]=[$("已选成员")])),_:1},8,["data","model-value"])])]),_:1},8,["visible"])}}},$e=ie(xe,[["__scopeId","data-v-57da2fd6"]]),Me={style:{display:"flex"}},Ve={__name:"PermissionConfigModal",props:{visible:Boolean,knowledge_list:{type:Array,default:()=>[]},agents_list:{type:Array,default:()=>[]},model_list:{type:Array,default:()=>[]},record:Object},emits:["getActiveTab","close","ok"],setup(s,{emit:L}){const k=s,{visible:S,knowledge_list:y,agents_list:N,model_list:h,record:g}=ue(k),w=L,_=[{key:"1",icon:"icon-storage",title:"知识库"},{key:"2",icon:"icon-robot",title:"智能体"},{key:"3",icon:"icon-relation",title:"模型"}],r=l(_[0].key);l(["0"]);const v=l([]),f=l([]),x=l([]),b=l([]),U=l([]),j=l([]),E=(c,o,M)=>{let A={id:o.target.value,name:o.target.labels[0].innerText};o.target.checked?M.value.push(A):M.value.forEach((u,z,F)=>{if(u.id==o.target.value)return M.value.splice(z,1),!0})},G=(c,o)=>{E(c,o,f)},ee=(c,o)=>{E(c,o,b)},te=(c,o)=>{E(c,o,j)},ae=c=>{const o=_.find(M=>M.key===c);w("getActiveTab",o),r.value=c},oe=()=>{w("cancel")},ne=()=>{w("ok",{checkedKeys:{knowledge:v.value,agents:x.value,model:U.value}})},le=ve(()=>{const c=_.find(o=>o.key===r.value);return c?c.title:"菜单"});return fe(()=>k.record,c=>{if(c){const{knowledges:o,dialogs:M,llms:A}=c;v.value=o.map(u=>u.id),x.value=M.map(u=>u.id),U.value=A.map(u=>u.id),f.value=o.map(u=>({id:u.id,name:u.name})),b.value=M.map(u=>({id:u.id,name:u.name})),j.value=A.map(u=>({id:u.id,name:u.name}))}}),(c,o)=>{const M=d("a-tab-pane"),A=d("a-tabs"),u=d("a-checkbox"),z=d("a-checkbox-group"),F=d("a-card"),K=d("a-tag"),q=d("a-space"),Y=d("a-divider"),Z=d("a-modal");return i(),C(Z,{width:"50%",visible:I(S),"onUpdate:visible":o[3]||(o[3]=e=>re(S)?S.value=e:null),title:"权限配置",onCancel:oe,onOk:ne},{default:a(()=>[n(A,{"active-key":r.value,onChange:ae},{default:a(()=>[(i(),T(O,null,D(_,e=>n(M,{key:e.key},{title:a(()=>[(i(),C(ge(e.icon))),$(" "+R(e.title),1)]),_:2},1024)),64))]),_:1},8,["active-key"]),X("div",Me,[n(F,{class:"card-body",title:le.value,hoverable:""},{default:a(()=>[r.value==="1"?(i(),C(z,{key:0,modelValue:v.value,"onUpdate:modelValue":o[0]||(o[0]=e=>v.value=e),onChange:G},{default:a(()=>[(i(!0),T(O,null,D(I(y),(e,t)=>(i(),C(u,{value:e.id,lable:e.name,style:{width:"150px"}},{default:a(()=>[$(R(e.name),1)]),_:2},1032,["value","lable"]))),256))]),_:1},8,["modelValue"])):se("",!0),r.value==="2"?(i(),C(z,{key:1,modelValue:x.value,"onUpdate:modelValue":o[1]||(o[1]=e=>x.value=e),onChange:ee},{default:a(()=>[(i(!0),T(O,null,D(I(N),(e,t)=>(i(),C(u,{value:e.id,lable:e.name,style:{width:"150px"}},{default:a(()=>[$(R(e.name),1)]),_:2},1032,["value","lable"]))),256))]),_:1},8,["modelValue"])):se("",!0),r.value==="3"?(i(),C(z,{key:2,modelValue:U.value,"onUpdate:modelValue":o[2]||(o[2]=e=>U.value=e),onChange:te},{default:a(()=>[(i(!0),T(O,null,D(I(h),(e,t)=>(i(),C(u,{value:e.id,lable:e.name,style:{width:"150px"}},{default:a(()=>[$(R(e.name),1)]),_:2},1032,["value","lable"]))),256))]),_:1},8,["modelValue"])):se("",!0)]),_:1},8,["title"]),n(F,{class:"card-body",title:"角色所有权限"},{default:a(()=>[o[4]||(o[4]=X("div",{style:{margin:"8px 0"}},"知识库功能:",-1)),n(q,{wrap:""},{default:a(()=>[(i(!0),T(O,null,D(f.value,e=>(i(),C(K,{key:e.id},{default:a(()=>[$(R(e.name),1)]),_:2},1024))),128))]),_:1}),n(Y),o[5]||(o[5]=X("div",{style:{margin:"8px 0"}},"智能体功能:",-1)),n(q,{wrap:""},{default:a(()=>[(i(!0),T(O,null,D(b.value,e=>(i(),C(K,{key:e.id},{default:a(()=>[$(R(e.name),1)]),_:2},1024))),128))]),_:1}),n(Y),o[6]||(o[6]=X("div",{style:{margin:"8px 0"}},"模型功能:",-1)),n(q,{wrap:""},{default:a(()=>[(i(!0),T(O,null,D(j.value,e=>(i(),C(K,{key:e.id},{default:a(()=>[$(R(e.name),1)]),_:2},1024))),128))]),_:1})]),_:1})])]),_:1},8,["visible"])}}},Ie=ie(Ve,[["__scopeId","data-v-07c74fd1"]]),P="/api/group";function Le(s){return B({url:`${P}/list`,method:"get",params:s})}function Se(s){return B({url:`${P}/group_users`,method:"get",params:{groupId:s}})}function Ne(s){return B({url:`${P}/save_group_user`,method:"post",data:s})}function Ge(s){return B({url:`${P}/group_resource`,method:"put",data:s})}function Ue(s){return B({url:`${P}/add_group`,method:"post",data:s})}function Ae(s){return B({url:`${P}/edit_group`,method:"put",data:s})}function Te(s){return B({url:`${P}/edit_group_status`,method:"put",data:s})}function Oe(s){return B({url:`${P}/delete_group/${s}`,method:"delete"})}const Be={__name:"index",setup(s){const L=l(""),k=l([]),S=l([{title:"序号",width:80,slotName:"index"},{title:"组名称",dataIndex:"groupName",width:150,titleSlotName:"groupName"},{title:"描述",dataIndex:"description",ellipsis:!0,tooltip:!0,titleSlotName:"description"},{title:"状态",dataIndex:"status",slotName:"status"},{title:"操作",dataIndex:"operation",slotName:"operationSlot"}]),y=l({total:10,current:1,pageSize:12}),N=l("medium"),h=l(!1),g=l(null),w=l(!1),_=l(!1),r=be({groupName:"",description:""}),v=l(!1),f=l([]),x=l([]),b=l(!1),U=l([]),j=l([]),E=l([]),G=async()=>{const e={keyword:L.value,current:y.value.current,pageSize:y.value.pageSize};h.value=!0;const{code:t,data:m}=await Le(e);t===200&&(y.value.total=m.total,k.value=m.items),h.value=!1},ee=e=>{L.value=e,G()},te=()=>{L.value="",G()},ae=()=>{r.groupName="",r.description="",_.value=!1,w.value=!0},oe=()=>{console.log("刷新")},ne=e=>{y.value.current=e,G()},le=async e=>{const t={id:e.groupId,status:e.status},{code:m}=await Te(t);m===200&&W.success({title:"成功",content:"状态切换成功."})},c=(e,t)=>{e&&(r.groupId=e.groupId,r.groupName=e.groupName,r.description=e.description,_.value=!0),w.value=t},o=async(e,t)=>{if(e){const{code:m,data:{inGroup:V,notInGroup:H}}=await Se(e.groupId);if(m===200){const J=[...V,...H];f.value=J.map(p=>({label:p.userName,value:p.userId})),x.value=V.map(p=>p.userId)}}v.value=t},M=async e=>{const t={id:g.value.groupId,userList:e},{code:m}=await Ne(t);m===200&&(W.success({title:"成员管理",content:"成员修改成功"}),v.value=!1,G())},A=e=>{x.value=e},u=async(e,t)=>{e&&(g.value=e,r.groupId=e.groupId,Z("1")),b.value=t},z=e=>{e.key&&Z(e.key)},F=async({checkedKeys:e})=>{b.value=!1;const{knowledge:t,agents:m,model:V}=e,H={id:r.groupId,knowledges:t,dialogs:m,llms:V},{code:J}=await Ge(H);J===200&&(W.success({title:"权限配置",content:"权限配置成功"}),G())},K=async e=>{const{code:t}=await Oe(e);t===200&&(W.success({title:"删除用户",content:"删除成功"}),G())},q=async()=>{w.value=!1;const e={id:_.value?r.groupId:void 0,...r},t=_.value?Ae:Ue,{code:m}=await t(e);if(m===200){const V=_.value?"编辑":"新增";W.success({title:`${V}用户`,content:`${V}成功`}),G()}},Y=e=>{N.value=e},Z=async e=>{if(e==="1"){const{code:t,data:{rows:m}}=await ye();t===200&&(U.value=m)}if(e==="2"){const{code:t,data:{rows:m}}=await Ce();t===200&&(j.value=m)}};return ke(()=>{G()}),(e,t)=>{const m=d("a-switch"),V=d("a-button"),H=d("a-popconfirm"),J=d("a-card");return i(),T(O,null,[n(J,{class:"account-page-card"},{default:a(()=>[n(pe,{btn_text:"新建用户组",onSearchClick:ee,onResetClick:te,onCreateClick:ae,onSizeChange:Y,onRefreshClick:oe}),n(_e,{data:k.value,columns:S.value,"row-key":"groupId",size:N.value,loading:h.value,pagination:y.value,onPageChange:ne},{status:a(({record:p})=>[n(m,{modelValue:p.status,"onUpdate:modelValue":Q=>p.status=Q,onChange:Q=>le(p),"checked-value":"1","unchecked-value":"0"},null,8,["modelValue","onUpdate:modelValue","onChange"])]),operationSlot:a(({record:p})=>[n(V,{type:"text",onClick:Q=>c(p,!0)},{default:a(()=>t[4]||(t[4]=[$("编辑")])),_:2},1032,["onClick"]),n(V,{type:"text",onClick:Q=>o(p,!0)},{default:a(()=>t[5]||(t[5]=[$("成员管理")])),_:2},1032,["onClick"]),n(V,{type:"text",onClick:Q=>u(p,!0)},{default:a(()=>t[6]||(t[6]=[$("权限管理")])),_:2},1032,["onClick"]),n(H,{content:"确定删除该条数据吗?",type:"warning",onOk:Q=>K(p.groupId)},{default:a(()=>[n(V,{type:"text",status:"warning"},{default:a(()=>t[7]||(t[7]=[$("删除")])),_:1})]),_:2},1032,["onOk"])]),_:1},8,["data","columns","size","loading","pagination"])]),_:1}),n(ce,{visible:w.value,onOk:q,onCancel:t[0]||(t[0]=p=>c(null,!1)),title:_.value?"编辑":"新增"},{default:a(()=>[n(he,{edit_form:r,is_edit_mode:_.value},null,8,["edit_form","is_edit_mode"])]),_:1},8,["visible","title"]),n($e,{visible:v.value,memberList:f.value,selectedMemberList:x.value,onOk:M,"onUpdate:selectedMemberList":A,onCancel:t[1]||(t[1]=p=>o(null,!1)),onClose:t[2]||(t[2]=p=>o(null,!1))},null,8,["visible","memberList","selectedMemberList"]),n(Ie,{visible:b.value,knowledge_list:U.value,agents_list:j.value,model_list:E.value,record:g.value,onGetActiveTab:z,onOk:F,onCancel:t[3]||(t[3]=p=>u(null,!1))},null,8,["visible","knowledge_list","agents_list","model_list","record"])],64)}}},Pe=ie(Be,[["__scopeId","data-v-39384903"]]),Ee={__name:"PermissionGroup",setup(s){return(L,k)=>(i(),C(de,null,{default:a(()=>[n(me,{current_label:"用户组"}),n(Pe)]),_:1}))}};export{Ee as default};
|