| 1 |
- import{C as I}from"./ContentContainer-CuufwORI.js";import{_ as w,B as x}from"./Modal-tK2KKdnT.js";import{T as B}from"./TreeParts-DJK7WCEC.js";import{m as S,r as b,S as $,y as T,c as f,o as V,g as h,a2 as D,w as l,f as a,j as u,l as F,_ as q,b as A,d as M,e as R,i as k,M as U}from"./index-DwjpfNya.js";import{Q as P,a as Q,D as j,U as z,C as O}from"./resource-DVn9bSzz.js";const E={__name:"Upload",props:{limit:{type:Number,default:1},action:String,url:String},emits:["fileListChange","fileListRemove","success"],setup(v,{emit:p}){const d=v,_=p,e=S(()=>d.url),o=b([]);$(()=>d.url,n=>{n&&(o.value=n.split(",").map(t=>({uid:t,name:t,status:"done",url:t})))},{deep:!0}),T(()=>{e.value&&(o.value=e.value.split(",").map(n=>({uid:n,name:n,status:"done",url:n})))});const y=n=>{_("fileListRemove"),o.value=[]},C=n=>{_("fileListChange",n);const t=n.filter(r=>r.status==="done");t.length>0&&_("success",t.map(r=>r.response.data))};return(n,t)=>{const r=f("a-upload");return V(),h(r,{fileList:o.value,"onUpdate:fileList":t[0]||(t[0]=m=>o.value=m),"list-type":"picture-card",limit:v.limit,action:v.action,onChange:C,onBeforeRemove:y,"image-preview":""},null,8,["fileList","limit","action"])}}},G="/api/v1/llm/upload",L={__name:"ResourceForm",props:{resource_form:{type:Object,required:!0,default:()=>({parentName:"",status:"0",menuName:"",icon:"",menuType:"0",description:"",perms:"",component:"",orderNum:0,path:""})}},setup(v){const p=b([]),d=b([]),_=v,e=[{value:"3",label:"目录"},{value:"0",label:"菜单"},{value:"1",label:"按钮"}],{resource_form:o}=D(_),y=n=>{p.value=n},C=n=>{uploadUrl.value=n;const t=n.map(r=>httpUrl+r);d.value=t};return(n,t)=>{const r=f("a-input"),m=f("a-form-item"),i=f("a-switch"),s=f("a-select"),N=f("a-space"),g=f("a-form");return V(),h(g,{model:u(o),layout:"horizontal"},{default:l(()=>[a(m,{field:"parentName",label:"上级资源",disabled:""},{default:l(()=>[a(r,{modelValue:u(o).parentName,"onUpdate:modelValue":t[0]||(t[0]=c=>u(o).parentName=c)},null,8,["modelValue"])]),_:1}),a(m,{field:"status",label:"资源状态"},{default:l(()=>[a(i,{"checked-value":"0","unchecked-value":"1",modelValue:u(o).status,"onUpdate:modelValue":t[1]||(t[1]=c=>u(o).status=c)},null,8,["modelValue"])]),_:1}),a(m,{field:"menuName",label:"资源名称",rules:[{required:!0,message:"资源名称必填"},{maxLength:50,message:"长度不超过50"}]},{default:l(()=>[a(r,{modelValue:u(o).menuName,"onUpdate:modelValue":t[2]||(t[2]=c=>u(o).menuName=c)},null,8,["modelValue"])]),_:1}),a(m,{field:"icon",label:"资源图标"},{default:l(()=>[a(E,{action:G,limit:1,url:u(o).icon,"onUpdate:fileList":y,onSuccess:C},null,8,["url"])]),_:1}),a(m,{field:"menuType",label:"资源类型",rules:[{required:!0,message:"资源类型必填"}]},{default:l(()=>[a(s,{modelValue:u(o).menuType,"onUpdate:modelValue":t[3]||(t[3]=c=>u(o).menuType=c),options:e,"field-names":n.fieldNames,style:{width:"320px"},placeholder:"请选择"},null,8,["modelValue","field-names"])]),_:1}),a(m,{field:"description",label:"提示词"},{default:l(()=>[a(r,{modelValue:u(o).description,"onUpdate:modelValue":t[4]||(t[4]=c=>u(o).description=c),placeholder:"请输入提示词"},null,8,["modelValue"])]),_:1}),a(m,{field:"perms",label:"资源控制权限字符",rules:[{required:!0,message:"资源控制权限字符必填"},{maxLength:50,message:"长度不超过50"}]},{default:l(()=>[a(r,{modelValue:u(o).perms,"onUpdate:modelValue":t[5]||(t[5]=c=>u(o).perms=c)},null,8,["modelValue"])]),_:1}),a(m,{field:"component",label:"资源地址",style:{align:"start"},rules:[{required:!0,message:"资源地址必填"},{maxLength:50,message:"长度不超过50"}]},{default:l(()=>[a(r,{modelValue:u(o).component,"onUpdate:modelValue":t[6]||(t[6]=c=>u(o).component=c)},null,8,["modelValue"])]),_:1}),a(m,null,{default:l(()=>[a(N,null,{default:l(()=>[F(n.$slots,"actions")]),_:3})]),_:3})]),_:3},8,["model"])}}},H={class:"organization-container"},J={class:"left"},K={class:"right"},W={__name:"index",setup(v){const p=b(!1),d=b(!0),_=b([]),e=A({parentName:"",status:0,menuName:"",icon:"",menuType:"0",description:"",perms:"",component:""}),o=async()=>{const{code:i,data:{rows:s}}=await P();i==200&&(_.value=s)},y=async i=>{const{data:{data:s}}=await Q(i);e.resourceId=i,e.parentId=s.parentId,e.parentName=s.parentName,e.menuName=s.menuName,e.status=s.status,e.icon=s.icon,e.menuType=s.menuType,e.description=s.description,e.perms=s.perms,e.component=s.component,e.orderNum=0,e.path=""},C=i=>{e.resourceId="",e.parentId=i.menuId,e.parentName=i.menuName,e.menuName="",e.status="0",e.icon="",e.menuType="0",e.description="",e.perms="",e.component="",e.orderNum=0,e.path="",p.value=!0,d.value=!1},n=async({menuId:i})=>{const{code:s}=await j(i);s===200&&U.success({title:"删除",content:"删除成功"}),o()},t=async()=>{const i={...e,menuId:d.value&&e.resourceId?e.resourceId[0]:null},s=d.value?z:O,{code:N}=await s(i);if(N===200){const g=d.value?"编辑":"新增";U.success({title:`${g}账号`,content:`${g}成功`}),o(),p.value=!1}},r=()=>{e.resourceId=null,e.parentName="",e.status=0,e.resourceName="",e.leader="",e.orderNum="",e.address=""},m=()=>{d.value=!0,p.value=!1};return T(()=>{o()}),(i,s)=>{const N=f("a-button"),g=f("a-card");return V(),M("div",H,[R("div",J,[a(B,{treeData:_.value,title:"资源",fieldNames:{key:"menuId",title:"menuName",children:"children"},onNodeClick:y,onAddBtnClick:C,onDeleteBtnClick:n},null,8,["treeData"])]),R("div",K,[a(g,{title:"详情",style:{height:"100%"}},{default:l(()=>[a(L,{resource_form:e,onSave:t,onReset:r},{actions:l(()=>[a(N,{onClick:t},{default:l(()=>s[0]||(s[0]=[k("保存")])),_:1}),a(N,{onClick:r},{default:l(()=>s[1]||(s[1]=[k("重置")])),_:1})]),_:1},8,["resource_form"])]),_:1})]),a(w,{visible:p.value,onOk:t,onCancel:m,title:"新增"},{default:l(()=>[a(L,{resource_form:e},null,8,["resource_form"])]),_:1},8,["visible"])])}}},X=q(W,[["__scopeId","data-v-3bed561a"]]),oe={__name:"PermissionResource",setup(v){return(p,d)=>(V(),h(I,null,{default:l(()=>[a(x,{current_label:"资源"}),a(X)]),_:1}))}};export{oe as default};
|