import{d as x,K as R,k as f,v as T,r as d,o as b,c as v,a as s,z,b as o,u as c,t as S,A as q,B}from"./vue.1703796278973.js";import{M as k,a0 as N,ax as A}from"./index.17037962789732.js";import"./index.1703796278973300.js";import"./index.170379627897315.js";import"./index.170379627897317.js";import"./index.1703796278973301.js";import"./index.1703796278973302.js";import"./index.170379627897332.js";import"./index.1703796278973303.js";import"./index.170379627897339.js";import"./index.170379627897316.js";import"./index.170379627897314.js";import"./index.1703796278973304.js";import"./index.1703796278973305.js";import"./index.1703796278973306.js";import"./index.170379627897336.js";import{_ as m}from"./index.vue_vue_type_script_setup_true_name_PermissionButton_lang.1703796278973.js";import{_ as L}from"./index.vue_vue_type_script_setup_true_lang.17037962789733.js";import{_ as V}from"./EditDialog.vue_vue_type_script_setup_true_lang.17037962789732.js";import{b as C,e as M,f as j,h as E}from"./dataSource.1703796278973.js";import{_ as F}from"./_plugin-vue_export-helper.1703796278973.js";import"./index.17037962789733.js";import"./dayjs.min.1703796278973.js";import"./isArray.1703796278973.js";import"./editor.api.1703796278973.js";import"./preload-helper.1703796278973.js";import"./monaco.contribution.1703796278973.js";import"./index.170379627897320.js";import"./index.170379627897321.js";import"./permission.1703796278973.js";import"./index.170379627897333.js";import"./index.170379627897337.js";import"./index.170379627897318.js";import"./index.170379627897319.js";import"./index.170379627897327.js";import"./system.1703796278973.js";import"./comm.1703796278973.js";import"./index.170379627897334.js";import"./default.1703796278973.js";import"./consts.1703796278973.js";import"./404.1703796278973.js";const J={class:"data-source-container"},K=x({name:"DataSource"}),G=x({...K,setup(H){const p="system/DataSource",I=R(),y=[{title:"名称",dataIndex:"name",key:"name",search:{type:"string"},width:"250px"},{title:"类型",dataIndex:"typeId",key:"typeId",search:{type:"select",options:()=>new Promise(i=>{if(t.typeOptions.value.length>0)return i(t.typeOptions.value);C().then(a=>{const n=a.result;i(n.map(r=>({label:r.name,value:r.id})))})})},scopedSlots:!0},{title:"说明",dataIndex:"description",key:"description",search:{type:"string"},ellipsis:!0},{title:"状态",dataIndex:"state",key:"state",search:{type:"select",options:[{label:"正常",value:"enabled"},{label:"禁用",value:"disabled"}]},scopedSlots:!0,width:"120px"},{title:"操作",dataIndex:"action",key:"action",scopedSlots:!0,width:"200px",fixed:"right"}],g=f({}),u=f({}),t={typeOptions:f([]),getTypeOption:()=>{C().then(i=>{const a=i.result;t.typeOptions.value=a.map(n=>({label:n.name,value:n.id}))})},getTypeLabel:i=>{var n;const a=t.typeOptions.value;return a.length<1||i===""?"":((n=a.find(r=>r.value===i))==null?void 0:n.label)||""},getRowStatus:i=>{var a;return((a=i.state)==null?void 0:a.value)==="enabled"},openDialog:i=>{l.selectItem={shareConfig:{},...i},l.visible=!0},clickDel:i=>{M(i.id).then(a=>{var n;a.status===200&&((n=u.value)==null||n.reload(),k.success("操作成功!"))})},clickChangeStatus:i=>{const a=i.state.value==="enabled"?"_disable":"_enable";j(i.id,a).then(()=>{k.success("操作成功"),t.refresh()})},refresh:()=>{u.value.reload(),l.visible=!1,l.selectItem={}},cancel:()=>{l.visible=!1,l.selectItem={}}};t.getTypeOption();const l=T({visible:!1,selectItem:{}});return(i,a)=>{const n=d("pro-search"),r=d("AIcon"),D=N,O=A,w=d("FullPage"),$=d("page-container");return b(),v($,null,{default:s(()=>[z("div",J,[o(n,{columns:y,target:"category",onSearch:a[0]||(a[0]=e=>g.value={...e})}),o(w,null,{default:s(()=>[o(O,{ref_key:"tableRef",ref:u,columns:y,request:c(E),model:"TABLE",params:c(g),defaultParams:{pageSize:10,sorts:[{name:"createTime",order:"desc"}]},pagination:{showSizeChanger:!0,pageSizeOptions:["10","20","50","100"]}},{headerTitle:s(()=>[o(m,{type:"primary",hasPermission:`${p}:add`,onClick:a[1]||(a[1]=e=>t.openDialog({}))},{default:s(()=>[o(r,{type:"PlusOutlined"}),S("新增 ")]),_:1},8,["hasPermission"])]),state:s(e=>{var _,h;return[o(L,{status:(_=e.state)==null?void 0:_.value,text:(h=e.state)==null?void 0:h.text,statusNames:{enabled:"processing",disabled:"error"}},null,8,["status","text"])]}),typeId:s(e=>[S(q(t.typeOptions.value.length&&t.getTypeLabel(e.typeId)||""),1)]),action:s(e=>[o(D,{size:16},{default:s(()=>[o(m,{hasPermission:`${p}:update`,type:"link",tooltip:{title:"编辑"},onClick:_=>t.openDialog(e)},{default:s(()=>[o(r,{type:"EditOutlined"})]),_:2},1032,["hasPermission","onClick"]),o(m,{hasPermission:`${p}:manage`,type:"link",tooltip:{title:(e==null?void 0:e.typeId)==="rabbitmq"?"暂不支持管理功能":t.getRowStatus(e)?"管理":"请先启用数据源"},onClick:()=>c(I).push(`/system/DataSource/Management?id=${e.id}`),disabled:(e==null?void 0:e.typeId)==="rabbitmq"||!t.getRowStatus(e)},{default:s(()=>[o(r,{type:"icon-ziyuankuguanli"})]),_:2},1032,["hasPermission","tooltip","onClick","disabled"]),o(m,{hasPermission:`${p}:action`,type:"link",popConfirm:{title:`确定要${t.getRowStatus(e)?"禁用":"启用"}吗?`,onConfirm:()=>t.clickChangeStatus(e)},tooltip:{title:t.getRowStatus(e)?"禁用":"启用"}},{default:s(()=>[o(r,{type:t.getRowStatus(e)?"StopOutlined":"PlayCircleOutlined"},null,8,["type"])]),_:2},1032,["hasPermission","popConfirm","tooltip"]),o(m,{hasPermission:`${p}:delete`,type:"link",tooltip:{title:t.getRowStatus(e)?"请先禁用,再删除":"删除"},danger:!0,popConfirm:{title:"确认删除",onConfirm:()=>t.clickDel(e)},disabled:t.getRowStatus(e)},{default:s(()=>[o(r,{type:"DeleteOutlined"})]),_:2},1032,["hasPermission","tooltip","popConfirm","disabled"])]),_:2},1024)]),_:1},8,["request","params"])]),_:1}),c(l).visible?(b(),v(V,{key:0,onCancel:t.cancel,data:c(l).selectItem,onConfirm:t.refresh},null,8,["onCancel","data","onConfirm"])):B("",!0)])]),_:1})}}});const Be=F(G,[["__scopeId","data-v-ecedfdee"]]);export{Be as default};