db-84d356ed.js 4.4 KB

1
  1. var x=Object.defineProperty;var L=(a,e,t)=>e in a?x(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var b=(a,e,t)=>(L(a,typeof e!="symbol"?e+"":e,t),t);import{aI as s,_ as T,K as j,T as y,r as i,o as d,d as g,w as p,f as c,c as u,F as S,a as v,n as B,b as _,t as f,l as O,u as V}from"./index-25469a7e.js";import{M as H}from"./monaco-editor-6037ad41.js";class E{static encrypt(e){return this.encryptAES(e,this.aesKey)}static decrypt(e){return this.decryptAES(e,this.aesKey)}static encryptAES(e,t=""){t||(t=this.aesKey);const n=s.AES.encrypt(e,s.enc.Utf8.parse(t),{mode:s.mode.ECB,padding:s.pad.Pkcs7}).toString();return s.enc.Hex.stringify(s.enc.Base64.parse(n))}static decryptAES(e,t=""){t||(t=this.aesKey);const n=s.enc.Base64.stringify(s.enc.Hex.parse(e));return s.AES.decrypt(n,s.enc.Utf8.parse(t),{mode:s.mode.ECB,padding:s.pad.Pkcs7}).toString(s.enc.Utf8)}static encryptDES(e,t){const n=s.enc.Utf8.parse(t);return s.DES.encrypt(e,n,{mode:s.mode.ECB,padding:s.pad.Pkcs7}).toString()}static decryptDES(e,t){const n=s.enc.Utf8.parse(t);return s.DES.decrypt({ciphertext:s.enc.Base64.parse(e)},n,{mode:s.mode.ECB,padding:s.pad.Pkcs7}).toString(s.enc.Utf8)}}b(E,"aesKey","EY8WePvjM5GGwQzn"),b(E,"desKey","jMVCBsFGDQr1USHo");const U={components:{MonacoEditor:H},data(){return{form:{},data:[],box:!1,id:null,sql:"",selectTable:"",tableList:[],columnList:[]}},computed:{option(){let a=[],e=this.data[0];return e&&Object.keys(e).forEach(t=>{a.push({label:t,prop:t,overHidden:!0})}),{height:300,menu:!1,header:!1,column:a}}},methods:{getSql(a){return{id:this.id,sql:a}},handleOpen(a){this.id=a,this.data=[],this.sql="",this.selectTable="",this.tableList=[],this.columnList=[],j(a).then(e=>{this.form=e.data.data,this.handleGetTable(),this.box=!0})},handleRun(){this.data=[];let a=this.getSql(this.sql);y(a).then(e=>{let t=e.data.data||[];this.data=t})},handleGetColumn(a){this.selectTable=a.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":""},t=this.getSql(e[this.form.driverClass]);y(t).then(n=>{let l=n.data.data;this.columnList=l.map(r=>({name:r.column_name,type:r.column_type}))}),this.sql=`select * from ${this.selectTable} limit 0,10`,this.handleRun()},handleGetTable(){let a={"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(a[this.form.driverClass]);y(e).then(t=>{let n=t.data.data,l=[];n.forEach(r=>{Object.keys(r).forEach(m=>{l.push({name:r[m]})})}),this.tableList=l})}}},M={class:"db__box"},R={class:"db__table"},A=c("div",{class:"db__title"},"数据表",-1),G=["onClick"],F={class:"db__column"},w=c("div",{class:"db__title"},"数据字段",-1),N={class:"db__content"},P={class:"db__input"},W={class:"db__result"};function Q(a,e,t,n,l,r){const m=i("el-tooltip"),q=i("monaco-editor"),k=i("el-button"),C=i("avue-crud"),D=i("el-dialog");return d(),g(D,{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]=o=>l.box=o),width:"90%"},{default:p(()=>[c("div",M,[c("ul",R,[A,(d(!0),u(S,null,v(l.tableList,(o,h)=>(d(),u("li",{class:B({"is-active":o.name==l.selectTable}),key:h,onClick:K=>r.handleGetColumn(o)},[_(m,{effect:"dark",content:o.name,placement:"right"},{default:p(()=>[c("span",null,f(o.name),1)]),_:2},1032,["content"])],10,G))),128))]),c("ul",F,[w,(d(!0),u(S,null,v(l.columnList,(o,h)=>(d(),u("li",{key:h},[_(m,{effect:"dark",content:o.name,placement:"right"},{default:p(()=>[c("span",null,f(o.name),1)]),_:2},1032,["content"]),c("span",null,f(o.type),1)]))),128))]),c("div",N,[c("div",P,[_(q,{modelValue:l.sql,"onUpdate:modelValue":e[0]||(e[0]=o=>l.sql=o),language:"sql",height:"200"},null,8,["modelValue"]),_(k,{type:"primary",icon:"el-icon-thumb",class:"db__run",onClick:r.handleRun},{default:p(()=>[O("运行")]),_:1},8,["onClick"])]),c("div",W,[l.data.length!=!1?(d(),g(C,{key:0,style:{width:"100%"},option:r.option,data:l.data},null,8,["option","data"])):V("",!0)])])])]),_:1},8,["modelValue"])}const Y=T(U,[["render",Q]]);export{E as c,Y as d};