Commit 92c54c96 authored by 徐一鸣's avatar 徐一鸣

服务管理

parent 4d1e09f9
......@@ -16,7 +16,7 @@
v-if="v.disabledRule && v.disabledRule(scope.row)"
class="btn disabled"
:key="'btn_' + index + '_' + i"
v-text="v.label"
v-text="v.getLabel ? v.getLabel(scope.row) : v.label"
>
</span>
<a
......
......@@ -8,7 +8,7 @@
:list-header="listHeader"
:list-data="listData"
:list-padding-left="35"
@list-action="initDatas"
@list-action="init"
>
<el-breadcrumb separator="/" slot="breadcrumb">
<el-breadcrumb-item :to="`/fwgl/${level}`">我的服务</el-breadcrumb-item>
......@@ -148,12 +148,15 @@ export default {
},
{
getLabel(item) {
return item.state == 1 ? "申请下架" : "申请上";
return item.state == 0 ? "申请上架" : "申请下";
},
callback(item) {
item.state == 1
? _self.applyForSoldOutItem(item)
: _self.applyForSoldUpItem(item);
item.state == 0
? _self.applyForSoldUpItem(item)
: _self.applyForSoldOutItem(item);
},
disabledRule(item) {
return item.state == 2;
},
},
{
......@@ -161,7 +164,7 @@ export default {
callback: this.deleteItem,
class: "warn",
disabledRule(item) {
return item.state === 1;
return item.state != 2;
},
},
],
......@@ -316,7 +319,7 @@ export default {
}
// TODO: 普通用户 --- 云资源服务
else if (level == 0 && type == 2) {
this.listUrl = "/apaas/service/v3/service/manager/list";
this.listUrl = "xxxxxx";
this.listHeader = [
{
label: "工作区域",
......@@ -418,7 +421,7 @@ export default {
label: "服务状态",
prop: "state",
getText(item) {
return ["已下架", "上架中"][item.state];
return ["已下架", "已上架", "上架中"][item.state];
},
align: "center",
},
......@@ -573,7 +576,7 @@ export default {
}
// TODO:组织管理员 --- 云资源管理
else if (level == 1 && type == 2) {
this.listUrl = "/apaas/service/v3/service/manager/list";
this.listUrl = "xxxxxx";
this.listHeader = [
{
label: "工作区域",
......@@ -684,18 +687,21 @@ export default {
},
{
getLabel(item) {
return item.state == 1 ? "下架" : "";
return item.state == 0 ? "上架" : "";
},
callback(item) {
item.state == 1
? _self.soldOutItem(item)
: _self.soldUpItem(item);
item.state == 0
? _self.soldUpItem(item)
: _self.soldOutItem(item);
},
},
{
label: "删除",
class: "warn",
callback: this.deleteItem,
disabledRule(item) {
return item.state === 1;
},
},
],
},
......@@ -836,7 +842,7 @@ export default {
}
// TODO:超级管理员 --- 云资源管理
else if (level == 2 && type == 2) {
this.listUrl = "/apaas/service/v3/service/manager/list";
this.listUrl = "xxxxxx";
this.listHeader = [
{
label: "所属组织",
......@@ -881,23 +887,28 @@ export default {
throw Error("The page doesn't exist");
}
},
initDatas(filter) {
init(filter) {
this.tempFliter = filter;
this.$http
.get(this.listUrl, {
params: {
data_service_type:
filter.service_type_1 &&
filter.service_type_1.map((item) => item.value).join(","), // 服务类型
(filter.service_type_1 &&
filter.service_type_1.map((item) => item.value).join(",")) ||
"", // 服务类型
sectors:
filter.service_area &&
filter.service_area.map((item) => item.value).join(","), // 服务领域
(filter.service_area &&
filter.service_area.map((item) => item.value).join(",")) ||
"", // 服务领域
openness:
filter.openness &&
filter.openness.map((item) => item.value).join(","), // 开放程度
(filter.openness &&
filter.openness.map((item) => item.value).join(",")) ||
"", // 开放程度
state:
filter.state && filter.state.map((item) => item.value).join(","), // 服务状态
(filter.state &&
filter.state.map((item) => item.value).join(",")) ||
"", // 服务状态
keyword: filter.keyword,
page: filter.page,
size: filter.size,
......@@ -914,21 +925,15 @@ export default {
},
showDialog() {
this.$refs.dialog.show();
},
editItem(item) {
this.$router.push(
`/fwgl/${this.level}/${this.type}/serviceedit/${item.id}`
);
},
applyForSoldOutItem(item) {
this.dialogInfo.title = "是否确定下架服务";
this.dialogInfo.msg =
"下架此服务会导致用户被迫暂停对服务的调用,下架前需向超级管理员发送通知,超级管理员通过后此服务将会从服务超市中下架。";
}, // 唤醒弹窗
applyForSoldUpItem(item) {
this.dialogInfo.title = "提示";
this.dialogInfo.msg = "确认申请上架此服务吗?";
this.dialogInfo.cancelText = "取消";
this.dialogInfo.sunbmitText = "发送通知";
this.dialogInfo.submit = () => {
this.$http
.post(`/apaas/service/v3/service/manager/send/downnotice`, {
.post(`/apaas/service/v3/service/manager/send/upnotice`, {
id: item.id,
})
.then(({ data }) => {
......@@ -937,67 +942,68 @@ export default {
message: data.errMsg,
type: "success",
});
this.init(this.tempFliter);
} else {
this.$message({
message: data.errMsg,
type: "warn",
type: "warning",
});
}
})
.catch((error) => {
console.log(error);
this.$message({
message: "申请${item.name}失败",
type: "warn",
message: `申请${item.name}失败`,
type: "warning",
});
});
};
this.showDialog();
},
applyForSoldUpItem(item) {
this.dialogInfo.title = "提示";
this.dialogInfo.msg = "确认申请上架此服务吗?";
}, // 服务上架申请
applyForSoldOutItem(item) {
this.dialogInfo.title = "是否确定下架服务";
this.dialogInfo.msg =
"下架此服务会导致用户被迫暂停对服务的调用,下架前需向超级管理员发送通知,超级管理员通过后此服务将会从服务超市中下架。";
this.dialogInfo.cancelText = "取消";
this.dialogInfo.sunbmitText = "发送通知";
this.dialogInfo.submit = () => {
this.$http
.post(`/apaas/service/v3/service/manager/send/upnotice`, {
.post(`/apaas/service/v3/service/manager/send/downnotice`, {
id: item.id,
})
.then((response) => {
.then(({ data }) => {
if (data.success) {
this.$message({
message: data.errMsg,
type: "success",
});
this.init(this.tempFliter);
} else {
this.$message({
message: data.errMsg,
type: "warn",
type: "warning",
});
}
})
.catch((error) => {
console.log(error);
this.$message({
message: "申请${item.name}失败",
type: "warn",
message: `申请${item.name}失败`,
type: "warning",
});
});
};
this.showDialog();
},
deleteItem(item) {
this.dialogInfo.title = "";
this.dialogInfo.msg = "是否删除该条服务";
}, // 服务下架申请
soldUpItem(item) {
this.dialogInfo.title = "提示";
this.dialogInfo.msg = "确认上架此服务吗";
this.dialogInfo.cancelText = "";
this.dialogInfo.sunbmitText = "";
this.dialogInfo.sunbmitText = "确定";
this.dialogInfo.submit = () => {
this.$http
.delete(this.deleteUrl, {
params: {
id: this.type == 1 ? item.service_apply_info.id : item.id,
},
.post(`/apaas/service/v3/service/manager/up`, {
id: item.id,
})
.then(({ data }) => {
if (data.success) {
......@@ -1005,34 +1011,23 @@ export default {
message: data.errMsg,
type: "success",
});
this.initDatas(this.tempFliter);
this.init(this.tempFliter);
} else {
this.$message({
message: data.errMsg,
type: "warn",
type: "warning",
});
}
})
.catch((error) => {
this.$message({
message: `删除${item.name}失败.`,
type: "warn",
message: `上架${item.name}失败.`,
type: "warning",
});
});
};
this.showDialog();
},
detailItem(item) {
this.$router.push(`${this.detailsUrl + item.id}`);
},
approvalItem(item) {
this.$router.push(
`/fwgl/${this.level}/${this.type}/approvalserviceedit/${item.service_apply_info.id}`
);
},
allotItem(item) {
console.log("allotItem - " + item.name);
},
}, // 上架服务(超级管理员)
soldOutItem(item) {
this.dialogInfo.title = "提示";
this.dialogInfo.msg =
......@@ -1050,32 +1045,34 @@ export default {
message: data.errMsg,
type: "success",
});
this.initDatas(this.tempFliter);
this.init(this.tempFliter);
} else {
this.$message({
message: data.errMsg,
type: "warn",
type: "warning",
});
}
})
.catch((error) => {
this.$message({
message: `下架${item.name}失败.`,
type: "warn",
type: "warning",
});
});
};
this.showDialog();
},
soldUpItem(item) {
this.dialogInfo.title = "提示";
this.dialogInfo.msg = "确认上架此服务吗";
}, // 下架服务(超级管理员)
deleteItem(item) {
this.dialogInfo.title = "";
this.dialogInfo.msg = "是否删除该条服务";
this.dialogInfo.cancelText = "";
this.dialogInfo.sunbmitText = "确定";
this.dialogInfo.sunbmitText = "";
this.dialogInfo.submit = () => {
this.$http
.post(`/apaas/service/v3/service/manager/up`, {
id: item.id,
.delete(this.deleteUrl, {
params: {
id: this.type == 1 ? item.service_apply_info.id : item.id,
},
})
.then(({ data }) => {
if (data.success) {
......@@ -1083,26 +1080,39 @@ export default {
message: data.errMsg,
type: "success",
});
this.initDatas(this.tempFliter);
this.init(this.tempFliter);
} else {
this.$message({
message: data.errMsg,
type: "warn",
type: "warning",
});
}
})
.catch((error) => {
this.$message({
message: `上架${item.name}失败.`,
type: "warn",
message: `删除${item.name}失败.`,
type: "warning",
});
});
};
this.showDialog();
},
dialogSubmit() {
console.log("dialog submit");
},
}, // 删除服务
detailItem(item) {
this.$router.push(`${this.detailsUrl + item.id}`);
}, // 查看服务
editItem(item) {
this.$router.push(
`/fwgl/${this.level}/${this.type}/serviceedit/${item.id}`
);
}, // 编辑服务
approvalItem(item) {
this.$router.push(
`/fwgl/${this.level}/${this.type}/approvalserviceedit/${item.service_apply_info.id}`
);
}, // 审批服务
allotItem(item) {
console.log("allotItem - " + item.name);
}, // TODO: 云资源分配
},
created() {
this.level = parseInt(this.$route.params.level);
......
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