Commit c6e18d10 authored by 黎博's avatar 黎博

新增环境详情按钮判断

parent 668eec26
...@@ -143,3 +143,12 @@ export function flushRedis(data) { ...@@ -143,3 +143,12 @@ export function flushRedis(data) {
data data
}) })
} }
// 根据角色id获取对应的namespace
export function getNsByRoleId(queryInfo) {
return request({
url: '/k8s/role/namespace',
method: 'get',
params: queryInfo
})
}
...@@ -6,10 +6,10 @@ ...@@ -6,10 +6,10 @@
<i class="el-icon-menu"></i> <i class="el-icon-menu"></i>
基础服务 基础服务
<div style="float: right;"> <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-button type="success" size="mini" round @click="refresh">刷新状态</el-button>
<el-dropdown> <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-button>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
...@@ -102,11 +102,11 @@ ...@@ -102,11 +102,11 @@
<i class="el-icon-document"></i> <i class="el-icon-document"></i>
详细信息 详细信息
</el-dropdown-item> </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> <i class="el-icon-refresh"></i>
重置服务 重置服务
</el-dropdown-item> </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> <i class="el-icon-delete"></i>
删除服务 删除服务
</el-dropdown-item> </el-dropdown-item>
...@@ -123,7 +123,7 @@ ...@@ -123,7 +123,7 @@
<i class="el-icon-menu"></i> <i class="el-icon-menu"></i>
{{ item.projectType.toUpperCase() }} 服务 {{ item.projectType.toUpperCase() }} 服务
<div style="float: right"> <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> <el-button type="success" size="mini" round @click="refresh">刷新状态</el-button>
</div> </div>
</div> </div>
...@@ -193,17 +193,17 @@ ...@@ -193,17 +193,17 @@
<i class="el-icon-document"></i> <i class="el-icon-document"></i>
详细信息 详细信息
</el-dropdown-item> </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> <i class="el-icon-refresh"></i>
更新服务 更新服务
</el-dropdown-item> </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> <i class="el-icon-refresh"></i>
重置服务 重置服务
</el-dropdown-item> </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> <i class="el-icon-delete"></i>
删除服务 删除服务
</el-dropdown-item> </el-dropdown-item>
...@@ -308,7 +308,7 @@ ...@@ -308,7 +308,7 @@
</el-dialog> </el-dialog>
<!-- 同步MQ对话框 --> <!-- 同步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 ref="mqDataForm" label-position="left" label-width="130px" style="width: 95%; margin-left:20px;">
<el-form-item label="Namespace名称"> <el-form-item label="Namespace名称">
<el-input v-model="namespace" :disabled="true" /> <el-input v-model="namespace" :disabled="true" />
...@@ -381,7 +381,8 @@ export default { ...@@ -381,7 +381,8 @@ export default {
lock: true, lock: true,
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0,0,0,0.7)' background: 'rgba(0,0,0,0.7)'
} },
nsList: window.sessionStorage.getItem('nsList').split(',')
} }
}, },
created() { created() {
...@@ -628,7 +629,7 @@ export default { ...@@ -628,7 +629,7 @@ export default {
const sn = scopeData.serviceName const sn = scopeData.serviceName
const ns = this.namespace 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-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') window.open(`${url}`, '_blank')
}, },
linkLog(scopeData) { linkLog(scopeData) {
......
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import menu from './menu.json' import menu from './menu.json'
import { getUserDetail } from '@/api/Login/' import { getUserDetail } from '@/api/Login/'
import { getNsByRoleId } from '@/api/k8s'
export default { export default {
name: 'Aside', name: 'Aside',
...@@ -115,6 +116,12 @@ export default { ...@@ -115,6 +116,12 @@ export default {
this.menuList = resp.data.data.menuList this.menuList = resp.data.data.menuList
this.getNav() this.getNav()
}) })
},
// 获取namespace列表,该列表决定用户是否展示新增、更新等按钮
getUserNsList() {
getNsByRoleId().then((resp) => {
window.sessionStorage.setItem('nsList', resp.data.data)
})
} }
}, },
computed: { computed: {
...@@ -131,6 +138,7 @@ export default { ...@@ -131,6 +138,7 @@ export default {
created() { created() {
this.activePath = window.sessionStorage.getItem('activePath') this.activePath = window.sessionStorage.getItem('activePath')
this.getUserDetail() this.getUserDetail()
this.getUserNsList()
} }
} }
</script> </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