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

Merge branch 'xym' into dev

parents 4f7d9b0f 5dcabe02
......@@ -475,3 +475,19 @@ width: 620px!important;
.bread_crumb1 .is-link {
color: #898d9e !important;
}
/* 应用超市详情页公共样式 */
.sevice_detail {
max-width: 1200px;
margin: 0 auto;
}
.sevice_breadcrumb > .el-breadcrumb .el-breadcrumb__inner {
font-size: 14px;
font-weight: bold;
color: #898d9e;
line-height: 42px;
}
.sevice_breadcrumb > .el-breadcrumb .el-breadcrumb__item:last-child .el-breadcrumb__inner {
color: #242c43;
font-weight: normal;
}
\ No newline at end of file
<template>
<div class="application_info" v-if="data">
<div class="application_title">
<span class="application_name" v-text="data.name"></span>
</div>
<div class="main_container">
<div class="main_container-left" v-if="data.img">
<img :src="data.img" width="460" />
<el-avatar shape="square" :size="144" fit="cover" :src="data.img" />
</div>
<div class="main_container-right">
<div class="application_title">
<span class="application_name" v-text="data.name"></span>
</div>
<div class="application_base_container">
<ul class="application_base_info">
<li>
<span>应用开发者:</span>
<span v-text="data.providedBy"> </span>
</li>
<li>
<span>上线时间</span>
<span v-text="data.publishTime"></span>
<span>应用类型</span>
<span v-html="data.serviceType"></span>
</li>
</ul>
<ul class="application_base_info">
<li>
<span>部署次数:</span>
<span v-text="data.acquireCount"></span>
</li>
<li>
<span>应用类型:</span>
<span v-html="data.serviceType"></span>
</li>
<li>
<span>业务领域:</span>
<span v-text="data.dataField"></span>
</li>
</ul>
<ul class="application_base_info">
<li>
<span>上线时间:</span>
<span v-text="data.publishTime"></span>
</li>
</ul>
</div>
</div>
</div>
<div class="commodity_information">
<span>&emsp;&emsp;格:</span>
<div class="btn_container">
......@@ -37,9 +45,7 @@
v-for="(item, index) in data.specifications"
:key="'specifications_' + index"
:type="
item.value === commodityData.specification
? 'primary'
: 'default'
item.value === commodityData.specification ? 'primary' : 'default'
"
@click="changeSpecification(item)"
>
......@@ -56,8 +62,6 @@
</el-button>
</div>
</div>
</div>
</div>
</template>
<script>
......@@ -73,13 +77,6 @@ export default {
specification: 0,
},
}),
computed: {
specificationDescription() {
let obj =
this.data.specifications[this.commodityData.specification] || {};
return obj.description || "";
},
},
methods: {
changeSpecification({ value }) {
this.commodityData.specification = value;
......@@ -111,28 +108,29 @@ export default {
.main_container-left {
padding: 3px;
background-color: #f9fafc;
margin-right: 30px;
margin-right: 10px;
}
.main_container-right {
flex-grow: 1;
}
.application_title {
display: flex;
justify-content: flex-start;
align-items: center;
}
.application_title > .application_name {
font-size: 22px;
font-weight: bold;
color: #0d1847;
line-height: 36px;
}
.application_base_info {
padding: 18px;
.application_base_container {
display: flex;
justify-content: flex-start;
align-items: flex-end;
background-color: #f9fafc;
padding: 18px;
margin-top: 15px;
}
.application_base_info > li,
.commodity_information {
.application_base_info:not(:last-child) {
margin-right: 50px;
}
.application_base_info > li {
display: flex;
justify-content: flex-start;
align-items: flex-start;
......@@ -140,39 +138,37 @@ export default {
color: #242c43;
line-height: 20px;
}
.application_base_info > li:not(:first-child) {
margin-top: 18px;
}
.application_base_info > li > span:first-child,
.commodity_information > span:first-child {
.application_base_info > li > span:first-child {
width: 6em;
flex-shrink: 0;
white-space: nowrap;
color: #8890a7;
text-align: right;
}
.application_base_info > li:not(:first-child) {
margin-top: 20px;
}
.application_base_info > li > span:nth-child(2) {
color: #242c43;
}
.commodity_information {
display: flex;
justify-content: flex-start;
align-items: flex-start;
margin-top: 30px;
}
.commodity_information > span:nth-child(2) {
color: #58617a;
}
.commodity_information > span:first-child {
flex-shrink: 0;
width: 6em;
font-size: 14px;
color: #8890a7;
line-height: 40px;
}
.commodity_information > .commodity_text {
flex-grow: 1;
padding: 13px 18px;
background-color: #f9fafc;
border-radius: 5px;
}
.commodity_information > .btn_container {
margin-bottom: -15px;
}
.commodity_information > .btn_container > .el-button,
.commodity_information > .btn_container > .el-input-number {
margin: 0 20px 15px 0;
.commodity_information > .btn_container > .el-button {
margin: 0 30px 15px 0;
}
.commodity_action {
margin-top: 50px;
......
......@@ -14,8 +14,13 @@
<p
v-else-if="item.type == 'text'"
class="detail-text"
v-text="item.value"
v-html="item.value"
></p>
<div
v-else-if="item.type == 'code'"
class="detail-code"
v-html="item.value"
></div>
<el-table
v-else-if="item.type == 'table'"
class="detail-table"
......@@ -95,4 +100,16 @@ export default {
line-height: 25px;
color: #242c43;
}
.detail-item .detail-code {
padding: 20px 25px;
box-sizing: border-box;
border-radius: 7px;
white-space: pre-wrap;
word-wrap: break-word !important;
background-color: #f8f9fd;
font-size: 14px;
color: #58617a;
line-height: 25px;
margin-top: 8px;
}
</style>
......@@ -9,9 +9,9 @@
<span v-text="title"></span>
</h3>
<ul class="side_nav_bar_list">
<!-- active-class="current" -->
<router-link
tag="li"
active-class="current"
v-for="(nav, index) in navList"
:class="{ current: $route.path.indexOf(nav.path) > -1 }"
:key="'nav' + index"
......
......@@ -6,7 +6,7 @@
></side-nav-bar>
<div class="main_container">
<router-view
:key="'type_' + $route.params && $route.params.type"
:key="'type_' + $route.params.level + '_' + $route.params.type"
></router-view>
</div>
</div>
......@@ -39,7 +39,7 @@ export default {
this.navList = this.fwglNav[level].map((item, index) => ({
name: item,
path: `/fwgl/list/${level}/${index}`,
path: `/fwgl/${level}/${index}`,
}));
},
},
......
......@@ -9,7 +9,7 @@
class="r_yhgl_table"
size="mini"
url="tableData"
:detailsUrl="`/fwgl/servicedetail/${level}/`"
:detailsUrl="detailsUrl"
:border="false"
:headers="headers"
:searchShow="true"
......@@ -24,7 +24,7 @@
@action-sold-out="soldOutItem"
@action-sold-out-2="soldOutItem2"
@action-cancel="cancelItem"
@action-examine="examineItem"
@action-approval="approvalItem"
@action-detail="detailItem"
@action-allot="allotItem"
></ces-table>
......@@ -47,7 +47,6 @@ export default {
type: 0, // 访问的页面
headers: [],
url: "",
detailsUrl: "ss/",
confirmOptions: {
title: "",
message: "",
......@@ -99,6 +98,17 @@ export default {
pathName() {
return this.fwglNav[this.level][this.type];
},
detailsUrl() {
let url = "";
if (this.level == 0 && this.type == 1) {
url = `/fwgl/${this.level}/${this.type}/applyserviceedit/`;
} else {
url = `/fwgl/${this.level}/${this.type}/servicedetail/`;
}
return url;
},
},
components: {
cesTable,
......@@ -173,7 +183,7 @@ export default {
// 普通用户 --- 审批的服务
else if (level == 0 && type == 2) {
this.headers = [
{ label: "服务名称", prop: "name", type: "href", align: "left" },
{ label: "服务名称", prop: "name", type: "", align: "left" },
{ label: "服务领域", prop: "address", type: "", align: "center" },
{ label: "开放程度", prop: "address", type: "", align: "center" },
{ label: "请求方式", prop: "address", type: "", align: "center" },
......@@ -188,7 +198,7 @@ export default {
width: 160,
btnList: [
{
type: "action-examine",
type: "action-approval",
label: "审批",
line: "|",
},
......@@ -203,7 +213,7 @@ export default {
// 普通用户 --- 云资源服务
else if (level == 0 && type == 3) {
this.headers = [
{ label: "工作区域", prop: "name", type: "href", align: "center" },
{ label: "工作区域", prop: "name", type: "", align: "center" },
{ label: "网络环境", prop: "name", type: "", align: "center" },
{ label: "CPU(核)", prop: "name", type: "", align: "center" },
{ label: "内存(GB)", prop: "name", type: "", align: "center" },
......@@ -242,7 +252,7 @@ export default {
// 组织管理员 --- 服务审批管理
else if (level == 1 && type == 1) {
this.headers = [
{ label: "服务名称", prop: "name", type: "href", align: "left" },
{ label: "服务名称", prop: "name", type: "", align: "left" },
{ label: "服务领域", prop: "date", type: "", align: "center" },
{ label: "开放程度", prop: "date", type: "", align: "center" },
{ label: "请求方式", prop: "date", type: "", align: "center" },
......@@ -257,7 +267,7 @@ export default {
width: 160,
btnList: [
{
type: "action-examine",
type: "action-approval",
label: "审批",
line: "|",
},
......@@ -272,7 +282,7 @@ export default {
// 组织管理员 --- 云资源管理
else if (level == 1 && type == 2) {
this.headers = [
{ label: "工作区域", prop: "name", type: "href", align: "center" },
{ label: "工作区域", prop: "name", type: "", align: "center" },
{ label: "网络环境", prop: "name", type: "", align: "center" },
{ label: "CPU(核)", prop: "name", type: "", align: "center" },
{ label: "内存(GB)", prop: "name", type: "", align: "center" },
......@@ -332,7 +342,7 @@ export default {
// 超级管理员 --- 服务审批管理
else if (level == 2 && type == 1) {
this.headers = [
{ label: "服务名称", prop: "name", type: "href", align: "left" },
{ label: "服务名称", prop: "name", type: "", align: "left" },
{ label: "服务领域", prop: "date", type: "", align: "center" },
{ label: "开放程度", prop: "date", type: "", align: "center" },
{ label: "请求方式", prop: "date", type: "", align: "center" },
......@@ -347,7 +357,7 @@ export default {
width: 160,
btnList: [
{
type: "action-examine",
type: "action-approval",
label: "审批",
line: "|",
},
......@@ -362,7 +372,7 @@ export default {
// 超级管理员 --- 云资源管理
else if (level == 2 && type == 2) {
this.headers = [
{ label: "所属组织", prop: "name", type: "href", align: "center" },
{ label: "所属组织", prop: "name", type: "", align: "center" },
{ label: "CPU使用量", prop: "name", type: "", align: "center" },
{ label: "内存使用量", prop: "name", type: "", align: "center" },
{ label: "工作区域数量", prop: "name", type: "", align: "center" },
......@@ -400,7 +410,7 @@ export default {
},
editItem(item) {
this.$router.push(
`/fwgl/serviceedit/${this.$route.params.level}/${item.id}`
`/fwgl/${this.level}/${this.type}/serviceedit/${item.id}`
);
},
soldOutItem(item) {
......@@ -429,8 +439,10 @@ export default {
cancelItem(item) {
console.log("cancelItem - " + item.name);
},
examineItem(item) {
console.log("examineItem - " + item.name);
approvalItem(item) {
this.$router.push(
`/fwgl/${this.level}/${this.type}/approvalserviceedit/${item.id}`
);
},
detailItem(item) {
console.log("detailItem - " + item.name);
......
......@@ -2,8 +2,10 @@
<div class="sevice_detail">
<div class="sevice_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item>服务超市</el-breadcrumb-item>
<el-breadcrumb-item>数据服务</el-breadcrumb-item>
<el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item>
<el-breadcrumb-item to="/shop/data_service_list"
>数据服务</el-breadcrumb-item
>
<el-breadcrumb-item>服务详情信息</el-breadcrumb-item>
</el-breadcrumb>
</div>
......@@ -34,6 +36,11 @@ export default {
specification: null,
provider: null,
}),
computed: {
id() {
return this.$route.params.id;
},
},
methods: {
getDataFromApi(_url) {
return new Promise((resolve, reject) => {
......@@ -63,13 +70,3 @@ export default {
},
};
</script>
<style scoped>
.sevice_detail {
max-width: 1200px;
margin: 0 auto;
}
.sevice_breadcrumb > .el-breadcrumb {
line-height: 42px;
}
</style>
......@@ -2,8 +2,10 @@
<div class="sevice_detail">
<div class="sevice_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item>服务超市</el-breadcrumb-item>
<el-breadcrumb-item>数据服务</el-breadcrumb-item>
<el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item>
<el-breadcrumb-item to="/shop/space_time_service_list"
>时空服务</el-breadcrumb-item
>
<el-breadcrumb-item>服务详情信息</el-breadcrumb-item>
</el-breadcrumb>
</div>
......@@ -31,6 +33,11 @@ export default {
data: () => ({
baseInfo: null,
}),
computed: {
id() {
return this.$route.params.id;
},
},
methods: {
getDataFromApi(_url) {
return new Promise((resolve, reject) => {
......@@ -60,13 +67,3 @@ export default {
},
};
</script>
<style scoped>
.sevice_detail {
max-width: 1200px;
margin: 0 auto;
}
.sevice_breadcrumb > .el-breadcrumb {
line-height: 42px;
}
</style>
......@@ -2,8 +2,10 @@
<div class="sevice_detail">
<div class="sevice_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item>服务超市</el-breadcrumb-item>
<el-breadcrumb-item>应用商店</el-breadcrumb-item>
<el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item>
<el-breadcrumb-item to="/shop/app_store_list"
>应用商店</el-breadcrumb-item
>
<el-breadcrumb-item>应用详情信息</el-breadcrumb-item>
</el-breadcrumb>
</div>
......@@ -35,6 +37,11 @@ export default {
specification: null,
provider: null,
}),
computed: {
id() {
return this.$route.params.id;
},
},
methods: {
getDataFromApi(_url) {
return new Promise((resolve, reject) => {
......@@ -64,13 +71,3 @@ export default {
},
};
</script>
<style scoped>
.sevice_detail {
max-width: 1200px;
margin: 0 auto;
}
.sevice_breadcrumb > .el-breadcrumb {
line-height: 42px;
}
</style>
......@@ -2,8 +2,10 @@
<div class="sevice_detail">
<div class="sevice_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item>服务超市</el-breadcrumb-item>
<el-breadcrumb-item>数据服务</el-breadcrumb-item>
<el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item>
<el-breadcrumb-item to="/shop/comprehensive_app_list"
>综合应用服务</el-breadcrumb-item
>
<el-breadcrumb-item>服务详情信息</el-breadcrumb-item>
</el-breadcrumb>
</div>
......@@ -31,6 +33,11 @@ export default {
data: () => ({
baseInfo: null,
}),
computed: {
id() {
return this.$route.params.id;
},
},
methods: {
getDataFromApi(_url) {
return new Promise((resolve, reject) => {
......@@ -60,13 +67,3 @@ export default {
},
};
</script>
<style scoped>
.sevice_detail {
max-width: 1200px;
margin: 0 auto;
}
.sevice_breadcrumb > .el-breadcrumb {
line-height: 42px;
}
</style>
......@@ -40,34 +40,34 @@ export default new Router({
{
path: "/fwgl/:level", // 服务管理 level:用户等级
name: "fwgl",
redirect: "/fwgl/list/:level/0",
redirect: "/fwgl/:level/0",
component: () => import("@/pages/fwgl"),
children: [
{
path: "/fwgl/list/:level/:type", // 服务管理/我的服务
path: "/fwgl/:level/:type", // 服务管理列表页
name: "fwglList",
component: () => import("@/pages/fwglList"),
},
{
path: "/fwgl/servicedetail/:level/:id",
path: "/fwgl/:level/:type/servicedetail/:id",
name: "servicedetail",
component: () => import("@/pages/serviceDetail"),
},
}, // 注册发布的服务 - 详情
{
path: "/fwgl/serviceedit/:level/:id",
path: "/fwgl/:level/:type/serviceedit/:id",
name: "serviceedit",
component: () => import("@/pages/serviceEdit"),
},
}, // 注册发布的服务 - 编辑
{
path: "/fwgl/applyserviceedit/:id",
path: "/fwgl/:level/:type/applyserviceedit/:id",
name: "applyserviceedit",
component: () => import("@/pages/apply_service_detail"),
},
}, // 申请的服务 - 详情
{
path: "/fwgl/approvalserviceedit/:id",
path: "/fwgl/:level/:type/approvalserviceedit/:id",
name: "approvalserviceedit",
component: () => import("@/pages/approval_service_detail"),
},
}, // 审批的服务 - 详情
],
},
{
......@@ -119,22 +119,22 @@ export default new Router({
],
},
{
path: "/sjfwDetail/:id",
path: "/shop/sjfwDetail/:id",
name: "sjfwDetail",
component: () => import("@/pages/sjfwDetail"),
}, // 数据服务详情
{
path: "/skfwDetail/:id",
path: "/shop/skfwDetail/:id",
name: "skfwDetail",
component: () => import("@/pages/skfwDetail"),
}, // 时空服务详情
{
path: "/zhyyfwDetail/:id",
path: "/shop/zhyyfwDetail/:id",
name: "zhyyfwDetail",
component: () => import("@/pages/zhyyfwDetail"),
}, // 综合应用服务详情
{
path: "/yysdDetail/:id",
path: "/shop/yysdDetail/:id",
name: "yysdDetail",
component: () => import("@/pages/yysdDetail"),
}, // 应用详情
......
......@@ -736,25 +736,8 @@
},
{
"name": "功能简介",
"type": "list",
"value": [
{
"name": "1",
"value": "在地图上查找视频设备;"
},
{
"name": "2",
"value": "在地图上定位视频设备位置;"
},
{
"name": "3",
"value": "调用多路视频的实时视频数据;"
},
{
"name": "4",
"value": "操作球机视频设备。"
}
]
"type": "text",
"value": "1、在地图上查找视频设备;<br />2、在地图上定位视频设备位置;<br />3、调用多路视频的实时视频数据;<br />4、操作球机视频设备。"
},
{
"name": "应用场景",
......@@ -763,21 +746,8 @@
},
{
"name": "应用参数",
"type": "list",
"value": [
{
"name": "repository",
"value": "\"hub.wodcloud.com/apaas/apaas-mapvideos\""
},
{
"name": "tag",
"value": "\"1.0.0\""
},
{
"name": "repository",
"value": "\"mapvideo.wodcloud.local\""
}
]
"type": "code",
"value": "repository: \"hub.wodcloud.com/apaas/apaas-mapvideos\"\ntag: \"1.0.0\"\n\nhost: \"mapvideo.wodcloud.local\""
}
],
"provider": {
......
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