| 1 |
- import{M as k}from"./monaco-editor-4ba4293e.js";import{_ as C,J as E,S as b,r,o as i,d as f,w as m,f as o,c as u,F as v,a as g,n as T,b as _,t as p,l as j,u as x}from"./index-34ec9885.js";const O={components:{MonacoEditor:k},data(){return{form:{},data:[],box:!1,id:null,sql:"",selectTable:"",tableList:[],columnList:[]}},computed:{option(){let t=[],e=this.data[0];return e&&Object.keys(e).forEach(a=>{t.push({label:a,prop:a,overHidden:!0})}),{height:300,menu:!1,header:!1,column:t}}},methods:{getSql(t){return{id:this.id,sql:t}},handleOpen(t){this.id=t,this.data=[],this.sql="",this.selectTable="",this.tableList=[],this.columnList=[],E(t).then(e=>{this.form=e.data.data,this.handleGetTable(),this.box=!0})},handleRun(){this.data=[];let t=this.getSql(this.sql);b(t).then(e=>{let a=e.data.data||[];this.data=a})},handleGetColumn(t){this.selectTable=t.name;let e={"com.mysql.cj.jdbc.Driver":`SHOW COLUMNS FROM ${this.selectTable}`,"com.microsoft.sqlserver.jdbc.SQLServerDriver":"","org.postgresql.Driver":`SELECT column_name, data_type, is_nullable, column_default FROM information_schema.columns WHERE table_name ='${this.selectTable}'`,"oracle.jdbc.OracleDriver":""},a=this.getSql(e[this.form.driverClass]);b(a).then(d=>{let l=d.data.data;this.columnList=l.map(n=>({name:n.column_name,type:n.column_type}))}),this.sql=`select * from ${this.selectTable} limit 0,10`,this.handleRun()},handleGetTable(){let t={"com.mysql.cj.jdbc.Driver":"SHOW TABLES","com.microsoft.sqlserver.jdbc.SQLServerDriver":"","org.postgresql.Driver":"SELECT tablename FROM pg_catalog.pg_tables WHERE schemaname='public';","oracle.jdbc.OracleDriver":""},e=this.getSql(t[this.form.driverClass]);b(e).then(a=>{let d=a.data.data,l=[];d.forEach(n=>{Object.keys(n).forEach(c=>{l.push({name:n[c]})})}),this.tableList=l})}}},D={class:"db__box"},V={class:"db__table"},R=["onClick"],M={class:"db__column"},B={class:"db__content"},F={class:"db__input"},H={class:"db__result"};function N(t,e,a,d,l,n){const c=r("el-tooltip"),q=r("monaco-editor"),y=r("el-button"),L=r("avue-crud"),S=r("el-dialog");return i(),f(S,{title:"数据库测试连接",class:"avue-dialog db","destroy-on-close":"","append-to-body":"","close-on-click-modal":!1,"modal-append-to-body":"",modelValue:l.box,"onUpdate:modelValue":e[1]||(e[1]=s=>l.box=s),width:"90%"},{default:m(()=>[o("div",D,[o("ul",V,[e[2]||(e[2]=o("div",{class:"db__title"},"数据表",-1)),(i(!0),u(v,null,g(l.tableList,(s,h)=>(i(),u("li",{class:T({"is-active":s.name==l.selectTable}),key:h,onClick:w=>n.handleGetColumn(s)},[_(c,{effect:"dark",content:s.name,placement:"right"},{default:m(()=>[o("span",null,p(s.name),1)]),_:2},1032,["content"])],10,R))),128))]),o("ul",M,[e[3]||(e[3]=o("div",{class:"db__title"},"数据字段",-1)),(i(!0),u(v,null,g(l.columnList,(s,h)=>(i(),u("li",{key:h},[_(c,{effect:"dark",content:s.name,placement:"right"},{default:m(()=>[o("span",null,p(s.name),1)]),_:2},1032,["content"]),o("span",null,p(s.type),1)]))),128))]),o("div",B,[o("div",F,[_(q,{modelValue:l.sql,"onUpdate:modelValue":e[0]||(e[0]=s=>l.sql=s),language:"sql",height:"200"},null,8,["modelValue"]),_(y,{type:"primary",icon:"el-icon-thumb",class:"db__run",onClick:n.handleRun},{default:m(()=>[...e[4]||(e[4]=[j("运行",-1)])]),_:1},8,["onClick"])]),o("div",H,[l.data.length!=!1?(i(),f(L,{key:0,style:{width:"100%"},option:n.option,data:l.data},null,8,["option","data"])):x("",!0)])])])]),_:1},8,["modelValue"])}const U=C(O,[["render",N]]);export{U as d};
|