2 lines
6.9 KiB
JavaScript
Raw Normal View History

2025-06-30 09:38:03 +08:00
import{_ as B,H as _,I as N,J as O,K as A,L as M,M as K,r as l,j as H,o as u,d as p,w as d,k as C,m as D,b as c,l as F,f as n,C as W,u as S,c as f,a as I,t as v,F as J,N as Q}from"./index-f87df9cc.js";import{d as $}from"./db-e07de7fa.js";import"./monaco-editor-f9caa2e2.js";const b=[{label:"mysql",value:"com.mysql.cj.jdbc.Driver",url:"jdbc:mysql://localhost:3306/bladex_report"},{label:"sqlServer",value:"com.microsoft.sqlserver.jdbc.SQLServerDriver",url:"jdbc:sqlserver://127.0.0.1:1433;DatabaseName=bladex"},{label:"postgreSql",value:"org.postgresql.Driver",url:"jdbc:postgresql://127.0.0.1:5432/bladex"},{label:"oracle",value:"oracle.jdbc.OracleDriver",url:"jdbc:oracle:thin:@127.0.0.1:1521:orcl"}],G={data(){return{search:{},loading:!1,isEdit:!1,form:{},page:{pageSize:10,currentPage:1,total:0},option:{height:"auto",calcHeight:360,header:!1,index:!0,copyBtn:!0,labelWidth:110,menuWidth:280,column:[{label:"名称",prop:"name",width:120,rules:[{required:!0,message:"请输入数据源名称",trigger:"blur"}]},{label:"类型",prop:"driverClass",type:"select",width:200,dicData:b,rules:[{required:!0,message:"请选择类型",trigger:"blur"}]},{label:"用户名",prop:"username",width:120,rules:[{required:!0,message:"请输入用户名",trigger:"blur"}]},{label:"密码",prop:"password",type:"password",hide:!0,rules:[{required:!0,message:"请输入密码",trigger:"blur"}]},{label:"连接地址",prop:"url",type:"textarea",overHidden:!0,span:24,rules:[{required:!0,message:"请输入连接地址",trigger:"blur"}]},{label:"备注",prop:"remark",span:24,minRows:3,hide:!0,type:"textarea"}]},data:[],publicPath:"/DataV/"}},components:{db:$},watch:{"form.driverClass"(e){if(this.isEdit){this.isEdit=!1;return}let t=b.find(o=>o.value==e)||{};this.form.url=t.url}},methods:{validData(e){return[0,1,2,3].includes(e)},getTypeLabel(e){return b.find(t=>t.value==e).label},handleEdit(e,t){this.$refs.crud.rowEdit(e,t)},rowSave(e,t,o){e.password=_.encryptAES(e.password),N(e).then(()=>{this.onLoad(),this.$message({type:"success",message:"操作成功!"}),t()}).catch(i=>{o()})},rowUpdate(e,t,o,i){if(this.validData(t)&&this.$website.isDemo)return this.$message.error(this.$website.isDemoTip),o(),!1;e.password=_.encryptAES(e.password),O(e).then(()=>{o(),this.onLoad(),this.$message({type:"success",message:"操作成功!"})}).catch(s=>{i()})},rowDel(e,t){if(this.validData(t)&&this.$website.isDemo)return this.$message.error(this.$website.isDemoTip),!1;this.$confirm("确定将选择数据删除?",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>A(e.id)).then(()=>{this.onLoad(),this.$message({type:"success",message:"操作成功!"})})},beforeOpen(e,t){["edit","view"].includes(t)?M(this.form.id).then(o=>{const i=o.data.data;this.form={...i,password:_.decryptAES(i.password)},e()}):e()},refreshChange(){this.onLoad()},handleTest(e){let t=!1;e&&(t=!0);const o=e||{...this.form,password:_.encryptAES(this.form.password)},i=()=>{Q({driverClass:o.driverClass,url:o.url,username:o.username,password:o.password}).then(s=>{s.data&&s.data.code==200?(this.$message.success(s.data&&s.data.msg||"连接成功"),t&&this.$refs.db.handleOpen(e.id)):this.$message.error(s.data&&s.data.msg||"连接失败,请检查相关配置参数")})};this.$refs.crud&&this.$refs.crud.validate&&!e?this.$refs.crud.validate((s,r,w)=>{if(s)r(),i();else return!1}):i()},onLoad(){this.loading=!0,K({name:this.search.name,current:this.page.currentPage,size:this.page.pageSize}).then(e=>{this.loading=!1;const t=e.data.data;let o=t.records;o.forEach(i=>i._menu=!1),this.page.total=t.total,this.data=o})},handleCurrentChange(e){this.page.currentPage=e,this.onLoad()},handleSizeChange(e){this.page.pageSize=e,this.onLoad()}}},X={class:"content__box content__nav"},Y=["src"],Z=n("div",null,[n("p",null,"创建数据源"),n("span",null,"多库查询 自由组合")],-1),ee={class:"content__page"},te={class:"list-search"},se={class:"content__box"},ae=["onMouseenter","onMouseleave"],ne={class:"content__info"},oe={class:"content__logo"},re=["src"],le={key:0,class:"content__menu"},ie={class:"content__st