UNPKG

goldpankit

Version:

GoldPanKit是一款极速研发套件,可在套件中快速构建各类技术框架和项目。开源作者可发布自己的项目,并为其设定金额,实现开源项目的盈利。

2 lines (1 loc) 5.45 kB
import{I as S,a as V}from"./InnerRouterViewWindow-c82bd9e7.js";import{_ as k,r as c,o as d,h as j,w as o,a as n,b as t,e as u,t as r,c as p,F as b,p as g,l as $,C as E,D as F,E as B,G as W,H as T,I as N,A as P,B as q,g as z,j as H}from"./index-bc20a01a.js";import{P as M}from"./Pagination-6a5fcae7.js";const O={name:"DatabaseView",props:{projectId:{required:!0},database:{required:!0}},data(){return{hidden:{host:!0,username:!0,password:!0}}},methods:{gotoQueryModels(){this.$router.push({name:"DatabaseQueryModel",query:{project:this.projectId,db:this.database.id}})}}},D=e=>(g("data-v-b21d1b8d"),e=e(),$(),e),Q={class:"content-wrap"},R=D(()=>n("span",{class:"content-holder"},"******",-1)),A={class:"content-wrap"},G=D(()=>n("span",{class:"content-holder"},"******",-1)),L={class:"content-wrap"},J=D(()=>n("span",{class:"content-holder"},"******",-1)),K={class:"toolbar"};function U(e,a,l,I,s,m){const _=c("el-descriptions-item"),f=c("View"),h=c("el-icon"),w=c("Hide"),y=c("el-button"),v=c("el-descriptions");return d(),j(v,{title:l.database.name},{extra:o(()=>[n("ul",K,[n("li",null,[t(y,{type:"primary",size:"small",onClick:m.gotoQueryModels},{default:o(()=>[u("查询模型")]),_:1},8,["onClick"])]),n("li",null,[t(y,{size:"small",icon:"Edit",onClick:a[6]||(a[6]=i=>e.$emit("edit"))},{default:o(()=>[u(r(e.$t("common.edit")),1)]),_:1})]),n("li",null,[t(y,{size:"small",type:"danger",text:"",onClick:a[7]||(a[7]=i=>e.$emit("delete"))},{default:o(()=>[u(r(e.$t("common.delete")),1)]),_:1})])])]),default:o(()=>[t(_,{label:e.$t("database.databaseType")},{default:o(()=>[u(r(l.database.type),1)]),_:1},8,["label"]),t(_,{label:e.$t("database.host")},{default:o(()=>[n("div",Q,[s.hidden.host?(d(),p(b,{key:0},[R,t(h,{onClick:a[0]||(a[0]=i=>s.hidden.host=!1)},{default:o(()=>[t(f)]),_:1})],64)):(d(),p(b,{key:1},[n("span",null,r(l.database.host),1),t(h,{onClick:a[1]||(a[1]=i=>s.hidden.host=!0)},{default:o(()=>[t(w)]),_:1})],64))])]),_:1},8,["label"]),t(_,{label:e.$t("database.port")},{default:o(()=>[u(r(l.database.port),1)]),_:1},8,["label"]),t(_,{label:e.$t("database.schema")},{default:o(()=>[u(r(l.database.schema),1)]),_:1},8,["label"]),t(_,{label:e.$t("database.username")},{default:o(()=>[n("div",A,[s.hidden.username?(d(),p(b,{key:0},[G,t(h,{onClick:a[2]||(a[2]=i=>s.hidden.username=!1)},{default:o(()=>[t(f)]),_:1})],64)):(d(),p(b,{key:1},[n("span",null,r(l.database.username),1),t(h,{onClick:a[3]||(a[3]=i=>s.hidden.username=!0)},{default:o(()=>[t(w)]),_:1})],64))])]),_:1},8,["label"]),t(_,{label:e.$t("database.password")},{default:o(()=>[n("div",L,[s.hidden.password?(d(),p(b,{key:0},[J,t(h,{onClick:a[4]||(a[4]=i=>s.hidden.password=!1)},{default:o(()=>[t(f)]),_:1})],64)):(d(),p(b,{key:1},[n("span",null,r(l.database.password),1),t(h,{onClick:a[5]||(a[5]=i=>s.hidden.password=!0)},{default:o(()=>[t(w)]),_:1})],64))])]),_:1},8,["label"])]),_:1},8,["title"])}const X=k(O,[["render",U],["__scopeId","data-v-b21d1b8d"]]);const Y={components:{FormTip:E,OperaDataSourceWindow:F,Pagination:M,Empty:B,DatabaseView:X,InnerRouterViewWindow:S,InnerRouterView:V},data(){return{loading:{project:!1,databases:!1},project:null,databases:[]}},methods:{fetchProject(){this.loading.project=!0,W(this.$route.params.projectId).then(e=>{this.project=e,this.fetchDatabases()}).catch(()=>{this.loading=!1,this.$tip.apiFailed("找不到项目信息!"),this.$routers.push({name:"Desktop"})}).finally(()=>{this.loading.project=!1})},fetchDatabases(){this.loading.databases=!0,T(this.$route.params.projectId).then(e=>{setTimeout(()=>{this.databases=e,this.loading.databases=!1},500)}).catch(e=>{this.$tip.apiFailed(e),this.loading.databases=!1})},edit(e){this.$refs.operaDataSourceWindow.open(this.project.id,e)},deleteDatabase(e){const a=this.databases.find(l=>l.id===e);if(a==null){this.$tip.error("未找到数据库信息,请刷新后重试!");return}this.deleteConfirm(`确认删除「${a.name}」数据库吗?`).then(()=>{N({projectId:this.project.id,databaseId:e}).then(()=>{this.fetchDatabases()}).catch(l=>{this.$tip.apiFailed(l)})}).catch(()=>{})}},created(){this.fetchProject()}},Z=e=>(g("data-v-2da4a2ae"),e=e(),$(),e),x={key:0,class:"form"},ee={class:"wrap"},te=Z(()=>n("em",null,"kit.db.json",-1)),ae={class:"database-list-wrap"},se={class:"toolbar"},oe={key:0,class:"database-list"};function ne(e,a,l,I,s,m){const _=c("FormTip"),f=c("el-button"),h=c("DatabaseView"),w=c("Empty"),y=c("OperaDataSourceWindow"),v=P("loading");return s.project!=null?(d(),p("div",x,[n("div",ee,[n("h2",null,r(s.project.name)+"项目数据库",1),t(_,null,{default:o(()=>[u(" 当前数据库信息保存在「"),n("em",null,r(s.project.name),1),u("」项目的"),te,u("文件中。 ")]),_:1}),q((d(),p("div",ae,[n("ul",se,[n("li",null,[t(f,{type:"primary",onClick:a[0]||(a[0]=i=>e.$refs.operaDataSourceWindow.open(s.project.id))},{default:o(()=>[u(r(e.$t("database.addNewDatabase")),1)]),_:1})])]),s.databases.length>0?(d(),p("ul",oe,[(d(!0),p(b,null,z(s.databases,i=>(d(),p("li",{key:i.name},[t(h,{"project-id":s.project.id,database:i,onEdit:C=>m.edit(i),onDelete:C=>m.deleteDatabase(i.id)},null,8,["project-id","database","onEdit","onDelete"])]))),128))])):(d(),j(w,{key:1,description:"暂无数据库配置"}))])),[[v,s.loading.project||s.loading.databases]])]),t(y,{"with-tip":!1,ref:"operaDataSourceWindow",onSuccess:m.fetchDatabases},null,8,["onSuccess"])])):H("",!0)}const re=k(Y,[["render",ne],["__scopeId","data-v-2da4a2ae"]]);export{re as default};