Commit 2b477234 authored by 徐一鸣's avatar 徐一鸣

组织云资源详情页面

parent 752c769b
...@@ -243,6 +243,7 @@ export default { ...@@ -243,6 +243,7 @@ export default {
} }
.header-container .select_container .select_title { .header-container .select_container .select_title {
font-size: 14px; font-size: 14px;
font-weight: 700;
color: #242c43; color: #242c43;
margin-right: 10px; margin-right: 10px;
} }
......
<template>
<div class="approve_workspace">
<apass-list
ref="list"
search-placeholder="请输入关键字"
:other-filter="otherFilter"
:list-header="listHeader"
:list-data="listData"
:list-total="listTotal"
@list-action="init"
>
<el-breadcrumb separator="/" slot="breadcrumb">
<el-breadcrumb-item :to="`/fwgl/${level}`">
我的服务
</el-breadcrumb-item>
<el-breadcrumb-item :to="`/fwgl/${level}/${type}`">
云资源管理
</el-breadcrumb-item>
<el-breadcrumb-item>
工作区域审批
</el-breadcrumb-item>
</el-breadcrumb>
</apass-list>
<apass-dialog
ref="dialog"
:title="dialogInfo.title"
:msg="dialogInfo.msg"
:submit="dialogInfo.submit"
></apass-dialog>
</div>
</template>
<script>
import helper from "@/services/helper.js";
import apassList from "@/components/apass-list";
import apassDialog from "@/components/apass-dialog";
export default {
components: {
apassList,
apassDialog,
},
data: () => ({
level: 0, // 用户等级
type: 0, // 访问的页面
otherFilter: [],
listHeader: [],
listData: [],
listTotal: 0,
dialogInfo: {
title: "",
msg: "",
submit: null,
},
}),
computed: {},
methods: {
init(filter) {
console.log(filter);
},
showDialog() {
this.$refs.dialog.show();
},
detailAction(item) {
console.log("detailAction");
},
approveAction(item) {
console.log("approveAction");
},
deleteAction(item) {
console.log("deleteAction");
},
},
created() {
this.level = parseInt(this.$route.params.level);
this.type = parseInt(this.$route.params.type);
this.otherFilter = [
{
name: "审批状态",
prop: "approve_state",
default: "",
options: [
{
name: "全部",
value: "",
},
{
name: "待审批",
value: 0,
},
{
name: "审批通过",
value: 1,
},
{
name: "审批未通过",
value: -1,
},
],
},
];
this.listHeader = [
{
label: "工作区域名称",
prop: "name_space",
type: "button",
callback: this.detailAction,
},
{
label: "CPU(核)",
prop: "cpu",
align: "center",
},
{
label: "内存(GB)",
prop: "memory",
align: "center",
},
{
label: "容器组(个)",
prop: "containers",
align: "center",
},
{
label: "数据盘(块/GB)",
type: "tooltip",
align: "center",
getLength(item) {
let disks = (item.disk && item.disk.trim().split(" ")) || [];
return disks.length;
},
getText(item) {
let disks = (item.disk && item.disk.trim().split(" ")) || [];
return disks[0];
},
getContent(item) {
let disks = (item.disk && item.disk.trim().split(" ")) || [];
let htmlStr = `<span>数据盘(块/GB)</span><br />`;
disks.forEach((v) => {
htmlStr += `<span>数据盘:${v}</span><br />`;
});
return htmlStr;
},
},
{
label: "申请用户",
prop: "user_name",
align: "center",
},
{
label: "业务系统名",
prop: "system_name",
align: "center",
},
{
label: "申请类型",
prop: "type",
align: "center",
},
{
label: "所属组织",
prop: "org_name",
},
{
label: "用户申请时间",
prop: "apply_time",
align: "center",
},
{
label: "审批状态",
align: "center",
getText(item) {
return ["未通过", "待审批", "通过"][(item.approve_state || 0) + 1];
},
},
{
label: "操作",
type: "buttons",
align: "center",
width: 160,
actionList: [
{
label: "审批",
callback: this.approveAction,
disabledRule(item) {
return item.approve_state != 0;
},
},
{
label: "删除",
class: "warn",
callback: this.deleteAction,
},
],
},
];
this.listData = [{}, {}, {}];
},
};
</script>
<style scoped>
.approve_workspace {
height: 100%;
}
</style>
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="admin_preview-right apass_buttons"> <div class="admin_preview-right apass_button">
<el-button type="primary" size="mini" @click="approveWorkspace"> <el-button type="primary" size="mini" @click="approveWorkspace">
工作区域审批(1) 工作区域审批(1)
</el-button> </el-button>
...@@ -96,7 +96,7 @@ ...@@ -96,7 +96,7 @@
<organization-list <organization-list
slot="list" slot="list"
:data="listData" :data="listData"
details-url="/authority/organization/detail/" :details-url="`/fwgl/${level}/${type}/organizationCloudResource/`"
:hide-delete="true" :hide-delete="true"
></organization-list> ></organization-list>
</template> </template>
...@@ -491,7 +491,7 @@ export default { ...@@ -491,7 +491,7 @@ export default {
getImage(item) { getImage(item) {
return item.state == 0 return item.state == 0
? require("@/assets/imgs/ic_true.png") ? require("@/assets/imgs/ic_true.png")
: require("@/assets/imgs/ic_guoqi.png"); : require("@/assets/imgs/ic_failed.png");
}, },
}, },
{ {
...@@ -830,7 +830,7 @@ export default { ...@@ -830,7 +830,7 @@ export default {
getImage(item) { getImage(item) {
return item.state == 0 return item.state == 0
? require("@/assets/imgs/ic_true.png") ? require("@/assets/imgs/ic_true.png")
: require("@/assets/imgs/ic_guoqi.png"); : require("@/assets/imgs/ic_failed.png");
}, },
}, },
{ {
...@@ -1995,11 +1995,11 @@ export default { ...@@ -1995,11 +1995,11 @@ export default {
} }
}, },
approveWorkspace() { approveWorkspace() {
if (this.cloud_admin_warn) { /* if (this.cloud_admin_warn) {
console.log("告警 ---"); console.log("告警 ---");
} else { } else { */
console.log("审批 ---"); this.$router.push(`/fwgl/${this.level}/${this.type}/approveWorkspace`);
} // }
}, },
}, },
created() { created() {
...@@ -2115,10 +2115,10 @@ export default { ...@@ -2115,10 +2115,10 @@ export default {
margin-top: 15px; margin-top: 15px;
box-sizing: border-box; box-sizing: border-box;
} }
.apass_buttons { .apass_button {
position: relative; position: relative;
} }
.apass_buttons > .el-button { .apass_button > .el-button {
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
......
<template>
<div class="organization_cloud_resource">
<apass-list
ref="list"
search-placeholder="请输入关键字"
:other-filter="otherFilter"
:list-header="listHeader"
:list-data="listData"
:list-total="listTotal"
@list-action="init"
:list-padding-left="0"
>
<el-breadcrumb separator="/" slot="breadcrumb">
<el-breadcrumb-item :to="`/fwgl/${level}`">
我的服务
</el-breadcrumb-item>
<el-breadcrumb-item :to="`/fwgl/${level}/${type}`">
云资源管理
</el-breadcrumb-item>
<el-breadcrumb-item>
组织云资源详情
</el-breadcrumb-item>
</el-breadcrumb>
</apass-list>
<apass-dialog
ref="dialog"
:title="dialogInfo.title"
:msg="dialogInfo.msg"
:submit="dialogInfo.submit"
></apass-dialog>
</div>
</template>
<script>
import helper from "@/services/helper.js";
import apassList from "@/components/apass-list";
import apassDialog from "@/components/apass-dialog";
export default {
components: {
apassList,
apassDialog,
},
data: () => ({
level: 0, // 用户等级
type: 0, // 访问的页面
otherFilter: [],
listHeader: [],
listData: [],
listTotal: 0,
dialogInfo: {
title: "",
msg: "",
submit: null,
},
}),
computed: {},
methods: {
init(filter) {
console.log(filter);
},
showDialog() {
this.$refs.dialog.show();
},
detailAction(item) {
console.log("detailAction");
},
approveAction(item) {
console.log("approveAction");
},
deleteAction(item) {
console.log("deleteAction");
},
},
created() {
this.level = parseInt(this.$route.params.level);
this.type = parseInt(this.$route.params.type);
this.otherFilter = [
{
name: "组织名称",
prop: "organization",
default: this.$route.params.id,
options: [
{
value: "1",
name: "不许删",
},
{
value: "39",
name: "应用测试一轮shf",
},
{
value: "38",
name: "我的组织",
},
{
value: "37",
name: "1234567890",
},
{
value: "36",
name: "测试bug",
},
{
value: "35",
name: "3213123",
},
{
value: "33",
name: "B.G.R.A123",
},
{
value: "32",
name: "Bgtest23.号",
},
{
value: "31",
name: "6",
},
{
value: "30",
name: "R.A.M.H.S.U",
},
],
},
];
this.listHeader = [
{
label: "运行状态",
align: "center",
type: "image",
getImage(item) {
return item.state == 0
? require("@/assets/imgs/ic_true.png")
: require("@/assets/imgs/ic_failed.png");
},
},
{
label: "工作区域名称",
prop: "name_space",
type: "button",
callback: this.detailAction,
},
{
label: "CPU(核)",
prop: "cpu",
align: "center",
},
{
label: "内存(GB)",
prop: "memory",
align: "center",
},
{
label: "容器组(个)",
prop: "containers",
align: "center",
},
{
label: "数据盘(块/GB)",
type: "tooltip",
align: "center",
getLength(item) {
let disks = (item.disk && item.disk.trim().split(" ")) || [];
return disks.length;
},
getText(item) {
let disks = (item.disk && item.disk.trim().split(" ")) || [];
return disks[0];
},
getContent(item) {
let disks = (item.disk && item.disk.trim().split(" ")) || [];
let htmlStr = `<span>数据盘(块/GB)</span><br />`;
disks.forEach((v) => {
htmlStr += `<span>数据盘:${v}</span><br />`;
});
return htmlStr;
},
},
{
label: "申请用户",
prop: "user_name",
align: "center",
},
{
label: "业务系统名",
prop: "system_name",
align: "center",
},
{
label: "初次申请状态",
align: "center",
getText(item) {
return ["未通过", "待审批", "通过"][(item.approve_state || 0) + 1];
},
},
{
label: "资源调整结果",
align: "center",
getText(item) {
return ["未通过", "待审批", "通过"][
(item.approve_update_state || 0) + 1
];
},
},
{
label: "用户申请时间",
prop: "apply_time",
align: "center",
},
{
label: "操作",
type: "buttons",
align: "center",
width: 80,
actionList: [
{
getLabel(item) {
return item.use_uid ? "已分配" : "分配";
},
callback: this.cloudAllot,
disabledRule(item) {
return item.use_uid;
},
},
],
},
];
this.listData = [{}, {}, {}];
},
};
</script>
<style scoped>
.organization_cloud_resource {
height: 100%;
}
</style>
...@@ -73,6 +73,16 @@ export default new Router({ ...@@ -73,6 +73,16 @@ export default new Router({
name: "servicedetail", name: "servicedetail",
component: () => import("@/pages/workbench/fwgl/cloud-detail"), component: () => import("@/pages/workbench/fwgl/cloud-detail"),
}, // 云资源 - 详情 }, // 云资源 - 详情
{
path: "/fwgl/:level/:type/approveWorkspace",
name: "servicedetail",
component: () => import("@/pages/workbench/fwgl/approveWorkspace"),
}, // 云资源 - 工作区域审批
{
path: "/fwgl/:level/:type/organizationCloudResource/:id",
name: "servicedetail",
component: () => import("@/pages/workbench/fwgl/organizationCloudResource"),
}, // 云资源 - 组织云资源详情
], ],
}, // 工作台 - 服务管理模块 }, // 工作台 - 服务管理模块
{ {
......
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