Commit c6e18d10 authored by 黎博's avatar 黎博

新增环境详情按钮判断

parent 668eec26
......@@ -143,3 +143,12 @@ export function flushRedis(data) {
data
})
}
// 根据角色id获取对应的namespace
export function getNsByRoleId(queryInfo) {
return request({
url: '/k8s/role/namespace',
method: 'get',
params: queryInfo
})
}
......@@ -6,10 +6,10 @@
<i class="el-icon-menu"></i>
基础服务
<div style="float: right;">
<el-button type="warning" size="mini" round @click="getRepository('base')">新增服务</el-button>
<el-button type="warning" size="mini" round v-show="nsList.indexOf(namespace) > -1" @click="getRepository('base')">新增服务</el-button>
<el-button type="success" size="mini" round @click="refresh">刷新状态</el-button>
<el-dropdown>
<el-button type="primary" size="mini" round>
<el-button type="primary" size="mini" round v-show="nsList.indexOf(namespace) > -1">
更多操作
</el-button>
<el-dropdown-menu slot="dropdown">
......@@ -102,11 +102,11 @@
<i class="el-icon-document"></i>
详细信息
</el-dropdown-item>
<el-dropdown-item @click.native="restartService(scope.row)">
<el-dropdown-item v-show="nsList.indexOf(namespace) > -1" @click.native="restartService(scope.row)">
<i class="el-icon-refresh"></i>
重置服务
</el-dropdown-item>
<el-dropdown-item style="color: red" @click.native="deleteService(scope.row) ">
<el-dropdown-item v-show="nsList.indexOf(namespace) > -1" style="color: red" @click.native="deleteService(scope.row) ">
<i class="el-icon-delete"></i>
删除服务
</el-dropdown-item>
......@@ -123,7 +123,7 @@
<i class="el-icon-menu"></i>
{{ item.projectType.toUpperCase() }} 服务
<div style="float: right">
<el-button type="warning" size="mini" round @click="getRepository(item.projectType)">新增服务</el-button>
<el-button v-show="nsList.indexOf(namespace) > -1" type="warning" size="mini" round @click="getRepository(item.projectType)">新增服务</el-button>
<el-button type="success" size="mini" round @click="refresh">刷新状态</el-button>
</div>
</div>
......@@ -193,17 +193,17 @@
<i class="el-icon-document"></i>
详细信息
</el-dropdown-item>
<el-dropdown-item @click.native="openUpdateServiceDialog(scope.row)">
<el-dropdown-item v-show="nsList.indexOf(namespace) > -1" @click.native="openUpdateServiceDialog(scope.row)">
<i class="el-icon-refresh"></i>
更新服务
</el-dropdown-item>
<el-dropdown-item @click.native="restartService(scope.row)">
<el-dropdown-item v-show="nsList.indexOf(namespace) > -1" @click.native="restartService(scope.row)">
<i class="el-icon-refresh"></i>
重置服务
</el-dropdown-item>
<el-dropdown-item style="color: red" @click.native="deleteService(scope.row, item) ">
<el-dropdown-item v-show="nsList.indexOf(namespace) > -1" style="color: red" @click.native="deleteService(scope.row, item) ">
<i class="el-icon-delete"></i>
删除服务
</el-dropdown-item>
......@@ -308,7 +308,7 @@
</el-dialog>
<!-- 同步MQ对话框 -->
<el-dialog title="同步MQ" :visible.sync="mqSyncDialogVisible" width="50%" :before-close="handleClose">
<el-dialog title="同步MQ" :visible.sync="mqSyncDialogVisible" width="50%">
<el-form ref="mqDataForm" label-position="left" label-width="130px" style="width: 95%; margin-left:20px;">
<el-form-item label="Namespace名称">
<el-input v-model="namespace" :disabled="true" />
......@@ -381,7 +381,8 @@ export default {
lock: true,
spinner: 'el-icon-loading',
background: 'rgba(0,0,0,0.7)'
}
},
nsList: window.sessionStorage.getItem('nsList').split(',')
}
},
created() {
......@@ -628,7 +629,7 @@ export default {
const sn = scopeData.serviceName
const ns = this.namespace
// const url = `http://kibana-new.quantgroups.com/app/kibana#/discover?_g=(filters:!(),refreshInterval:(pause:!f,value:5000),time:(from:now-2m,to:now))&_a=(columns:!(message),filters:!(('$state':(store:appState),meta:(alias:!n,disabled:!f,index:c7d3a2f0-b760-11e9-a937-01944fbd6d1d,key:k8s.namespace,negate:!f,params:(query:${ns}),type:phrase,value:${ns}),query:(match:(k8s.namespace:(query:${ns},type:phrase)))),('$state':(store:appState),meta:(alias:!n,disabled:!f,index:c7d3a2f0-b760-11e9-a937-01944fbd6d1d,key:k8s.svcname,negate:!f,params:(query:${sn}),type:phrase,value:${sn}),query:(match:(k8s.svcname:(query:${sn},type:phrase))))),index:c7d3a2f0-b760-11e9-a937-01944fbd6d1d,interval:auto,query:(language:kuery,query:''),sort:!(logtime,desc))`
const url = `http://kibana.liangkebang.com/app/kibana#/discover?_g=(filters:!(),refreshInterval:(pause:!t,value:5000),time:(from:now-15m,to:now))&_a=(columns:!(message),filters:!(('$state':(store:appState),meta:(alias:!n,disabled:!f,index:'64887440-a955-11ea-8847-cfc3eef68da1',key:k8s.namespace,negate:!f,params:(query:${ns}),type:phrase,value:${ns}),query:(match:(k8s.namespace:(query:${ns},type:phrase)))),('$state':(store:appState),meta:(alias:!n,disabled:!f,index:'64887440-a955-11ea-8847-cfc3eef68da1',key:k8s.svcname,negate:!f,params:(query:${sn}),type:phrase,value:${sn}),query:(match:(k8s.svcname:(query:${sn},type:phrase))))),index:'64887440-a955-11ea-8847-cfc3eef68da1',interval:auto,query:(language:kuery,query:''),sort:!(logtime,desc))`
const url = `http://kibana.liangkebang.com/app/kibana#/discover?_g=(filters:!(),refreshInterval:(pause:!t,value:5000),time:(from:now-15m,to:now))&_a=(columns:!(message),filters:!(('$state':(store:appState),meta:(alias:!n,disabled:!f,index:'9d74e370-c834-11eb-b8c6-3bc355f78a8d',key:k8s.namespace,negate:!f,params:(query:${ns}),type:phrase,value:${ns}),query:(match:(k8s.namespace:(query:${ns},type:phrase)))),('$state':(store:appState),meta:(alias:!n,disabled:!f,index:'9d74e370-c834-11eb-b8c6-3bc355f78a8d',key:k8s.svcname,negate:!f,params:(query:${sn}),type:phrase,value:${sn}),query:(match:(k8s.svcname:(query:${sn},type:phrase))))),index:'9d74e370-c834-11eb-b8c6-3bc355f78a8d',interval:auto,query:(language:kuery,query:''),sort:!(logtime,desc))`
window.open(`${url}`, '_blank')
},
linkLog(scopeData) {
......
......@@ -33,6 +33,7 @@
import { mapGetters } from 'vuex'
import menu from './menu.json'
import { getUserDetail } from '@/api/Login/'
import { getNsByRoleId } from '@/api/k8s'
export default {
name: 'Aside',
......@@ -115,6 +116,12 @@ export default {
this.menuList = resp.data.data.menuList
this.getNav()
})
},
// 获取namespace列表,该列表决定用户是否展示新增、更新等按钮
getUserNsList() {
getNsByRoleId().then((resp) => {
window.sessionStorage.setItem('nsList', resp.data.data)
})
}
},
computed: {
......@@ -131,6 +138,7 @@ export default {
created() {
this.activePath = window.sessionStorage.getItem('activePath')
this.getUserDetail()
this.getUserNsList()
}
}
</script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment