Commit 10e7603c authored by 赵伟庚's avatar 赵伟庚

up 3.0,6

parent 25906d10
......@@ -51,7 +51,7 @@ pipeline:
base: hub.wodcloud.com/wod/ui-base:2.0-apaasv3
dockerfile: .beagle/dockerfile
repo: wod/apaas-ui
version: v3.0.5
version: v3.0.6
channel: alpha
args: "TARGETOS=linux,TARGETARCH=amd64" ## 不同架构的构建参数
registry: registry.cn-qingdao.aliyuncs.com
......@@ -70,8 +70,8 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-alpha
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-alpha
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6
registry: registry.cn-qingdao.aliyuncs.com
secrets:
- source: REGISTRY_USER_ALIYUN
......@@ -88,7 +88,7 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0
registry: registry.cn-qingdao.aliyuncs.com
secrets:
......@@ -108,7 +108,7 @@ pipeline:
base: hub.wodcloud.com/wod/ui-base:2.0-apaasv3-arm64
dockerfile: .beagle/dockerfile
repo: wod/apaas-ui
version: v3.0.5
version: v3.0.6
channel: alpha-arm64
args: "TARGETOS=linux,TARGETARCH=arm64"
registry: registry.cn-qingdao.aliyuncs.com
......@@ -127,8 +127,8 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-alpha-arm64
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-arm64
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-alpha-arm64
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-arm64
registry: registry.cn-qingdao.aliyuncs.com
secrets:
- source: REGISTRY_USER_ALIYUN
......@@ -145,7 +145,7 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-arm64
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-arm64
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0-arm64
registry: registry.cn-qingdao.aliyuncs.com
secrets:
......@@ -164,7 +164,7 @@ pipeline:
base: hub.wodcloud.com/wod/ui-base:2.0-apaasv3-ppc64le
dockerfile: .beagle/dockerfile
repo: wod/apaas-ui
version: v3.0.5
version: v3.0.6
channel: alpha-ppc64le
args: "TARGETOS=linux,TARGETARCH=ppc64le"
registry: registry.cn-qingdao.aliyuncs.com
......@@ -182,8 +182,8 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-alpha-ppc64le
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-ppc64le
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-alpha-ppc64le
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-ppc64le
registry: registry.cn-qingdao.aliyuncs.com
secrets:
- source: REGISTRY_USER_ALIYUN
......@@ -199,7 +199,7 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-ppc64le
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-ppc64le
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0-ppc64le
registry: registry.cn-qingdao.aliyuncs.com
secrets:
......@@ -218,7 +218,7 @@ pipeline:
base: hub.wodcloud.com/wod/ui-base:2.0-apaasv3-mips64le
dockerfile: .beagle/dockerfile
repo: wod/apaas-ui
version: v3.0.5
version: v3.0.6
channel: alpha-mips64le
args: "TARGETOS=linux,TARGETARCH=mips64le"
registry: registry.cn-qingdao.aliyuncs.com
......@@ -236,8 +236,8 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-alpha-mips64le
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-mips64le
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-alpha-mips64le
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-mips64le
registry: registry.cn-qingdao.aliyuncs.com
secrets:
- source: REGISTRY_USER_ALIYUN
......@@ -253,7 +253,7 @@ pipeline:
dns: 223.5.5.5
volumes:
- /var/run/docker.sock:/var/run/docker.sock
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-mips64le
source: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-mips64le
target: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0-mips64le
registry: registry.cn-qingdao.aliyuncs.com
secrets:
......@@ -270,7 +270,7 @@ pipeline:
namespace: apaas-v3
deployment: apaas-ui
container: apaas-ui
registry: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.5-alpha
registry: registry.cn-qingdao.aliyuncs.com/wod/apaas-ui:v3.0.6-alpha
when:
branch:
- dev
......@@ -63,7 +63,7 @@
</el-tooltip>
</td>
<td>
务领域:
务领域:
<el-tooltip class="item" effect="dark" :content="baseInfo.fwly" placement="top-start">
<span>{{baseInfo.fwly}}</span>
......
......@@ -77,9 +77,9 @@ export default {
watch: {},
methods: {
goUrl(parame) {
if (this.url != "") {
this.$router.push(this.url + "/" + parame);
}
// if (this.url != "") {
// }
this.$router.push('/shop/yysdDetail/' + parame);
},
},
mounted() {},
......
<template>
<div class="com_cell">
<div class="com_cell_up" @click="goUrl(cellData.id)">
<div class="com_cell_up" @click="goUrl(cellData)">
<div class="com_cell_up_img_init">
<img :src="cellData.cover" class="com_cell_up_img" />
</div>
......@@ -69,9 +69,9 @@
<el-col
:span="10"
class="com_other1"
:title="`${cellData.data_service_type1 != 36 ? '务领域:' : '产品领域:'}${cellData.sectors_name}`"
:title="`${cellData.data_service_type1 != 36 ? '务领域:' : '产品领域:'}${cellData.sectors_name}`"
>
<span class="name_title">{{ cellData.data_service_type1 != 36 ? '务领域:' : '产品领域:' }}</span>
<span class="name_title">{{ cellData.data_service_type1 != 36 ? '务领域:' : '产品领域:' }}</span>
{{ cellData.sectors_name }}
</el-col>
<el-col
......@@ -119,9 +119,10 @@ export default {
watch: {},
methods: {
goUrl(parame) {
if (this.url != "") {
this.$router.push(this.url + "/" + parame);
}
// if (this.url != "") {
// this.$router.push(this.url + "/" + parame);
// }
this.$router.push("/shop/sjfwDetail/" + parame.id)
},
getTags(arr) {
if (arr && arr.length != 0) {
......@@ -132,7 +133,6 @@ export default {
}
},
},
mounted() {},
};
</script>
......
<template>
<div>
<div v-if="urlFilter == 'app'" ref="commodityList" class="commodity_card">
<commodity-card
v-for="item in datas"
:key="item.id"
:cellData="item"
:url="url"
></commodity-card>
</div>
<div v-else class="commodity_cell">
<commodity-cell
v-for="item in datas"
:cellData="item"
:url="url"
:key="item.id"
:urlFilter="urlFilter"
></commodity-cell>
</div>
</div>
</template>
<script>
import CommodityCell from "@/components/service-list/commodity-cell-new.vue";
import CommodityCard from "@/components/service-list/commodity-card-new.vue";
export default {
components: {
"commodity-cell": CommodityCell,
"commodity-card": CommodityCard,
},
props: {
datas: {
type: Array,
default: () => {
[];
},
},
total: {
type: Number,
default: 0,
},
url: { type: String, default: "" },
urlFilter: { type: String, default: "" },
},
data: () => ({
}),
computed: {},
methods: {
},
mounted() {},
watch: {
datas: {
handler(val) {},
},
url: {
handler() {
},
},
},
};
</script>
<style scoped>
.com-pagination {
margin-top: 20px;
font-size: 14px;
padding: 0 5%;
display: flex;
justify-content: space-between;
align-items: center;
}
.com_page_num {
width: 140px;
margin-right: 20px;
display: flex;
justify-content: space-around;
align-items: center;
}
.com_page_num_sel {
width: 50px;
font-size: 14px;
position: relative;
top: 1px;
}
.com_page_item {
display: flex;
justify-content: flex-end;
align-items: center;
}
.commodity_card {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.commodity_card_list {
width: 100%;
display: flex;
flex-wrap: wrap;
}
.commodity_card_item {
margin: 10px 0;
}
.commodity_card_item_in {
margin: 0 auto;
}
.commodity_cell {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
</style>
<style>
.com_page_control .el-button {
border: 0;
}
.com_page_num .el-input__inner {
border: 0;
padding: 0;
}
</style>
\ No newline at end of file
This diff is collapsed.
<template>
<div class="service_shop_menu">
<ul class="service_shop_menu_list">
<li v-for="(item, index) in menuList" :key="index" @click="active(item)">
<!-- <img
v-if="item.visit_url == actives"
:src="item.active != '' ? require('@/assets/imgs/' + item.active + '.png') : ''"
class="menu_img"
/>
<img v-else :src="require('@/assets/imgs/' + item.default + '.png')" class="menu_img" /> -->
<span
:class="item.id == currentId ? 'menu_item_active':'menu_item'"
>{{ item.name }}</span>
</li>
</ul>
</div>
</template>
<script>
export default {
props: {},
data() {
return {
};
},
computed: {
// getActive() {
// return this.$store.state.serviceShopMenu;
// },
},
watch: {
// getActive(newVal) {
// this.getActiveMenu(newVal);
// },
},
props: {
menuList: {
type: Array,
default: []
},
currentId: {
type: [Number,String],
default: null
}
},
mounted() {
// this.getShopMenu();
// this.$store.commit("serviceShopMenuAct", this.$route.path);
// this.actives = this.$store.state.serviceShopMenu;
},
methods: {
active(val) {
this.$store.commit("serviceShopMenuAct", val.id);
// this.$router.push(val);
if (val.id == 'cloud') {
// this.$router.push(val.url)
}else {
// this.$router.push(`/shop/data_service_list/${val.id}`)
}
this.$emit("changeActive",val)
},
// getActiveMenu(val) {
// this.actives = val;
// console.log(this.actives)
// },
getShopMenu() {
this.$api.workbench.getServiceTypeList().then(response => {
if (response.data.success == 1) {
let arr = response.data.data;
this.menuList = arr;
this.actives = arr[0].id
this.menuList.push(...this.otherlist)
} else {
console.log(response.data.errMsg);
}
});
},
},
};
</script>
<style scoped>
.service_shop_menu {
background-color: #0d1847;
position: fixed;
top: 76px;
left: calc(50% - 600px);
width: 176px;
padding: 8px;
background-color: #ffffff;
box-shadow: 0px 3px 6px 0px
rgba(15, 19, 65, 0.04);
border-radius: 8px;
}
.service_shop_menu_list > li {
box-sizing: border-box;
height: 40px;
padding: 8px 0 0 22px;
margin-bottom: 16px;
font-size: 15px;
line-height: 24px;
cursor: pointer;
}
.service_shop_menu_list > li:nth-last-child(1) {
margin-bottom: 0;
}
.service_shop_menu_list > li:hover,
.service_shop_menu_list > li.current {
background-color: rgba(242, 246, 253, 0.4);
color: #515fe7;
}
.menu_img {
/* width: 24px; */
margin-right: 6px;
}
.menu_item {
position: relative;
font-weight: bold;
font-size: 15px;
color: #96a0c5;
top: -6px;
}
.menu_item_active {
position: relative;
font-weight: bold;
font-size: 15px;
color: #515fe7;
top: -6px;
}
</style>
......@@ -132,6 +132,27 @@
@click="deleteLocal(scope)"
>{{ btn.label }}</em>
<em
class="cur_pointer"
v-else-if="btn.disflag && !btn.select"
:class="btn.disabledRule(scope.row) ? btn.type : 'disabled_btn ' + btn.type"
:style="{
color: btn.label == '删除' ? '#830f53' : '#0f2683',
}"
@click="handleClick(btn.type, scope.row)"
>{{ btn.label }}</em>
<em
class="cur_pointer"
v-else-if="btn.disflag && btn.select"
:class="btn.disabledRule(scope.row) ? btn.type : 'disabled_btn ' + btn.type"
:style="{
color: btn.label == '删除' ? '#830f53' : '#0f2683',
}"
v-show="btn.disabledRule(scope.row)"
@click="handleClick(btn.type, scope.row)"
>{{ btn.label }}</em>
<em
class="cur_pointer"
v-else
......@@ -142,7 +163,8 @@
@click="handleClick(btn.type, scope.row)"
>{{ btn.label }}</em>
<em v-if="btn.line" style="padding:0 20px;color:#edf0ff">{{ btn.line }}</em>
<em v-if="btn.line && !btn.select" style="padding:0 20px;color:#edf0ff">{{ btn.line }}</em>
<em v-if="btn.line && btn.select && btn.disabledRule(scope.row)" style="padding:0 20px;color:#edf0ff">{{ btn.line }}</em>
</b>
</span>
<!--href 链接-->
......
......@@ -4,7 +4,7 @@
<div class="legend">
<div class="legend_title">拓扑图图例</div>
<div class="legend_inner">
<div class="legend_in_tit">服务类型</div>
<div class="legend_in_tit">服务分类</div>
<div id="nodes" ref="legendNodes" class="legend_nodes"></div>
<div class="legend_in_tit">调用状态</div>
<div id="edges" ref="legendEdges" class="legend_edges"></div>
......
......@@ -63,8 +63,8 @@ export default {
filtdata: [],
filter_name_arr: {
organizations: "数据来源机构",
serviceDomain: "数据领域",
serviceTypeInfo: "数据服务类型",
serviceDomain: "业务领域",
serviceTypeInfo: "服务类型",
},
select_able_arr: [],
selected_arr: [],
......@@ -166,22 +166,22 @@ export default {
var temp = 21
this.filter_name_arr = {
organizations: "服务来源组织",
serviceDomain: "务领域",
serviceDomain: "务领域",
serviceTypeInfo: "服务类型",
}
}else if(this.$route.query.ad_type == 'hotdata'){
var temp = 5
this.filter_name_arr = {
organizations: "数据来源机构",
serviceDomain: "数据领域",
serviceTypeInfo: "数据服务类型",
serviceDomain: "业务领域",
serviceTypeInfo: "服务类型",
}
}else{
var temp = 6
this.filter_name_arr = {
organizations: "服务来源组织",
serviceDomain: "务领域",
serviceTypeInfo: "时空服务类型",
serviceDomain: "务领域",
serviceTypeInfo: "服务类型",
}
}
this.$http
......
......@@ -12,7 +12,7 @@
</template>
<script>
import ServiceShopMenu from "@/components/service-list/service_shop_menu-new";
import ServiceShopMenu from "@/components/service-list/service_shop_menu_new";
import ShopCloud from "@/components/shop-cloud/shop-cloud-new";
export default {
components: {
......
<template>
<div class="shop_list_cont">
<el-container>
<el-aside width="176px">
<service-shop-menu @changeActive="changeActive" :menuList="menuList" :currentId="currentId"></service-shop-menu>
</el-aside>
<el-main class="main_init">
<!-- <service-list
:filterNames="filterNames"
:name="name"
:url="url"
:urlFilter="urlFilter"
></service-list> -->
<service-list
:filterNames="filterNames"
:name="name"
:urlFilter="urlFilter"
v-show="showFlag"
></service-list>
<shop-cloud v-show="!showFlag" name="云资源服务"></shop-cloud>
</el-main>
</el-container>
</div>
</template>
<script>
import ServiceShopMenu from "@/components/service-list/service_shop_menu_new";
import ServiceList from "@/components/service-list/service_list_new";
import BlockRadius from "@/components/general/block-radius";
import ShopCloud from "@/components/shop-cloud/shop-cloud-new";
export default {
components: {
ServiceShopMenu,
ServiceList,
BlockRadius,
ShopCloud
},
data: () => ({
urlFilter: "",
url: "",
name: "",
filterNames: [],
currentId: null,
menuList: [],
otherlist: [
{
id: 'app',
name: "应用商店",
},
{
id: "cloud",
name: "云资源服务",
}
],
showFlag: true
}),
mounted() {
// this.getVal(this.$route.query);
this.getShopMenu()
},
methods: {
getVal(val) {
console.log(val,'========')
if (val.indexOf('app') > -1) {
let obj = {
id: 'app',
name: "应用商店",
}
this.changeActive(obj)
}else if (val.indexOf('cloud') > -1) {
let obj = {
id: "cloud",
name: "云资源服务",
}
this.changeActive(obj)
}else {
this.changeActive(this.menuList[0])
}
},
getShopMenu() {
let obj = {}
this.$api.workbench.getServiceTypeList().then(response => {
if (response.data.success == 1) {
let arr = response.data.data;
obj = arr[0] || {}
this.menuList = arr;
this.menuList.push(...this.otherlist)
if (this.$route.params.id) {
this.currentId = this.$route.params.id
if (this.$route.params.id == 'app') {
this.showFlag = true
this.name = '应用商店'
this.urlFilter = this.$route.params.id.toString()
this.filterNames = ["应用类型", "应用领域", "应用来源机构"];
}else if(this.$route.params.id == 'cloud') {
this.showFlag = false
}
}else {
this.currentId = obj.id
this.name = obj.name
this.urlFilter = obj.id.toString()
if (obj.id != 'app' && obj.id != 'cloud') {
this.filterNames = ["服务类型", "业务领域", "服务来源组织"]
}else {
if (obj.id == 'app') {
this.filterNames = ["应用类型", "应用领域", "应用来源机构"];
}
}
}
} else {
console.log(response.data.errMsg);
}
});
},
changeActive(item) {
this.currentId = item.id
if (item.id !='cloud') {
if (item.id != 'app') {
this.$router.push('/shop/data_service_list')
}
this.showFlag = true
this.name = item.name
this.urlFilter = item.id.toString()
if (item.id != 'app') {
this.filterNames = ["服务类型", "业务领域", "服务来源组织"]
}else {
this.filterNames = ["应用类型", "应用领域", "应用来源机构"];
}
}else {
this.showFlag = false
}
console.log(this.showFlag)
}
},
watch: {
"$route.path": {
handler(val) {
this.getVal(val);
},
},
},
};
</script>
<style lang="less" scoped>
.default {
height: calc(100vh - 180px);
display: flex;
align-items: center;
justify-content: center;
margin: 0;
.default_img {
width: 1282px;
height: 629px;
.default_title {
color: #264dd9;
font-size: 44px;
font-weight: bold;
margin-bottom: 30px;
}
.default_msg {
color: #58617a;
font-size: 24px;
line-height: 44px;
}
}
}
</style>
<style scoped>
.default_img {
background: url("~@/assets/imgs/img_default_quesheng.png") no-repeat center
center;
}
.shop_list_cont {
width: 1200px;
margin: 0 auto;
position: relative;
}
.main_init {
padding: 16px 0 16px 16px;
}
</style>
\ No newline at end of file
......@@ -3,8 +3,8 @@
<div class="apass_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item>
<el-breadcrumb-item to="/shop/data_service_list/5">
数据服务
<el-breadcrumb-item to="/shop/data_service_list">
{{ typeName }}
</el-breadcrumb-item>
<el-breadcrumb-item>服务详情信息</el-breadcrumb-item>
</el-breadcrumb>
......@@ -36,6 +36,7 @@ export default {
detailData: [],
providerData: null,
commentsData: null,
typeName: ""
}),
computed: {
id() {
......@@ -59,7 +60,8 @@ export default {
service_id: this.id,
app_id: 0,
name: datas.name,
// type: "",
type:datas.data_service_type2_name=="流程类"?"workflow":"",
workflows_id:datas.data_service_type2_name=="流程类"?datas.workflows_id:"",
openness: datas.openness,
view_count: datas.view_count,
apply_count: datas.apply_count,
......@@ -80,7 +82,7 @@ export default {
user_name: datas.register_user_info.user_name,
phone: datas.register_user_info.phone,
};
this.detailData = [
{
name: "获取流程",
......@@ -185,6 +187,11 @@ export default {
},
},
];
this.typeName = datas.data_service_type1_name
let template = [2,3,4,5,8,9,10,11]
if (template.indexOf(datas.serv_template) > -1 ) {
this.detailData = this.detailData.slice(0,1)
}
let arr1 = datas.serviceRequestSpcs.spcs_type_1 || [];
let arr2 = datas.serviceRequestSpcs.spcs_type_2 || [];
let arr = arr1.concat(arr2);
......
......@@ -57,7 +57,7 @@
></el-input>
</el-form-item>
<el-form-item prop="area">
<p class="formname">务领域:</p>
<p class="formname">务领域:</p>
<el-select
v-model="form.area"
placeholder="请选择"
......@@ -294,7 +294,7 @@ export default {
}
],
area: [
{ required: true, message: "请选择务领域", trigger: "change" }
{ required: true, message: "请选择务领域", trigger: "change" }
],
origin: [
{ required: true, message: "请选择所属组织", trigger: "blur" }
......@@ -322,7 +322,7 @@ export default {
trigger: "blur"
}
],
area: [{ required: true, message: "请选择务领域", trigger: "blur" }],
area: [{ required: true, message: "请选择务领域", trigger: "blur" }],
origin: [
{ required: true, message: "请选择所属组织", trigger: "blur" }
],
......
......@@ -549,7 +549,7 @@ export default {
name: "",
first: [
{
name: "服务类型",
name: "服务分类",
text: "",
},
{
......@@ -581,7 +581,7 @@ export default {
info: "",
},
{
title: "务领域:",
title: "务领域:",
info: "",
},
{
......
......@@ -206,11 +206,11 @@ export default {
name: "",
first: [
{
name: "服务类型",
name: "服务分类",
text: ""
},
{
name: "务领域",
name: "务领域",
text: ""
},
{
......
......@@ -227,7 +227,7 @@ export default {
callback: this.detailItem,
},
{
label: "所属领域",
label: "业务领域",
prop: "sectors_name",
align: "center",
},
......@@ -251,7 +251,7 @@ export default {
align: "center",
},
{
label: "所属类型",
label: "服务分类",
prop: "data_service_type1_name",
align: "center",
},
......@@ -351,7 +351,7 @@ export default {
callback: this.detailItem,
},
{
label: "所属领域",
label: "业务领域",
prop: "sectors_name",
align: "center",
},
......@@ -378,7 +378,7 @@ export default {
align: "center",
},
{
label: "所属类型",
label: "服务分类",
prop: "data_service_type1_name",
align: "center",
},
......@@ -611,7 +611,7 @@ export default {
callback: this.detailItem,
},
{
label: "所属领域",
label: "业务领域",
prop: "sectors_name",
align: "center",
},
......@@ -643,7 +643,7 @@ export default {
align: "center",
},
{
label: "所属类型",
label: "服务分类",
prop: "data_service_type1_name",
align: "center",
},
......@@ -711,7 +711,7 @@ export default {
prop: "name",
},
{
label: "所属领域",
label: "业务领域",
prop: "sectors_name",
align: "center",
},
......@@ -750,7 +750,7 @@ export default {
align: "center",
},
{
label: "所属类型",
label: "服务分类",
prop: "data_service_type1_name",
align: "center",
},
......@@ -1014,7 +1014,7 @@ export default {
callback: this.detailItem,
},
{
label: "所属领域",
label: "业务领域",
prop: "sectors_name",
align: "center",
},
......@@ -1046,7 +1046,7 @@ export default {
align: "center",
},
{
label: "所属类型",
label: "服务分类",
prop: "data_service_type1_name",
align: "center",
},
......@@ -1126,7 +1126,7 @@ export default {
prop: "name",
},
{
label: "所属领域",
label: "业务领域",
prop: "sectors_name",
align: "center",
},
......@@ -1165,7 +1165,7 @@ export default {
align: "center",
},
{
label: "所属类型",
label: "服务分类",
prop: "data_service_type1_name",
align: "center",
},
......
......@@ -791,7 +791,7 @@ export default {
name: "",
first: [
{
name: "服务类型",
name: "服务分类",
text: "",
},
{
......@@ -1216,7 +1216,7 @@ export default {
info: "",
},
{
title: "务领域:",
title: "务领域:",
info: "",
},
{
......
......@@ -23,7 +23,7 @@
<el-input type="textarea" v-model="form.desc"></el-input>
</el-form-item>
<el-form-item prop="area">
<p class="formname">务领域:</p>
<p class="formname">务领域:</p>
<el-select v-model="form.area" placeholder="请选择">
<el-option
v-for="item in area_arr"
......@@ -209,7 +209,7 @@ export default {
{ max: 200, message: '长度小于200个字符', trigger: 'blur' }
],
area:[
{ required: true, message: '请选择务领域', trigger: 'change' },
{ required: true, message: '请选择务领域', trigger: 'change' },
],
resource:[
{ required: true, message: '请选择开放程度', trigger: 'change' },
......
This diff is collapsed.
<template>
<div class="edit_page">
<div class="apass_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item to="/productType">分类管理</el-breadcrumb-item>
<el-breadcrumb-item to="/productType/classList">产品分类管理</el-breadcrumb-item>
<el-breadcrumb-item>{{isAdd? '新增' : '编辑'}}</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="container_box">
<el-form
ref="form"
class="detai_form"
:rules="rules"
:model="form"
>
<el-form-item label="" prop="typeCode">
<div>分类类别:</div>
<el-select
v-model="form.typeCode"
placeholder="请选择"
>
<el-option
v-for="(e, idx) in classTypes"
:key="idx"
:label="e.label"
:value="e.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="name">
<div>分类名称:</div>
<el-input
v-model="form.name"
placeholder="请输入分类名称"
></el-input>
</el-form-item>
<el-form-item label="" prop="servTemplate">
<div>服务模版:</div>
<el-select
v-model="form.servTemplate"
placeholder="请选择"
>
<el-option
v-for="(e, idx) in serviceTemplates"
:key="idx"
:label="e.label"
:value="e.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="" prop="pId" v-if="form.typeCode == 'service_type_2'">
<div>上级分类名称:</div>
<el-select
v-model="form.pId"
placeholder="请选择"
>
<el-option
v-for="(e, idx) in pClassNames"
:key="idx"
:label="e.label"
:value="e.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item prop="describe" label="">
<div>描述:</div>
<el-input
v-model="form.describe"
type="textarea"
placeholder="请输入分类描述"
rows="5"
/>
</el-form-item>
<el-form-item label="" prop="state">
<div>状态:</div>
<el-select
v-model="form.state"
placeholder="请选择"
>
<el-option
v-for="(e, idx) in stateTypes"
:key="idx"
:label="e.label"
:value="e.value"
></el-option>
</el-select>
</el-form-item>
</el-form>
<div class="apaas_button">
<el-button type="primary" @click="onSubmit('form')" class="right"
>保存</el-button
>
<el-button class="right" @click="backPage()">取消</el-button>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
form: {
typeCode: "", // 分类类别 0-服务分类 1-服务类型
name: "", // 分类名称
servTemplate: "", // 服务模版
pId: "", // 上级分类名称
describe: "", // 描述
state: 1 // 状态 0-停用 1-启用
},
rules: {
typeCode: [
{ required: true, message: "请选择分类类别", trigger: "change" },
],
name: [
{ required: true, message: "请输入分类名称", trigger: "blur" },
],
servTemplate: [
{ required: true, message: "请选择服务模版", trigger: "change" },
],
pId: [
{ required: true, message: "请选择上级分类名称", trigger: "change" },
],
describe: [
],
state:[
{ required: true, message: "请选择状态", trigger: "change" },
]
}, // 表单校验
classTypes: [
{
label: "服务分类",
value: 'service_type_1'
},
{
label: "服务类型",
value: 'service_type_2'
},
], // 分类类别
serviceTemplates:[
{
label: "数据服务",
value: 1
},
{
label: "时空服务-地图服务",
value: 2
},
{
label: "时空服务-要素服务",
value: 3
},
{
label: "时空服务-WFS",
value: 4
},
{
label: "时空服务-WMS",
value: 5
},
{
label: "视频服务",
value: 6
},
{
label: "融合服务",
value: 7
},
{
label: "综合服务-模型算法类",
value: 8
},
{
label: "综合服务-查询验证类",
value: 9
},
{
label: "综合服务-流程类",
value: 10
},
{
label: "综合服务-应用类",
value: 11
},
], // 模版
pClassNames: [], // 上级分类
stateTypes: [
{
label: "启用",
value: 1
},
{
label: "禁用",
value: 0
},
] // 状态
}
},
computed: {
isAdd() {
return this.$route.path.indexOf('add') > -1
} // true为新增false为编辑
},
created() {
if (!this.isAdd) {
let id = this.$route.params.id
this.getDetail(id) // 获取详情
}
this.getClassTypes() // 获取全部服务分类
},
methods: {
getDetail(id) {
this.$api.productType.getClassDetail(id).then(res => {
if (res.data.success == 1) {
let data = res.data.data
this.form = {
id: data.id,
describe: data.describe,
name: data.name,
servTemplate: data.serv_template,
pId: data.type_code == 'service_type_1' ? '' : data.p_id,
state: data.state,
typeCode: data.type_code
}
}else {
this.$message.error(res.data.errMsg)
}
}).catch(err => {
console.log(err)
})
}, // 获取详情
getClassTypes() {
this.$api.productType.getClassTypes().then(res => {
if (res.data.success == 1) {
let data = res.data.data || []
data.forEach(e => {
this.pClassNames.push({
label: e.className,
value: e.id
})
})
}else {
this.$message.error(res.data.errMsg)
}
}).catch(err => {
console.log(err)
})
}, // 获取全部服务分类
onSubmit(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
if (this.isAdd) {
this.add_class();
}else {
this.edit_class()
}
} else {
console.log("error submit!!");
return false;
}
});
}, // 保存按钮
edit_class() {
if (this.form.typeCode == 'service_type_1') {
this.form.pId = 0
}
this.$api.productType.editClass(this.form).then(res => {
if (res.data.success == 1) {
this.$message.success("编辑成功")
this.backPage()
}else {
this.$message.error(res.data.errMsg)
}
}).catch(err => {
console.log(err)
})
}, // 编辑
add_class() {
if (this.form.typeCode == 'service_type_1') {
this.form.pId = 0
}
this.$api.productType.addNewClass(this.form).then(res => {
if (res.data.success == 1) {
this.$message.success("新增成功")
this.backPage()
}else {
this.$message.error(res.data.errMsg)
}
}).catch(err => {
console.log(err)
})
}, // 新增
backPage() {
this.$router.back(-1);
}, // 取消
}
}
</script>
<style lang="less" scoped>
.edit_page {
height: 100%;
padding: 0 20px;
.container_box {
height: calc(100% - 70px);
background-color: #fff;
border-radius: 10px;
padding: 15px 20px;
.detai_form {
width: 60%;
.el-select {
width: 100%;
}
}
.right {
float: right;
margin-left: 20px;
}
}
}
</style>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -203,9 +203,9 @@
<template slot="content">
<div class="dialog-content">
<el-form :model="publicForm" :rules="public_rules" ref="publicForm" class="demo-ruleForm">
<p class="formname">务领域:</p>
<p class="formname">务领域:</p>
<el-form-item prop="area">
<el-select v-model="publicForm.area" placeholder="请选择务领域">
<el-select v-model="publicForm.area" placeholder="请选择务领域">
<el-option v-for="item in area_arr" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
......@@ -289,7 +289,7 @@ export default {
},
public_rules: {
area: [
{ required: true, message: "请选择务领域", trigger: "change" }
{ required: true, message: "请选择务领域", trigger: "change" }
],
open: [{ required: true, message: "请选择开放程度", trigger: "change" }]
},
......@@ -330,7 +330,7 @@ export default {
},
rules1: {
area: [
{ required: true, message: "请选择务领域", trigger: "change" }
{ required: true, message: "请选择务领域", trigger: "change" }
],
resource: [
{ required: true, message: "请选择开放程度", trigger: "change" }
......
......@@ -4,6 +4,7 @@ import user from '@/request/api/user';
import authority from '@/request/api/authority';
import general from '@/request/api/general';
import dataAnalysis from '@/request/api/data-analysis';
import productType from '@/request/api/product-type'
export default {
workbench,
......@@ -11,5 +12,6 @@ export default {
user,
authority,
general,
dataAnalysis
dataAnalysis,
productType
}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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