fix: 集群列表查询/删除
							parent
							
								
									4db64f287b
								
							
						
					
					
						commit
						1254045093
					
				| 
						 | 
					@ -2501,26 +2501,42 @@ export function policyColor(value) {
 | 
				
			||||||
  return obj[value] || 'danger'
 | 
					  return obj[value] || 'danger'
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export function tceClusterColor(value) {
 | 
					export function ctstackClusterColor(value) {
 | 
				
			||||||
  const obj = {
 | 
					  const obj = {
 | 
				
			||||||
    Running: 'success',
 | 
					    normal: 'success',
 | 
				
			||||||
    Creating: 'warning',
 | 
					    creating: 'warning',
 | 
				
			||||||
    Abnormal: 'danger',
 | 
					    create_fail: 'danger',
 | 
				
			||||||
    Failed: 'danger',
 | 
					    adjust: 'warning',
 | 
				
			||||||
    Initializing: 'warning',
 | 
					    updating: 'warning',
 | 
				
			||||||
    enabled: 'success',
 | 
					    suspend: 'warning',
 | 
				
			||||||
    disabled: 'danger'
 | 
					    deleting: 'warning',
 | 
				
			||||||
 | 
					    deleted: 'success',
 | 
				
			||||||
 | 
					    delete_fail: 'danger',
 | 
				
			||||||
 | 
					    resetting: 'warning',
 | 
				
			||||||
 | 
					    resettled: 'success',
 | 
				
			||||||
 | 
					    reset_fail: 'danger',
 | 
				
			||||||
 | 
					    upgrading: 'warning',
 | 
				
			||||||
 | 
					    upgrade_fail: 'danger'
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return obj[value]
 | 
					  return obj[value]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export function tceClusterText(value) {
 | 
					export function ctstackClusterText(value) {
 | 
				
			||||||
  const obj = {
 | 
					  const obj = {
 | 
				
			||||||
    Running: '运行中',
 | 
					    normal: '正常',
 | 
				
			||||||
    Creating: '创建中',
 | 
					    creating: '创建中',
 | 
				
			||||||
    Abnormal: '异常',
 | 
					    create_fail: '创建失败',
 | 
				
			||||||
    Failed: '失败',
 | 
					    adjust: '规模调整中',
 | 
				
			||||||
    Initializing: '创建中'
 | 
					    updating: '升级中',
 | 
				
			||||||
 | 
					    suspend: '暂停',
 | 
				
			||||||
 | 
					    deleting: '删除中',
 | 
				
			||||||
 | 
					    deleted: '已删除',
 | 
				
			||||||
 | 
					    delete_fail: '删除失败',
 | 
				
			||||||
 | 
					    resetting: '节点重置中',
 | 
				
			||||||
 | 
					    resettled: '节点已重置',
 | 
				
			||||||
 | 
					    reset_fail: '节点重置失败',
 | 
				
			||||||
 | 
					    upgrading: '集群升级中',
 | 
				
			||||||
 | 
					    upgrade_fail: '集群升级失败'
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return obj[value]
 | 
					  return obj[value]
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
<template>
 | 
					<template>
 | 
				
			||||||
  <div>
 | 
					  <div>
 | 
				
			||||||
    <cb-advance-table @cell-click="handleCellClick" :data="clusterTableData" :params="params" :columns="Clustercolumns" :get-list="getClusterData" :total="total" :loading="loading">
 | 
					    <cb-advance-table :data="clusterTableData" :params="params" :columns="Clustercolumns" :get-list="getClusterData" :total="total" :loading="loading" :search-configs="searchConfigs">
 | 
				
			||||||
      <template v-slot:action>
 | 
					      <template v-slot:action>
 | 
				
			||||||
        <el-button type="primary" @click="addCluster()"> 新增 </el-button>
 | 
					        <el-button type="primary" @click="addCluster()"> 新增 </el-button>
 | 
				
			||||||
      </template>
 | 
					      </template>
 | 
				
			||||||
| 
						 | 
					@ -9,7 +9,7 @@
 | 
				
			||||||
        <span v-else>{{ val }}</span>
 | 
					        <span v-else>{{ val }}</span>
 | 
				
			||||||
      </template>
 | 
					      </template>
 | 
				
			||||||
      <template #clusterStatus="val">
 | 
					      <template #clusterStatus="val">
 | 
				
			||||||
        <cb-status-icon :type="val | tceClusterColor" v-if="val && val.toLowerCase() != 'stopped'">{{ val | tceClusterText }}</cb-status-icon>
 | 
					        <cb-status-icon :type="val | ctstackClusterColor" v-if="val && val.toLowerCase() != 'stopped'">{{ val | ctstackClusterText }}</cb-status-icon>
 | 
				
			||||||
      </template>
 | 
					      </template>
 | 
				
			||||||
      <template #clusterOs="val">
 | 
					      <template #clusterOs="val">
 | 
				
			||||||
        {{ val ? val : 'ubuntu16.04.1 LTSx86_64' }}
 | 
					        {{ val ? val : 'ubuntu16.04.1 LTSx86_64' }}
 | 
				
			||||||
| 
						 | 
					@ -26,29 +26,23 @@
 | 
				
			||||||
      </template>
 | 
					      </template>
 | 
				
			||||||
    </cb-advance-table>
 | 
					    </cb-advance-table>
 | 
				
			||||||
    <detail v-if="detaildialogVisible" :detail="detail" @back="detaildialogVisible = false" :platform-object="platformObject"></detail>
 | 
					    <detail v-if="detaildialogVisible" :detail="detail" @back="detaildialogVisible = false" :platform-object="platformObject"></detail>
 | 
				
			||||||
    <bind :add-data="bindData" v-if="bindData.dialog"></bind>
 | 
					 | 
				
			||||||
    <service ref="serviceTable" v-if="serviceVisible" :vendorId="platformObject.vendorId" :clusterInfo="clusterInfo" @close="closeService"></service>
 | 
					 | 
				
			||||||
    <modify-cluster :add-data="modifyClusterData" :vendor-id="platformObject.vendorId" v-if="modifyClusterData.dialog"></modify-cluster>
 | 
					    <modify-cluster :add-data="modifyClusterData" :vendor-id="platformObject.vendorId" v-if="modifyClusterData.dialog"></modify-cluster>
 | 
				
			||||||
    <delete-cluster :data="deleteClusterData" :vendor-id="platformObject.vendorId" v-if="deleteClusterData.dialog" :clusterInfo="clusterInfo"></delete-cluster>
 | 
					 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</template>
 | 
					</template>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<script>
 | 
					<script>
 | 
				
			||||||
// 整个 container 都是从 TCE 复制过来, 有不需要的暂时不删除
 | 
					// 整个 container 都是从 TCE 复制过来, 有用不到的
 | 
				
			||||||
import bind from './bind.vue'
 | 
					import { getClusterList, deleteCluster } from 'views/resource/ctstack/services/tke.js'
 | 
				
			||||||
import { getClusterList } from 'views/resource/ctstack/services/tke.js'
 | 
					 | 
				
			||||||
import { removeFloatIp, detailFloatIp } from 'views/resource/ctstack/services/floatips.js'
 | 
					import { removeFloatIp, detailFloatIp } from 'views/resource/ctstack/services/floatips.js'
 | 
				
			||||||
import { getRegion } from 'views/resource/ctstack/services/regions.js'
 | 
					import { getRegion } from 'views/resource/ctstack/services/regions.js'
 | 
				
			||||||
import service from './service/index.vue'
 | 
					 | 
				
			||||||
import modifyCluster from './modifyCluster.vue'
 | 
					import modifyCluster from './modifyCluster.vue'
 | 
				
			||||||
import deleteCluster from './deleteCluster.vue'
 | 
					 | 
				
			||||||
import webSocket from '@cmp/cmp-common/mixins/getGlobalSocket'
 | 
					import webSocket from '@cmp/cmp-common/mixins/getGlobalSocket'
 | 
				
			||||||
import detail from './detail.vue'
 | 
					import detail from './detail.vue'
 | 
				
			||||||
import AssignTenant from 'views/platform/assign/index.vue'
 | 
					import AssignTenant from 'views/platform/assign/index.vue'
 | 
				
			||||||
const Clustercolumns = [
 | 
					const Clustercolumns = [
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    label: 'ID',
 | 
					    label: 'ID',
 | 
				
			||||||
    prop: 'clusterId',
 | 
					    prop: 'clusterUuid',
 | 
				
			||||||
    disabled: true,
 | 
					    disabled: true,
 | 
				
			||||||
    scopedSlots: { customRender: 'name' }
 | 
					    scopedSlots: { customRender: 'name' }
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
| 
						 | 
					@ -56,30 +50,39 @@ const Clustercolumns = [
 | 
				
			||||||
    label: '名称',
 | 
					    label: '名称',
 | 
				
			||||||
    prop: 'name'
 | 
					    prop: 'name'
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: '部署模式',
 | 
				
			||||||
 | 
					    prop: 'clusterSpec'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: '集群版本',
 | 
				
			||||||
 | 
					    prop: 'version'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: 'Service IP 地址范围',
 | 
				
			||||||
 | 
					    prop: 'serviceCidr'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: 'Pod IP地址范围',
 | 
				
			||||||
 | 
					    prop: 'nodeCidr'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: '资源池ID',
 | 
				
			||||||
 | 
					    prop: 'resourceGroupUuid'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: '弹性ip',
 | 
				
			||||||
 | 
					    prop: 'eipUuid'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  {
 | 
				
			||||||
 | 
					    label: 'VPC',
 | 
				
			||||||
 | 
					    prop: 'vpcUuid'
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    label: '状态',
 | 
					    label: '状态',
 | 
				
			||||||
    prop: 'clusterStatus',
 | 
					    prop: 'clusterStatus',
 | 
				
			||||||
    scopedSlots: { customRender: 'clusterStatus' }
 | 
					    scopedSlots: { customRender: 'clusterStatus' }
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '版本',
 | 
					 | 
				
			||||||
    prop: 'clusterVersion',
 | 
					 | 
				
			||||||
    scopedSlots: { customRender: 'clusterVersion' }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '类型',
 | 
					 | 
				
			||||||
    prop: 'clusterType',
 | 
					 | 
				
			||||||
    customRender(val) {
 | 
					 | 
				
			||||||
      const map = {
 | 
					 | 
				
			||||||
        INDEPENDENT_CLUSTER: '独立集群'
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      return map[val] || val
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '节点数量',
 | 
					 | 
				
			||||||
    prop: 'clusterNodeNum'
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    label: '所属租户',
 | 
					    label: '所属租户',
 | 
				
			||||||
    prop: 'tenantName'
 | 
					    prop: 'tenantName'
 | 
				
			||||||
| 
						 | 
					@ -88,11 +91,6 @@ const Clustercolumns = [
 | 
				
			||||||
    label: '描述',
 | 
					    label: '描述',
 | 
				
			||||||
    prop: 'clusterDescription'
 | 
					    prop: 'clusterDescription'
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '系统',
 | 
					 | 
				
			||||||
    prop: 'clusterOs',
 | 
					 | 
				
			||||||
    scopedSlots: { customRender: 'clusterOs' }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    label: '创建时间',
 | 
					    label: '创建时间',
 | 
				
			||||||
    prop: 'gmtCreate'
 | 
					    prop: 'gmtCreate'
 | 
				
			||||||
| 
						 | 
					@ -106,10 +104,7 @@ const Clustercolumns = [
 | 
				
			||||||
export default {
 | 
					export default {
 | 
				
			||||||
  mixins: [webSocket],
 | 
					  mixins: [webSocket],
 | 
				
			||||||
  components: {
 | 
					  components: {
 | 
				
			||||||
    bind,
 | 
					 | 
				
			||||||
    service,
 | 
					 | 
				
			||||||
    modifyCluster,
 | 
					    modifyCluster,
 | 
				
			||||||
    deleteCluster,
 | 
					 | 
				
			||||||
    detail,
 | 
					    detail,
 | 
				
			||||||
    AssignTenant
 | 
					    AssignTenant
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
| 
						 | 
					@ -125,14 +120,8 @@ export default {
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  data() {
 | 
					  data() {
 | 
				
			||||||
    return {
 | 
					    return {
 | 
				
			||||||
      clusterInfo: {},
 | 
					 | 
				
			||||||
      instanceVisible: false,
 | 
					 | 
				
			||||||
      secrectVisible: false,
 | 
					 | 
				
			||||||
      serviceVisible: false,
 | 
					 | 
				
			||||||
      flexibleVisible: false,
 | 
					 | 
				
			||||||
      Clustercolumns,
 | 
					      Clustercolumns,
 | 
				
			||||||
      clusterTableData: [],
 | 
					      clusterTableData: [],
 | 
				
			||||||
      activeName: 'first', // 从这里开始
 | 
					 | 
				
			||||||
      loading: false,
 | 
					      loading: false,
 | 
				
			||||||
      detaildialogVisible: false,
 | 
					      detaildialogVisible: false,
 | 
				
			||||||
      detail: {},
 | 
					      detail: {},
 | 
				
			||||||
| 
						 | 
					@ -141,25 +130,24 @@ export default {
 | 
				
			||||||
        rows: 10
 | 
					        rows: 10
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      total: 0,
 | 
					      total: 0,
 | 
				
			||||||
      addData: {
 | 
					 | 
				
			||||||
        dialog: false,
 | 
					 | 
				
			||||||
        data: {}
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      regionList: [],
 | 
					 | 
				
			||||||
      bindData: {
 | 
					 | 
				
			||||||
        dialog: false,
 | 
					 | 
				
			||||||
        data: {}
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      modifyClusterData: {
 | 
					      modifyClusterData: {
 | 
				
			||||||
        dialog: false,
 | 
					        dialog: false,
 | 
				
			||||||
        data: {}
 | 
					        data: {}
 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      deleteClusterData: {
 | 
					 | 
				
			||||||
        dialog: false,
 | 
					 | 
				
			||||||
        data: {}
 | 
					 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
 | 
					  watch: {
 | 
				
			||||||
 | 
					    platformObject: {
 | 
				
			||||||
 | 
					      handler(newVal, oldVal) {
 | 
				
			||||||
 | 
					        this.searchConfigs = [
 | 
				
			||||||
 | 
					          { type: 'Input', label: '名称', value: 'name' },
 | 
				
			||||||
 | 
					          { type: 'Select', label: '所属地域', data: [], value: 'regionId', props: { value: 'regionId' } },
 | 
				
			||||||
 | 
					          { type: 'Const', value: 'vendorId', initValue: this.platformObject.vendorId }
 | 
				
			||||||
 | 
					        ]
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      deep: true
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
  methods: {
 | 
					  methods: {
 | 
				
			||||||
    onmessage(data) {
 | 
					    onmessage(data) {
 | 
				
			||||||
      const arr = ['tke.modify.cluster', 'tke.delete.instance', 'tke.add.instance', 'ctstack.sync', 'ctstack.cluster', 'tke.create.cluster', 'tke.delete.cluster']
 | 
					      const arr = ['tke.modify.cluster', 'tke.delete.instance', 'tke.add.instance', 'ctstack.sync', 'ctstack.cluster', 'tke.create.cluster', 'tke.delete.cluster']
 | 
				
			||||||
| 
						 | 
					@ -170,9 +158,7 @@ export default {
 | 
				
			||||||
    addCluster() {
 | 
					    addCluster() {
 | 
				
			||||||
      this.$router.push({ name: 'ctstackCreateCluster', query: { vendorId: this.platformObject.vendorId } })
 | 
					      this.$router.push({ name: 'ctstackCreateCluster', query: { vendorId: this.platformObject.vendorId } })
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    handleCellClick(data) {
 | 
					
 | 
				
			||||||
      this.clusterInfo = data
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    edit(row) {
 | 
					    edit(row) {
 | 
				
			||||||
      this.modifyClusterData = {
 | 
					      this.modifyClusterData = {
 | 
				
			||||||
        dialog: true,
 | 
					        dialog: true,
 | 
				
			||||||
| 
						 | 
					@ -184,21 +170,12 @@ export default {
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    handleOperate(command) {
 | 
					    handleOperate(command) {
 | 
				
			||||||
      switch (command.flag) {
 | 
					      switch (command.flag) {
 | 
				
			||||||
        case 1: // 密钥
 | 
					 | 
				
			||||||
          this.showSecrect(command.row)
 | 
					 | 
				
			||||||
          break
 | 
					 | 
				
			||||||
        case 2: // 服务
 | 
					 | 
				
			||||||
          this.showService(command.row)
 | 
					 | 
				
			||||||
          break
 | 
					 | 
				
			||||||
        case 3: // 删除
 | 
					        case 3: // 删除
 | 
				
			||||||
          this.deleteCluster(command.row)
 | 
					          this.deleteCluster(command.row)
 | 
				
			||||||
          break
 | 
					          break
 | 
				
			||||||
        case 4: // 添加已有节点
 | 
					        case 4: // 添加已有节点
 | 
				
			||||||
          this.addExistInstance(command.row)
 | 
					          this.addExistInstance(command.row)
 | 
				
			||||||
          break
 | 
					          break
 | 
				
			||||||
        case 5: // 伸缩组
 | 
					 | 
				
			||||||
          this.showFlexible(command.row)
 | 
					 | 
				
			||||||
          break
 | 
					 | 
				
			||||||
        case 'node':
 | 
					        case 'node':
 | 
				
			||||||
          this.showInstance(command.row)
 | 
					          this.showInstance(command.row)
 | 
				
			||||||
          break
 | 
					          break
 | 
				
			||||||
| 
						 | 
					@ -206,46 +183,23 @@ export default {
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    deleteCluster(row) {
 | 
					    deleteCluster(row) {
 | 
				
			||||||
      this.clusterInfo = row
 | 
					      this.$confirm('确定删除集群?', '提示', {
 | 
				
			||||||
      this.deleteClusterData = {
 | 
					        confirmButtonText: '确定',
 | 
				
			||||||
        dialog: true,
 | 
					        cancelButtonText: '取消',
 | 
				
			||||||
        mode: false,
 | 
					        type: 'warning'
 | 
				
			||||||
        data: row
 | 
					      }).then(() => {
 | 
				
			||||||
 | 
					        deleteCluster(row).then(data => {
 | 
				
			||||||
 | 
					          if (data.success) {
 | 
				
			||||||
 | 
					            this.$message({
 | 
				
			||||||
 | 
					              type: 'success',
 | 
				
			||||||
 | 
					              message: data.message
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            this.getClusterData()
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
    },
 | 
					        })
 | 
				
			||||||
    closeService() {
 | 
					      })
 | 
				
			||||||
      this.serviceVisible = false
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    showService(row) {
 | 
					 | 
				
			||||||
      this.serviceVisible = true
 | 
					 | 
				
			||||||
      this.clusterInfo = row
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    closeSecrect() {
 | 
					 | 
				
			||||||
      this.secrectVisible = false
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    showSecrect(row) {
 | 
					 | 
				
			||||||
      this.secrectVisible = true
 | 
					 | 
				
			||||||
      this.clusterInfo = row
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    showFlexible(row) {
 | 
					 | 
				
			||||||
      this.flexibleVisible = true
 | 
					 | 
				
			||||||
      this.clusterInfo = row
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    closeInstance() {
 | 
					 | 
				
			||||||
      this.instanceVisible = false
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    closeFlexible() {
 | 
					 | 
				
			||||||
      this.flexibleVisible = false
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    showInstance(row) {
 | 
					 | 
				
			||||||
      this.instanceVisible = true
 | 
					 | 
				
			||||||
      this.clusterInfo = row
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    getClusterData() {
 | 
					    getClusterData() {
 | 
				
			||||||
      // if (this.instanceVisible) {
 | 
					 | 
				
			||||||
      //   this.$refs.instanceTable.getData()
 | 
					 | 
				
			||||||
      //   return
 | 
					 | 
				
			||||||
      // }
 | 
					 | 
				
			||||||
      this.loading = true
 | 
					      this.loading = true
 | 
				
			||||||
      this.clusterTableData = []
 | 
					      this.clusterTableData = []
 | 
				
			||||||
      this.total = 0
 | 
					      this.total = 0
 | 
				
			||||||
| 
						 | 
					@ -277,36 +231,14 @@ export default {
 | 
				
			||||||
      this.detaildialogVisible = true
 | 
					      this.detaildialogVisible = true
 | 
				
			||||||
      this.detail = row
 | 
					      this.detail = row
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    add() {
 | 
					 | 
				
			||||||
      this.addData = {
 | 
					 | 
				
			||||||
        dialog: true,
 | 
					 | 
				
			||||||
        data: {
 | 
					 | 
				
			||||||
          vendorId: this.platformObject.vendorId
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    // 获取域
 | 
					    // 获取域
 | 
				
			||||||
    getRegion() {
 | 
					    getRegion() {
 | 
				
			||||||
      getRegion({ vendorId: this.platformObject.vendorId }).then(data => {
 | 
					      getRegion({ vendorId: this.platformObject.vendorId }).then(data => {
 | 
				
			||||||
        if (data.success) {
 | 
					        if (data.success) {
 | 
				
			||||||
          this.regionList = data.data
 | 
					          this.searchConfigs[1].data = data.data
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      })
 | 
					      })
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  mounted() {
 | 
					 | 
				
			||||||
    if (this.$router.currentRoute.params.formCreateInstance) {
 | 
					 | 
				
			||||||
      this.showInstance(this.$router.currentRoute.params.clusterInfo)
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  watch: {
 | 
					 | 
				
			||||||
    platformObject: {
 | 
					 | 
				
			||||||
      handler(newVal, oldVal) {
 | 
					 | 
				
			||||||
        this.getClusterData()
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      deep: true,
 | 
					 | 
				
			||||||
      immediate: true
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
</script>
 | 
					</script>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -64,8 +64,8 @@
 | 
				
			||||||
</template>
 | 
					</template>
 | 
				
			||||||
<script>
 | 
					<script>
 | 
				
			||||||
import instance from './instance/index.vue'
 | 
					import instance from './instance/index.vue'
 | 
				
			||||||
import key from './secrect/index'
 | 
					import key from './secrect/index.vue'
 | 
				
			||||||
import flexible from './flexible/index'
 | 
					import flexible from './flexible/index.vue'
 | 
				
			||||||
import region from './region/index.vue'
 | 
					import region from './region/index.vue'
 | 
				
			||||||
export default {
 | 
					export default {
 | 
				
			||||||
  components: { instance, key, flexible, region },
 | 
					  components: { instance, key, flexible, region },
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,92 +0,0 @@
 | 
				
			||||||
<template>
 | 
					 | 
				
			||||||
  <div>
 | 
					 | 
				
			||||||
    <cb-detail :title="clusterInfo.name + '  服务'" @goBack="goBack">
 | 
					 | 
				
			||||||
      <template v-slot:item_container>
 | 
					 | 
				
			||||||
        <cb-advance-table :data="tableData" :params="params" :columns="columns" :get-list="getData" :total="total" :loading="loading">
 | 
					 | 
				
			||||||
          <template v-slot:action> </template>
 | 
					 | 
				
			||||||
          <template #instanceState="val">
 | 
					 | 
				
			||||||
            <cb-status-icon :type="val | tceInstanceColor">{{ val | tceInstanceText }}</cb-status-icon>
 | 
					 | 
				
			||||||
          </template>
 | 
					 | 
				
			||||||
          <template #operate="val, record">
 | 
					 | 
				
			||||||
            <div class="action-divider"></div>
 | 
					 | 
				
			||||||
            <el-button type="text" @click="remove(record.id)" :disabled="record.status === 'BIND'"> 删除 </el-button>
 | 
					 | 
				
			||||||
            <div class="action-divider"></div>
 | 
					 | 
				
			||||||
          </template>
 | 
					 | 
				
			||||||
        </cb-advance-table>
 | 
					 | 
				
			||||||
      </template>
 | 
					 | 
				
			||||||
    </cb-detail>
 | 
					 | 
				
			||||||
  </div>
 | 
					 | 
				
			||||||
</template>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<script>
 | 
					 | 
				
			||||||
import { getServiceList } from 'views/resource/ctstack/services/tke.js'
 | 
					 | 
				
			||||||
const columns = [
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '名称',
 | 
					 | 
				
			||||||
    prop: 'serviceName'
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '类型',
 | 
					 | 
				
			||||||
    prop: 'type'
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: 'ip',
 | 
					 | 
				
			||||||
    prop: 'ipAddress'
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
    label: '创建时间',
 | 
					 | 
				
			||||||
    prop: 'createTime'
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
]
 | 
					 | 
				
			||||||
export default {
 | 
					 | 
				
			||||||
  props: ['vendorId', 'clusterInfo'],
 | 
					 | 
				
			||||||
  name: '',
 | 
					 | 
				
			||||||
  data() {
 | 
					 | 
				
			||||||
    return {
 | 
					 | 
				
			||||||
      searchConfigs: [{ type: 'Input', label: '名称', value: 'serviceName' }],
 | 
					 | 
				
			||||||
      searchData: {
 | 
					 | 
				
			||||||
        serviceName: ''
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      columns,
 | 
					 | 
				
			||||||
      params: {
 | 
					 | 
				
			||||||
        page: 1,
 | 
					 | 
				
			||||||
        rows: 10
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      total: 0,
 | 
					 | 
				
			||||||
      tableData: [],
 | 
					 | 
				
			||||||
      loading: false
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  methods: {
 | 
					 | 
				
			||||||
    goBack() {
 | 
					 | 
				
			||||||
      this.$emit('close')
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    getData() {
 | 
					 | 
				
			||||||
      const params = {
 | 
					 | 
				
			||||||
        page: this.params.page,
 | 
					 | 
				
			||||||
        rows: this.params.rows,
 | 
					 | 
				
			||||||
        params: JSON.stringify([{ param: { vendorId: this.vendorId, clusterId: this.clusterInfo.clusterId }, sign: 'EQ' }])
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      getServiceList(params)
 | 
					 | 
				
			||||||
        .then(data => {
 | 
					 | 
				
			||||||
          if (data.success) {
 | 
					 | 
				
			||||||
            this.tableData = data.data.rows
 | 
					 | 
				
			||||||
            this.total = data.data.total
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
        })
 | 
					 | 
				
			||||||
        .finally(() => {
 | 
					 | 
				
			||||||
          this.loading = false
 | 
					 | 
				
			||||||
        })
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  watch: {
 | 
					 | 
				
			||||||
    clusterInfo: {
 | 
					 | 
				
			||||||
      handler(newVal, oldVal) {
 | 
					 | 
				
			||||||
        this.getData()
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      deep: true,
 | 
					 | 
				
			||||||
      immediate: true
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
</script>
 | 
					 | 
				
			||||||
| 
						 | 
					@ -139,12 +139,8 @@ export function modifyInstance({ id, newName }) {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// 集群  删除
 | 
					// 集群  删除
 | 
				
			||||||
export function deleteCluster(params, mode) {
 | 
					export function deleteCluster(params) {
 | 
				
			||||||
  const formData = new FormData()
 | 
					  return request.delete(`${clusterListUrl}/${params.id}`)
 | 
				
			||||||
  formData.append('mode', mode)
 | 
					 | 
				
			||||||
  return request.delete(`${clusterListUrl}/${params.id}`, {
 | 
					 | 
				
			||||||
    data: formData
 | 
					 | 
				
			||||||
  })
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// 容器服务  日志列表
 | 
					// 容器服务  日志列表
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue