Commit d00e6dd9 authored by 张慧龙's avatar 张慧龙

合dev

parents b9635c01 fea2f4bf
[v-cloak]{ [v-cloak] {
display: none display: none;
} }
/* 新增按钮颜色 */ /* 新增按钮颜色 */
.form-group .el-button--primary{ .form-group .el-button--primary {
background-color: #264dd9!important; background-color: #264dd9 !important;
border-color: #264dd9!important; border-color: #264dd9 !important;
} }
/* 返回按钮颜色 */ /* 返回按钮颜色 */
.from_return>.el-button--primary{ .from_return > .el-button--primary {
background-color: #edf0ff!important; background-color: #edf0ff !important;
border-color: #edf0ff!important; border-color: #edf0ff !important;
color:#264dd9!important; color: #264dd9 !important;
} }
/* 取消按钮颜色 */ /* 取消按钮颜色 */
.form_c{ .form_c {
background-color: #dde4ff!important; background-color: #dde4ff !important;
border-color: #dde4ff!important; border-color: #dde4ff !important;
color:#264dd9!important ; color: #264dd9 !important ;
} }
/* 确定按钮颜色 */ /* 确定按钮颜色 */
.form_t{ .form_t {
background-color: #264dd9!important; background-color: #264dd9 !important;
border-color: #264dd9!important; border-color: #264dd9 !important;
color:#f4f7fc!important ; color: #f4f7fc !important ;
} }
/* 搜索框颜色 */ /* 搜索框颜色 */
.form-group .el-input__inner{ .form-group .el-input__inner {
border-radius: 28px!important; border-radius: 28px !important;
border: 1px solid #bcc1d0!important; border: 1px solid #bcc1d0 !important;
background: #f4f7fc!important; background: #f4f7fc !important;
color: #8890a7!important; color: #8890a7 !important;
} }
.drawer_return .el-input__inner{ .drawer_return .el-input__inner {
border-radius: 28px!important; border-radius: 28px !important;
border: 1px solid #bcc1d0!important; border: 1px solid #bcc1d0 !important;
background: #f4f7fc!important; background: #f4f7fc !important;
color: #8890a7!important; color: #8890a7 !important;
} }
/* 多行文本框样式 */ /* 多行文本框样式 */
.jbxx_desc textarea{ .jbxx_desc textarea {
height: 150px!important; height: 150px !important;
border-radius: 8px!important; border-radius: 8px !important;
border-color: #bcc1d0!important; border-color: #bcc1d0 !important;
outline: none!important; outline: none !important;
resize: none!important; resize: none !important;
} }
/* 面包屑文字大小 */ /* 面包屑文字大小 */
.el-breadcrumb{ .el-breadcrumb {
font-size: 14px; font-size: 14px;
color: #898d9e; color: #898d9e;
} }
/* 编辑颜色*/ /* 编辑颜色*/
.primary-edit{ .primary-edit {
color: #264dd9; color: #264dd9;
cursor: pointer; cursor: pointer;
} }
/* 删除颜色 */ /* 删除颜色 */
.primary-del{ .primary-del {
color: #264dd9; color: #264dd9;
cursor: pointer; cursor: pointer;
} }
.space_bet{} .space_bet {
}
/* reset */ /* reset */
html { html {
} }
body { body {
margin: 0; margin: 0;
...@@ -87,7 +87,7 @@ h5 { ...@@ -87,7 +87,7 @@ h5 {
font-weight: normal; font-weight: normal;
} }
div{ div {
box-sizing: border-box; box-sizing: border-box;
} }
/* reset end */ /* reset end */
...@@ -152,56 +152,66 @@ div{ ...@@ -152,56 +152,66 @@ div{
padding: 0 20px; padding: 0 20px;
} }
/* 设置抽屉的样式 */ /* 设置抽屉的样式 */
.el-drawer__header{ .el-drawer__header {
display: none; display: none;
} }
.from_return{ .from_return {
text-align: center; text-align: center;
padding: 18px 20px 10px; padding: 18px 20px 10px;
border-bottom: 1px solid #edf0ff; border-bottom: 1px solid #edf0ff;
position: relative; position: relative;
} }
.from_return>.el-button--primary{ .from_return > .el-button--primary {
position: absolute; position: absolute;
top: 15px; top: 15px;
left: 20px; left: 20px;
} }
.from_return>span{ .from_return > span {
color:#1a2236; color: #1a2236;
font-size: 16px; font-size: 16px;
} }
.demo-drawer__content .el-form-item__label{ .demo-drawer__content .el-form-item__label {
color: #242c43; color: #242c43;
} }
.demo-drawer__content .el-input__inner{ .demo-drawer__content .el-input__inner {
border: 1px solid #bcc1d0; border: 1px solid #bcc1d0;
border-radius: 17px; border-radius: 17px;
color: #58617a; color: #58617a;
background: #fff; background: #fff;
} }
.demo-drawer__footer{ .demo-drawer__footer {
text-align: right; text-align: right;
padding-right: 40px; padding-right: 40px;
margin-top: 40px; margin-top: 40px;
} }
.el-form-item__error{ .el-form-item__error {
font-size:11px; font-size: 11px;
} }
/* 设置提示弹窗的样式 */ /* 设置提示弹窗的样式 */
.el-dialog{ .el-dialog {
border-radius: 10px; border-radius: 10px;
} }
.el-dialog__header { .el-dialog__header {
border-bottom: 1px solid #edf0ff; border-bottom: 1px solid #edf0ff;
} }
.el-dialog__title{ .el-dialog__title {
font-size: 16px; font-size: 16px;
font-weight: 700; font-weight: 700;
color: #1d1e20; color: #1d1e20;
border-left: 4px solid #0367f6;
padding-left: 8px; padding-left: 8px;
position: relative;
}
.el-dialog__title::before {
content: "";
position: absolute;
width: 4px;
height: 16px;
border-radius: 2px;
background-color: #515fe7;
left: 0;
top: 2px;
} }
.el-dialog__body{ .el-dialog__body {
font-size: 18px; font-size: 18px;
color: #242c43; color: #242c43;
text-align: center; text-align: center;
...@@ -213,23 +223,22 @@ div{ ...@@ -213,23 +223,22 @@ div{
.el-tabs__item { .el-tabs__item {
font-size: 16px; font-size: 16px;
color: #8890a7; color: #8890a7;
line-height: 24px!important; line-height: 24px !important;
} }
.el-tabs__nav-scroll .el-tabs__item { .el-tabs__nav-scroll .el-tabs__item {
line-height: 40px!important; line-height: 40px !important;
} }
.el-tabs__item:hover { .el-tabs__item:hover {
color: #687087; color: #687087;
} }
.el-tabs__item.is-active { .el-tabs__item.is-active {
color: #e56600 !important; color: #e56600 !important;
} }
.el-tabs__active-bar{ .el-tabs__active-bar {
height: 3px; height: 3px;
background-color:#e56600 !important; background-color: #e56600 !important;
} }
.el-tabs__nav-wrap::after{ .el-tabs__nav-wrap::after {
height: 1px; height: 1px;
background-color: #edf0ff; background-color: #edf0ff;
} }
...@@ -277,51 +286,54 @@ border-radius:8px; ...@@ -277,51 +286,54 @@ border-radius:8px;
} */ } */
/* 左右布局 */ /* 左右布局 */
.flex { .flex {
height: 100%; height: 100%;
display: -webkit-box; /* Chrome 4+, Safari 3.1, iOS Safari 3.2+ */ display: -webkit-box; /* Chrome 4+, Safari 3.1, iOS Safari 3.2+ */
display: -moz-box; /* Firefox 17- */ display: -moz-box; /* Firefox 17- */
display: -webkit-flex; /* Chrome 21+, Safari 6.1+, iOS Safari 7+, Opera 15/16 */ display: -webkit-flex; /* Chrome 21+, Safari 6.1+, iOS Safari 7+, Opera 15/16 */
display: -moz-flex; /* Firefox 18+ */ display: -moz-flex; /* Firefox 18+ */
display: -ms-flexbox; /* IE 10 */ display: -ms-flexbox; /* IE 10 */
display: flex; /* Chrome 29+, Firefox 22+, IE 11+, Opera 12.1/17/18, Android 4.4+ */ display: flex; /* Chrome 29+, Firefox 22+, IE 11+, Opera 12.1/17/18, Android 4.4+ */
} }
.flex-left { .flex-left {
width: 178px; width: 178px;
background-color: #1a2236; background-color: #1a2236;
height: 100%; height: 100%;
} }
.flex-right { .flex-right {
padding: 0 20px 20px; padding: 0 20px 20px;
box-sizing: border-box; box-sizing: border-box;
-webkit-box-flex: auto; -webkit-box-flex: auto;
-ms-flex: auto; -ms-flex: auto;
-webkit-flex: auto; -webkit-flex: auto;
flex: 1; flex: 1;
overflow-y: auto; overflow-y: auto;
} }
.flex-right-box{ .flex-right-box {
width: 100%; width: 100%;
height: 100%; height: 100%;
position: relative; position: relative;
} }
.ces-main{ .ces-main {
position: absolute; position: absolute;
width: 100%; width: 100%;
} }
.v-modal{ .v-modal {
background: #000a2b!important; background: #000a2b !important;
} }
.drawer600{ .drawer600 {
width: 600px!important; width: 600px !important;
} }
.drawer620{ .drawer620 {
width: 620px!important; width: 620px !important;
} }
.drawer1202{ .drawer1202 {
width: 1202px!important; width: 1202px !important;
} }
.el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before, .el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before{ .el-form-item.is-required:not(.is-no-asterisk)
content:"" .el-form-item__label-wrap
> .el-form-item__label:before,
.el-form-item.is-required:not(.is-no-asterisk) > .el-form-item__label:before {
content: "";
} }
/* 设置switch的样式 */ /* 设置switch的样式 */
.switchStyle1 .el-switch__label { .switchStyle1 .el-switch__label {
...@@ -347,8 +359,8 @@ width: 620px!important; ...@@ -347,8 +359,8 @@ width: 620px!important;
.switchStyle1.el-switch .el-switch__core, .switchStyle1.el-switch .el-switch__core,
.switchStyle1.el-switch .el-switch__label { .switchStyle1.el-switch .el-switch__label {
width: 62px !important; width: 62px !important;
height: 28px!important; height: 28px !important;
border-radius: 28px!important; border-radius: 28px !important;
} }
.switchStyle1 .el-switch__core { .switchStyle1 .el-switch__core {
background: #f8f9fd !important; background: #f8f9fd !important;
...@@ -372,7 +384,7 @@ width: 620px!important; ...@@ -372,7 +384,7 @@ width: 620px!important;
right: 0; right: 0;
top: 2.1px; top: 2.1px;
} }
.switchStyle1.el-switch.is-checked .el-switch__core::after{ .switchStyle1.el-switch.is-checked .el-switch__core::after {
margin-left: -25px; margin-left: -25px;
} }
.switchStyle1 .el-switch__label * { .switchStyle1 .el-switch__label * {
...@@ -412,7 +424,8 @@ width: 620px!important; ...@@ -412,7 +424,8 @@ width: 620px!important;
.el-input__inner { .el-input__inner {
border-radius: 8px; border-radius: 8px;
} }
.el-input-group__append, .el-input-group__prepend { .el-input-group__append,
.el-input-group__prepend {
border-radius: 8px; border-radius: 8px;
} }
.el-button { .el-button {
...@@ -454,10 +467,10 @@ width: 620px!important; ...@@ -454,10 +467,10 @@ width: 620px!important;
.el-scrollbar { .el-scrollbar {
border-radius: 8px; border-radius: 8px;
} }
.el-popper[x-placement^=bottom] .popper__arrow::after { .el-popper[x-placement^="bottom"] .popper__arrow::after {
border-bottom-color: transparent; border-bottom-color: transparent;
} }
.el-popper[x-placement^=top] .popper__arrow::after { .el-popper[x-placement^="top"] .popper__arrow::after {
border-top-color: transparent; border-top-color: transparent;
} }
/* 单选激活样式 */ /* 单选激活样式 */
...@@ -465,7 +478,7 @@ width: 620px!important; ...@@ -465,7 +478,7 @@ width: 620px!important;
border-color: #838383; border-color: #838383;
background-color: #fff; background-color: #fff;
} }
.el-radio__input.is-checked+.el-radio__label { .el-radio__input.is-checked + .el-radio__label {
color: #1a2236; color: #1a2236;
font-weight: 700; font-weight: 700;
} }
...@@ -508,7 +521,6 @@ width: 620px!important; ...@@ -508,7 +521,6 @@ width: 620px!important;
margin: 0 auto; margin: 0 auto;
} }
/* common */ /* common */
.apass_breadcrumb > .el-breadcrumb { .apass_breadcrumb > .el-breadcrumb {
padding: 15px 0; padding: 15px 0;
...@@ -519,7 +531,10 @@ width: 620px!important; ...@@ -519,7 +531,10 @@ width: 620px!important;
color: #898d9e; color: #898d9e;
line-height: 23px; line-height: 23px;
} }
.apass_breadcrumb > .el-breadcrumb .el-breadcrumb__item:last-child .el-breadcrumb__inner { .apass_breadcrumb
> .el-breadcrumb
.el-breadcrumb__item:last-child
.el-breadcrumb__inner {
color: #242c43; color: #242c43;
font-weight: normal; font-weight: normal;
} }
...@@ -564,11 +579,11 @@ width: 620px!important; ...@@ -564,11 +579,11 @@ width: 620px!important;
.apaas_button .el-button.is-disabled, .apaas_button .el-button.is-disabled,
.apaas_button .el-button.is-disabled:focus, .apaas_button .el-button.is-disabled:focus,
.apaas_button .el-button.is-disabled:hover { .apaas_button .el-button.is-disabled:hover {
color: #C0C4CC; color: #c0c4cc;
cursor: not-allowed; cursor: not-allowed;
background-image: none; background-image: none;
background-color: #FFF; background-color: #fff;
border-color: #EBEEF5; border-color: #ebeef5;
} }
.apass_table .el-table th > .cell { .apass_table .el-table th > .cell {
...@@ -831,4 +846,10 @@ width: 620px!important; ...@@ -831,4 +846,10 @@ width: 620px!important;
.meassage_detail_dialog .detail_item .full_content .item_content { .meassage_detail_dialog .detail_item .full_content .item_content {
margin: 0; margin: 0;
} }
.no_wrap .apass_table td .cell {
overflow: hidden;
text-overflow: ellipsis;
word-break: break-all;
white-space: nowrap;
}
/* 详情页公共样式 by xuyiming ~~~end */ /* 详情页公共样式 by xuyiming ~~~end */
...@@ -22,9 +22,9 @@ export const lang = { ...@@ -22,9 +22,9 @@ export const lang = {
cloud_resources_detail: "云资源详情", cloud_resources_detail: "云资源详情",
// data analysis // data analysis
data_analysis: "数据分析中心", data_analysis: "运营管控中心",
my_service_data_analysis: "我的服务数据分析", my_service_data_analysis: "服务分析",
my_application_data_analysis: "我的应用数据分析", my_application_data_analysis: "应用分析",
// message // message
message: "消息与推送管理", message: "消息与推送管理",
...@@ -33,4 +33,13 @@ export const lang = { ...@@ -33,4 +33,13 @@ export const lang = {
message_alert: "消息提醒管理", message_alert: "消息提醒管理",
banner: "banner管理", banner: "banner管理",
message_template: "消息模板管理", message_template: "消息模板管理",
//online component tool
online_component_tool: "在线组件中心",
process_design: "流程设计",
process_management: "流程管理",
new: "新建",
// technical-support
technical_support: "技术支持"
} }
\ No newline at end of file
src/assets/imgs/img_head.png

1.63 KB | W: | H:

src/assets/imgs/img_head.png

2.15 KB | W: | H:

src/assets/imgs/img_head.png
src/assets/imgs/img_head.png
src/assets/imgs/img_head.png
src/assets/imgs/img_head.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -338,7 +338,15 @@ export default { ...@@ -338,7 +338,15 @@ export default {
_self.moreActionList = []; _self.moreActionList = [];
_self.showMoreActionList = true; _self.showMoreActionList = true;
_self.moreActionList = moreActionList.map((item) => ({ _self.moreActionList = moreActionList
.filter((item) => {
if (item.showRule) {
return item.showRule(row);
} else {
return true;
}
})
.map((item) => ({
id: row.id, id: row.id,
label: item.label, label: item.label,
callback() { callback() {
...@@ -499,10 +507,11 @@ export default { ...@@ -499,10 +507,11 @@ export default {
.more_action_list > li:first-child::before { .more_action_list > li:first-child::before {
content: ""; content: "";
position: absolute; position: absolute;
top: -14px; top: -20px;
right: calc(50% - 14px); right: calc(50% - 20px);
width: 28px; width: 40px;
height: 14px; height: 20px;
/* background-color: red; */
} }
.more_action_list > li:first-child::after { .more_action_list > li:first-child::after {
content: ""; content: "";
......
...@@ -20,6 +20,10 @@ export default { ...@@ -20,6 +20,10 @@ export default {
type: String, type: String,
default: () => "", default: () => "",
}, },
stepTitle: {
type: String,
default: "",
},
}, },
data: () => ({}), data: () => ({}),
computed: { computed: {
......
...@@ -25,7 +25,12 @@ ...@@ -25,7 +25,12 @@
</div> </div>
<div class="step_icon" v-else></div> <div class="step_icon" v-else></div>
<div class="step_info"> <div class="step_info">
<p class="step_state"> <p v-if="item.stepTitle != ''" class="step_state">
<span>
{{ item.stepTitle }}
</span>
</p>
<p v-else class="step_state">
<span v-if="item.step < activeStep || done"> <span v-if="item.step < activeStep || done">
已完成 已完成
</span> </span>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
:key="'comment_' + index" :key="'comment_' + index"
> >
<div class="comment-left"> <div class="comment-left">
<el-avatar :size="60" fit="cover" :src="item.picture_path" /> <el-avatar :size="60" fit="cover" :src="item.picture_path || require('../assets/imgs/img_head.png')" />
</div> </div>
<div class="comment-right"> <div class="comment-right">
<p class="comment-user_name" v-text="item.user_name"></p> <p class="comment-user_name" v-text="item.user_name"></p>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<ul class="comments_list apaas_scroll"> <ul class="comments_list apaas_scroll">
<li class="comment_card" v-for="(item, index) in data" :key="'comment_' + index"> <li class="comment_card" v-for="(item, index) in data" :key="'comment_' + index">
<div class="comment-left"> <div class="comment-left">
<el-avatar :size="45" fit="cover" :src="item.picture_path" /> <el-avatar :size="45" fit="cover" :src="item.picture_path || require('../../assets/imgs/img_head.png')" />
</div> </div>
<div class="comment-right"> <div class="comment-right">
<p class="comment-base"> <p class="comment-base">
......
...@@ -59,11 +59,21 @@ export default { ...@@ -59,11 +59,21 @@ export default {
{ {
type: "category", type: "category",
axisLabel: { axisLabel: {
interval: 0,
textStyle: { textStyle: {
color: "#0d1847", color: "#0d1847",
fontSize: 12, fontSize: 12,
lineHeight: 20, lineHeight: 20,
}, },
formatter(value) {
let valueTxt = "";
if (value.length > 7) {
valueTxt = value.substring(0, 7 - 1) + "...";
} else {
valueTxt = value;
}
return valueTxt;
},
}, },
axisTick: { axisTick: {
show: false, show: false,
......
...@@ -32,6 +32,10 @@ export default { ...@@ -32,6 +32,10 @@ export default {
isPercent: { isPercent: {
type: Boolean, type: Boolean,
default: true default: true
},
color: {
type: Array,
default: null
} }
}, },
components: {}, components: {},
......
<template>
<div class="top_list apaas_scroll" @mouseenter="mouseenter" @mouseleave="mouseleave">
<ul>
<li class="item_list" v-for="(option, index) in options" :key="index">
<div class="item_detail">
<p class="item_info">
<span
class="text_clip is_link"
@click="getDetail(option.service_id, option.data_service_type1)"
>
{{ option.service_name }}
</span>
</p>
<el-progress
class="item_progress"
:percentage="getPercent(option.request_count)"
:show-text="false"
color="#e56600"
></el-progress>
<span
style="float:right;"
v-text="helper.numberFormat(option.request_count, 2) + (option.request_count > 10000 ? '万'+unit : unit)"
></span>
</div>
</li>
</ul>
</div>
</template>
<script>
import helper from "@/services/helper";
export default {
props: {
options: {
type: Array,
default: () => []
},
targetValue: {
type: Number,
default: () => 0
},
unit: {
type: String,
default: () => ''
},
},
data() {
return {
timer: null,
helper
};
},
watch: {
text() {
this.autoScroll();
}
},
methods: {
getPercent(value) {
if (value == 0) {
return 0;
} else {
return Math.min((value / this.targetValue) * 100, 100);
}
},
autoScroll() {
if (this.timer) {
clearInterval(this.timer);
}
this.$el.scrollTop = 0;
this.timer = setInterval(() => {
let itemHeight = 50;
let curScrollTop = this.$el.scrollTop + itemHeight;
if (curScrollTop >= this.$el.scrollHeight - this.$el.clientHeight + itemHeight) {
curScrollTop = 0;
}
this.$el.scrollTop = Math.min(curScrollTop, this.$el.scrollHeight - this.$el.clientHeight);
}, 1500);
},
mouseenter() {
if (this.timer) {
clearInterval(this.timer);
}
},
mouseleave() {
this.autoScroll();
},
getDetail(id, type) {
}
},
mounted() {
this.autoScroll();
window.addEventListener("resize", () => {
this.autoScroll();
});
},
destroyed() {
if (this.timer) {
clearInterval(this.timer);
}
}
};
</script>
<style scoped>
.top_list {
overflow-x: hidden;
overflow-y: auto;
}
.item_list {
display: flex;
justify-content: flex-start;
align-items: center;
margin-bottom: 18px;
}
.item_index {
width: 35px;
flex-shrink: 0;
margin-right: 10px;
font-size: 12px;
color: #58617a;
}
.item_logo {
margin-right: 10px;
flex-shrink: 0;
font-size: 0;
border: 2px solid #e3e5ef;
border-radius: 6px;
overflow: hidden;
}
.item_info {
flex-grow: 1;
display: flex;
justify-content: flex-start;
align-items: center;
font-size: 14px;
line-height: 20px;
color: #58617a;
}
.item_detail {
flex-grow: 1;
}
.item_info > span:first-child {
width: 100px;
flex-grow: 1;
margin-right: 10px;
color:#58617a;
font-size: 14px;
}
.item_info > span:first-child > i {
font-weight: bold;
font-size: 12px;
color: #8e96ab;
}
.item_info > span:nth-child(2) {
flex-shrink: 0;
white-space: nowrap;
color: #0d1847;
}
.item_progress {
margin-top: 6px;
width: calc(100% - 60px);
float: left;
}
.is_link {
cursor: pointer;
}
</style>
...@@ -17,7 +17,7 @@ import ace from "ace-builds"; ...@@ -17,7 +17,7 @@ import ace from "ace-builds";
import "ace-builds/webpack-resolver"; // 在 webpack 环境中使用必须要导入 import "ace-builds/webpack-resolver"; // 在 webpack 环境中使用必须要导入
import "ace-builds/src-noconflict/mode-json"; // 默认设置的语言模式 import "ace-builds/src-noconflict/mode-json"; // 默认设置的语言模式
export default { export default {
props: ["url","datas"], props: ["url","datas",'readOnly'],
data() { data() {
return { return {
aceEditor: null, aceEditor: null,
...@@ -34,7 +34,8 @@ export default { ...@@ -34,7 +34,8 @@ export default {
mode: this.acemodePath, mode: this.acemodePath,
wrap: this.wrap, wrap: this.wrap,
tabSize: 4, tabSize: 4,
highlightActiveLine: false highlightActiveLine: false,
readOnly:this.readOnly?this.readOnly:false
}); });
if (this.url) { if (this.url) {
this.getValue(); this.getValue();
......
<template>
<div class="side_nav_bar">
<h3 class="side_nav_bar_title" @click="titleAction">
<img :src="titleIcon" width="20" style="margin-right: 10px;" />
<span v-text="title"></span>
</h3>
<div v-for="(nav, index) in navList" :key="'nav' + index">
<div class="side_nav_bar_first_title">{{ nav.name }}</div>
<ul class="side_nav_bar_list">
<router-link
tag="li"
v-for="(item, indexs) in nav.child"
:class="{ current: $route.path.indexOf(item.path) > -1 }"
:key="index + 'a' + indexs"
:to="item.path"
>
<span v-text="item.name"></span>
</router-link>
</ul>
</div>
</div>
</template>
<script>
export default {
name: "sideNavBar",
props: {
title: {
type: String,
default: () => "我的服务",
},
titleIcon: {
type: String,
default: () => require("@/assets/imgs/tool_fuwu.png"),
},
titlePath: {
type: String,
default: () => "",
},
navList: {
type: Array,
default: () => [],
},
imgSrc: {
type: String,
default: "tool_fuwu",
},
},
methods: {
titleAction() {
if (this.titlePath) {
this.$router.push(this.titlePath);
}
},
},
};
</script>
<style scoped>
.side_nav_bar {
background-color: #0d1847;
}
.side_nav_bar_title {
height: 40px;
background-color: #182665;
border-radius: 10px;
overflow: hidden;
margin: 20px 15px 20px;
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
}
.side_nav_bar_title > span {
font-size: 16px;
color: #c3caf8;
}
.side_nav_bar_first_title {
color: #c3caf8;
font-size: 14px;
padding: 10px 0 10px 34px;
position: relative;
}
.side_nav_bar_first_title::before {
content: "";
position: absolute;
left: 22px;
top: 12px;
width: 4px;
height: 16px;
background-color: #515fe7;
border-radius: 2px;
}
.side_nav_bar_list > li {
padding: 12px 10px 12px 42px;
border-left: 5px solid #0d1847;
font-size: 14px;
line-height: 24px;
color: #e6ebfe;
cursor: pointer;
}
.side_nav_bar_list > li:hover,
.side_nav_bar_list > li.current {
border-left: 5px solid #e56600;
background-color: #182665;
color: #e6ebfe;
}
</style>
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
:readOnly="readOnly" :readOnly="readOnly"
:data="anotherData" :data="anotherData"
:drag="drag" :drag="drag"
:disabled="disabled"
> >
<div v-if="drag"> <div v-if="drag">
<i class="el-icon-upload"></i> <i class="el-icon-upload"></i>
...@@ -92,6 +93,10 @@ export default { ...@@ -92,6 +93,10 @@ export default {
type: Boolean, type: Boolean,
default: true, default: true,
}, },
disabled: {
type: Boolean,
default: false,
},
}, },
watch: { watch: {
list(value) { list(value) {
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
</template> </template>
<script> <script>
import helper from "@/services/helper.js";
import screenType from "@/components/recommen/screen-type"; import screenType from "@/components/recommen/screen-type";
import recommenBox from "@/components/recommen/recommen-box"; import recommenBox from "@/components/recommen/recommen-box";
...@@ -119,7 +120,14 @@ export default { ...@@ -119,7 +120,14 @@ export default {
}) })
.then(({ data }) => { .then(({ data }) => {
if (data.success == 1) { if (data.success == 1) {
this.serviceList = data.data || []; let datas = data.data || [];
datas.forEach((item) => {
let update_date = item.update_date || "";
item.update_date = helper.dateStringTransform(update_date);
});
this.serviceList = datas;
} }
}); });
}, },
......
...@@ -336,6 +336,10 @@ export default { ...@@ -336,6 +336,10 @@ export default {
this.keyword = ""; this.keyword = "";
this.updateTime = ""; this.updateTime = "";
if (this.tpl_types.length > 0) {
this.type = this.tpl_types[0].value;
}
this.getTemplateList(); this.getTemplateList();
}, },
selectTemplate(item) { selectTemplate(item) {
......
...@@ -10,14 +10,12 @@ ...@@ -10,14 +10,12 @@
</el-tabs> </el-tabs>
<div class="list_options"> <div class="list_options">
<div class="button_group"> <div class="button_group">
<el-button <span
size="mini"
v-for="(item, index) in buttonList" v-for="(item, index) in buttonList"
:key="'btn' + index" :key="'btn' + index"
:class="item.state ? 'btn_actice':''" :class="item.state ? 'btn_default btn_actice':'btn_default'"
round
@click="btnClick(index)" @click="btnClick(index)"
>{{ item.name }}</el-button> >{{ item.name }}</span>
</div> </div>
<div class="input_right"> <div class="input_right">
<el-input <el-input
...@@ -224,6 +222,22 @@ export default { ...@@ -224,6 +222,22 @@ export default {
.button_group { .button_group {
padding: 17px 10px; padding: 17px 10px;
} }
.btn_default {
display: inline-block;
padding: 6px 15px;
border-radius: 14px;
font-size: 12px;
margin-right: 6px;
cursor: pointer;
}
.btn_default:hover {
background-color: #515fe7;
color: #fff;
}
.btn_default:focus {
background-color: #fff;
color: #606266;
}
.btn_actice { .btn_actice {
background-color: #515fe7; background-color: #515fe7;
color: #fff; color: #fff;
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<span <span
class="info_fix" class="info_fix"
v-if="data.fixed_process" v-if="data.fixed_process"
@click="goto_page(data.fixedurl)" @click="goto_page(data.fixed_url)"
> >
我要编辑 我要编辑
</span> </span>
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
> >
我要修改 我要修改
</span> </span>
<span class="right undersell" v-if="data.deploy" @click="subevent(10)"> <span class="right undersell undersell2" v-if="data.deploy" @click="subevent(10)">
部署 部署
</span> </span>
<span class="right undersell1" v-if="data.undeploy" @click="subevent(9)"> <span class="right undersell1" v-if="data.undeploy" @click="subevent(9)">
...@@ -168,6 +168,14 @@ export default { ...@@ -168,6 +168,14 @@ export default {
this.$emit("debuggerfunc"); this.$emit("debuggerfunc");
} else if (val == 6) { } else if (val == 6) {
this.$emit("applymy"); this.$emit("applymy");
} else if (val == 7) {
this.$emit("unpublic", this.data);
} else if (val == 8) {
this.$emit("public1", this.data);
} else if (val == 9) {
this.$emit("undeploy", this.data);
} else if (val == 10) {
this.$emit("deploy", this.data);
} }
}, },
goto_page(url) { goto_page(url) {
...@@ -276,6 +284,9 @@ export default { ...@@ -276,6 +284,9 @@ export default {
background-color: #e6ebfe; background-color: #e6ebfe;
margin-left: 10px; margin-left: 10px;
} }
.undersell2{
margin-left: 10px;
}
.undermy { .undermy {
background-color: #515fe7; background-color: #515fe7;
color: #e6ebfe; color: #e6ebfe;
......
...@@ -170,6 +170,7 @@ export default { ...@@ -170,6 +170,7 @@ export default {
background-color: #f9fafc; background-color: #f9fafc;
padding: 18px; padding: 18px;
margin-top: 15px; margin-top: 15px;
border-radius: 8px;
} }
.application_base_info:not(:last-child) { .application_base_info:not(:last-child) {
margin-right: 50px; margin-right: 50px;
...@@ -222,17 +223,12 @@ export default { ...@@ -222,17 +223,12 @@ export default {
width: 220px; width: 220px;
margin-left: 20px; margin-left: 20px;
} }
.application_info .el-button--primary { </style>
<style>
.application_info.apaas_button .el-button--primary {
color: #fff;
background-color: #515fe7; background-color: #515fe7;
border-color: #515fe7; border-color: #515fe7;
} }
.application_info .el-button--warning.is-plain {
background-color: #fcefd6;
border-color: #fac266;
color: #e56600;
}
.application_info .el-button--warning {
background-color: #e56600;
border-color: #e56600;
}
</style> </style>
...@@ -98,7 +98,7 @@ ...@@ -98,7 +98,7 @@
></el-input-number> ></el-input-number>
</div> </div>
</div> </div>
<div class="apaas_button commodity_action"> <div class=" commodity_action">
<el-button <el-button
type="warning" type="warning"
plain plain
...@@ -339,12 +339,13 @@ export default { ...@@ -339,12 +339,13 @@ export default {
vertical-align: middle; vertical-align: middle;
} }
.service_title > .service_access_info > img { .service_title > .service_access_info > img {
width: 15px; width: 19px;
margin-right: 5px; margin-right: 5px;
} }
.service_base_info { .service_base_info {
padding: 18px; padding: 18px;
background-color: #f9fafc; background-color: #f9fafc;
border-radius: 8px;
} }
.service_base_info > li, .service_base_info > li,
.commodity_information { .commodity_information {
...@@ -398,3 +399,11 @@ export default { ...@@ -398,3 +399,11 @@ export default {
margin-left: 20px; margin-left: 20px;
} }
</style> </style>
<style>
.service_info.apaas_button .el-button--primary {
color: #fff;
background-color: #515fe7;
border-color: #515fe7;
}
</style>
...@@ -329,7 +329,6 @@ export default { ...@@ -329,7 +329,6 @@ export default {
for (let i = 0; i < val.length; i++) { for (let i = 0; i < val.length; i++) {
this.filterLists[i + 1].name = val[i]; this.filterLists[i + 1].name = val[i];
} }
console.log(this.filterLists);
}, },
}, },
}, },
......
...@@ -5,10 +5,7 @@ ...@@ -5,10 +5,7 @@
v-for="(item, index) in data" v-for="(item, index) in data"
:key="'detail_' + index" :key="'detail_' + index"
> >
<h3 <h3 class="detail-title" v-text="item.name + ':'"></h3>
class="detail-title"
v-text="item.name + ':'"
></h3>
<service-steps <service-steps
v-if="item.type == 'step'" v-if="item.type == 'step'"
...@@ -24,6 +21,10 @@ ...@@ -24,6 +21,10 @@
class="detail-code" class="detail-code"
v-html="item.value" v-html="item.value"
></div> ></div>
<workflows-view
v-else-if="item.type == 'workflows'"
:id="item.value"
></workflows-view>
<el-table <el-table
v-else-if="item.type == 'table'" v-else-if="item.type == 'table'"
class="detail-table" class="detail-table"
...@@ -66,10 +67,12 @@ ...@@ -66,10 +67,12 @@
<script> <script>
import serviceSteps from "@/components/service-tabs/service-steps"; import serviceSteps from "@/components/service-tabs/service-steps";
import workflowsView from "@/components/work-flow/workflows-view";
export default { export default {
components: { components: {
serviceSteps, serviceSteps,
workflowsView,
}, },
props: { props: {
data: { data: {
......
...@@ -160,6 +160,7 @@ export default { ...@@ -160,6 +160,7 @@ export default {
} }
.service_info_tab .el-table { .service_info_tab .el-table {
width: 100%; width: 100%;
text-align: left;
} }
.service_info_tab .el-table__row:nth-child(odd) td { .service_info_tab .el-table__row:nth-child(odd) td {
background-color: #f8f9fd; background-color: #f8f9fd;
......
...@@ -137,6 +137,11 @@ export default { ...@@ -137,6 +137,11 @@ export default {
}; };
</script> </script>
<style>
.outborder .system .el-input__prefix,.outborder .system .el-input__suffix{
left: auto;
}
</style>
<style scoped> <style scoped>
.outborder { .outborder {
border-bottom: 2px solid rgba(244, 247, 252, 1); border-bottom: 2px solid rgba(244, 247, 252, 1);
......
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
<div class="shopping_cell_specification_edit"> <div class="shopping_cell_specification_edit">
<el-popover <el-popover
placement="right-start" placement="right-start"
width="280" width="300"
v-model="visible" v-model="visible"
@show="setSpecificationPop" @show="setSpecificationPop"
> >
...@@ -70,7 +70,14 @@ ...@@ -70,7 +70,14 @@
:class="specificationPop == item.id ? 'shopping_cell_specification_btn active' : 'shopping_cell_specification_btn'" :class="specificationPop == item.id ? 'shopping_cell_specification_btn active' : 'shopping_cell_specification_btn'"
size="mini" size="mini"
@click="changeSpecification(item.id)" @click="changeSpecification(item.id)"
>{{ index + 1 + ". " + item.des }}</el-button> >
{{ index + 1 + ". " + "访问次数:" +
item.pv +
"/日," +
"访问量:" +
item.count +
"/日" }}
</el-button>
</div> </div>
<div class="no_option" v-else>暂无规格</div> <div class="no_option" v-else>暂无规格</div>
</div> </div>
...@@ -151,25 +158,26 @@ export default { ...@@ -151,25 +158,26 @@ export default {
cellIndex: { type: Number, default: null }, cellIndex: { type: Number, default: null },
cellCheck: { cellCheck: {
type: Boolean, type: Boolean,
default: false default: false,
}, },
readOnly: { readOnly: {
type: Boolean, type: Boolean,
default: false default: false,
}, },
cellIsService: { cellIsService: {
type: Boolean type: Boolean,
} },
}, },
watch: { watch: {
cellCheck: function(val) { cellCheck: function (val) {
this.checkedItem = val; this.checkedItem = val;
}, },
cellItem: { cellItem: {
immediate: true, // 这句重要 immediate: true, // 这句重要
handler(val) { handler(val) {
this.cellItems = val; this.cellItems = val;
this.cellItems.is_subscribe = this.cellItems.is_subscribe == 1 ? true : false; this.cellItems.is_subscribe =
this.cellItems.is_subscribe == 1 ? true : false;
if (this.cellIsService) { if (this.cellIsService) {
if (this.cellItems.service.buy_method == 1) { if (this.cellItems.service.buy_method == 1) {
this.specificationApplicationBtns = [{ id: 1, value: "按月" }]; this.specificationApplicationBtns = [{ id: 1, value: "按月" }];
...@@ -178,12 +186,12 @@ export default { ...@@ -178,12 +186,12 @@ export default {
} else { } else {
this.specificationApplicationBtns = [ this.specificationApplicationBtns = [
{ id: 1, value: "按月" }, { id: 1, value: "按月" },
{ id: 2, value: "按年" } { id: 2, value: "按年" },
]; ];
} }
} }
} },
} },
}, },
data: () => ({ data: () => ({
cellItems: {}, cellItems: {},
...@@ -195,12 +203,12 @@ export default { ...@@ -195,12 +203,12 @@ export default {
specificationApplicationPop: 1, specificationApplicationPop: 1,
appSpecificationBtns: [ appSpecificationBtns: [
{ id: 1, value: "部署" }, { id: 1, value: "部署" },
{ id: 2, value: "开发" } { id: 2, value: "开发" },
], ],
specificationApplicationBtns: [ specificationApplicationBtns: [
{ id: 1, value: "按月" }, { id: 1, value: "按月" },
{ id: 2, value: "按年" } { id: 2, value: "按年" },
] ],
}), }),
computed: { computed: {
getSpecification() { getSpecification() {
...@@ -211,14 +219,20 @@ export default { ...@@ -211,14 +219,20 @@ export default {
this.cellItems.service.request_spcs_info.length != 0 this.cellItems.service.request_spcs_info.length != 0
) { ) {
let requestArr = this.cellItems.service.request_spcs_info; let requestArr = this.cellItems.service.request_spcs_info;
requestArr.forEach(item => { requestArr.forEach((item) => {
arr.push(item.id); arr.push(item.id);
}); });
} }
let num = arr.indexOf(this.cellItems.spec_id); let num = arr.indexOf(this.cellItems.spec_id);
let specification = ""; let specification = "";
if (num != -1) { if (num != -1) {
specification = this.cellItems.service.request_spcs_info[num].des; specification =
"访问次数:" +
this.cellItems.service.request_spcs_info[num].pv +
"/日," +
"访问量:" +
this.cellItems.service.request_spcs_info[num].count +
"/日";
} }
return specification; return specification;
} else { } else {
...@@ -228,7 +242,7 @@ export default { ...@@ -228,7 +242,7 @@ export default {
return "开发"; return "开发";
} }
} }
} },
}, },
mounted() {}, mounted() {},
methods: { methods: {
...@@ -263,23 +277,23 @@ export default { ...@@ -263,23 +277,23 @@ export default {
changeCellItem() { changeCellItem() {
this.$emit("changeCellMsg", { this.$emit("changeCellMsg", {
index: this.cellIndex, index: this.cellIndex,
data: this.cellItems data: this.cellItems,
}); });
}, },
delCellItem() { delCellItem() {
this.$api.serviceShop this.$api.serviceShop
.delShoppingCart([this.cellItems.id]) .delShoppingCart([this.cellItems.id])
.then(response => { .then((response) => {
if (response.data.success == 1) { if (response.data.success == 1) {
this.$message({ this.$message({
message: this.cellIsService ? "删除该服务成功" : "删除该应用成功", message: this.cellIsService ? "删除该服务成功" : "删除该应用成功",
type: "success" type: "success",
}); });
this.$emit("updateList"); this.$emit("updateList");
} else { } else {
this.$message({ this.$message({
message: this.cellIsService ? "删除该服务失败" : "删除该应用失败", message: this.cellIsService ? "删除该服务失败" : "删除该应用失败",
type: "error" type: "error",
}); });
} }
}); });
...@@ -290,16 +304,16 @@ export default { ...@@ -290,16 +304,16 @@ export default {
duration: this.cellItems.duration, duration: this.cellItems.duration,
spec_id: this.cellItems.spec_id, spec_id: this.cellItems.spec_id,
duration_method: this.cellItems.duration_method, duration_method: this.cellItems.duration_method,
is_subscribe: Number(this.cellItems.is_subscribe) is_subscribe: Number(this.cellItems.is_subscribe),
}; };
this.$api.serviceShop.updateShoppingCart(query).then(response => { this.$api.serviceShop.updateShoppingCart(query).then((response) => {
if (response.data.success == 1) { if (response.data.success == 1) {
} else { } else {
console.log(response.data.errMsg); console.log(response.data.errMsg);
} }
}); });
} },
} },
}; };
</script> </script>
...@@ -437,6 +451,14 @@ export default { ...@@ -437,6 +451,14 @@ export default {
} }
.shopping_cell_specification_btn { .shopping_cell_specification_btn {
margin: 0 10px 10px; margin: 0 10px 10px;
max-width: calc(100% - 20px);
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.shopping_cell_specification_btn:hover {
background-color: #b2baf5;
color: #f4f7fc;
} }
.shopping_cell_specification_btn.active { .shopping_cell_specification_btn.active {
background-color: #515fe7; background-color: #515fe7;
......
...@@ -200,7 +200,7 @@ ...@@ -200,7 +200,7 @@
{{ scope.row[item.prop] }} {{ scope.row[item.prop] }}
</span> </span>
<!-- others --> <!-- others -->
<span v-else-if="item.type === 'click'" style="cursor: pointer;" @click="gotopage(item.url,scope.row[item.prop][item.id])">{{ scope.row[item.prop] }}</span> <span v-else-if="item.type === 'click'" style="cursor: pointer;color: #274fee;" @click="gotopage(item.url,scope.row[item.id])">{{ scope.row[item.prop] }}</span>
<span v-else>{{ scope.row[item.prop] }}</span> <span v-else>{{ scope.row[item.prop] }}</span>
</template> </template>
</el-table-column> </el-table-column>
...@@ -460,7 +460,11 @@ export default { ...@@ -460,7 +460,11 @@ export default {
}); });
}, },
gotopage(url,id){ gotopage(url,id){
if(url=='/'){
this.$router.push(`/fwgl/0/0/servicedetail/${id}`) this.$router.push(`/fwgl/0/0/servicedetail/${id}`)
}else{
this.$router.push(`${url}${id}`)
}
}, },
//本地删除 //本地删除
deleteLocal(val) { deleteLocal(val) {
......
This diff is collapsed.
This diff is collapsed.
<template>
<div class="workflows-view">
<super-flow
ref="superFlow"
:node-list="nodeList"
:link-list="linkList"
:origin="origin"
line-color="#c4d8f8"
on-line-color="#94a8c8"
:draggable="false"
:linkAddable="false"
>
<template v-slot:node="{ meta }">
<div
v-if="meta.type === 1 || meta.type === 2"
class="flow-node"
:class="`flow-node-${meta.type}`"
>
<span v-text="meta.name"></span>
</div>
<div v-else-if="hideDetail" class="flow-node">
<span v-text="meta.name"></span>
</div>
<el-tooltip v-else effect="dark" placement="right-start">
<div class="node-detail" slot="content">
<p>当前实例数:{{ meta.running_nodes || 0 }}</p>
<p>当前超时比率:{{ (meta.cur_timeout_rate || 0) * 100 }}%</p>
<p>总超时比率:{{ (meta.total_timeout_rate || 0) * 100 }}%</p>
<p>节点平均耗时:{{ meta.avg_elapsed_time || 0 }}分钟</p>
<p>节点最大耗时:{{ meta.max_elapsed_time || 0 }}分钟</p>
<p>节点插件:</p>
<div class="plug-in-list">
<span v-for="(plugin, index) in meta.plugins" :key="index">
{{
["-", "接口插件", "流程插件", "超时插件"][
plugin.plugin_type || 0
]
}}
</span>
</div>
</div>
<div class="flow-node">
<span v-text="meta.name"></span>
<span class="example-count" v-text="meta.running_nodes || 0"></span>
</div>
</el-tooltip>
</template>
</super-flow>
</div>
</template>
<script>
export default {
props: {
id: {
type: Number,
required: true,
},
hideDetail: {
type: Boolean,
default: false,
},
},
data() {
return {
origin: [0, 0],
nodeList: [],
linkList: [],
};
},
methods: {
init() {
Promise.all([
this.$http.get("/apaas/serviceapp/v3/workflows/detail", {
params: {
id: this.id,
},
}),
this.$http.get(
"/apaas/serviceapp/v3/workflows/detail/nodeInstanceStat",
{
params: {
id: this.id,
},
}
),
])
.then((response) => {
let data = response[0].data.data;
let nodeList = data.nodeList;
let linkList = data.linkList;
let nodes = response[1].data.data;
nodes.forEach((node) => {
let targetNode = nodeList.find((v) => v.node_id === node.id);
if (targetNode) {
targetNode.meta = {
...targetNode.meta,
...node,
};
}
});
this.nodeList = nodeList;
this.linkList = linkList;
})
.catch(function (error) {
console.log(error);
});
},
},
created() {
this.init();
},
};
</script>
<style>
.workflows-view .super-flow__node {
background-color: transparent;
border: none;
box-shadow: unset;
}
</style>
<style scoped>
.workflows-view {
width: 100%;
height: 830px;
background-color: #fbfcfe;
border-radius: 10px;
margin-top: 10px;
}
.flow-node {
position: relative;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
border: solid 3px #b4c6f5;
background-color: #fff;
border-radius: 8px;
padding: 5px;
font-size: 16px;
color: #0f2683;
}
.flow-node-1 {
border-color: #109e93;
background-color: #25bdb1;
color: #fff;
}
.flow-node-2 {
border-color: #e86262;
background-color: #f78181;
color: #fff;
}
.example-count {
position: absolute;
right: -14px;
bottom: -14px;
height: 28px;
padding: 0 14px;
border-radius: 14px;
background-color: #f5ab4c;
line-height: 28px;
color: #fff;
}
.node-detail {
font-size: 12px;
line-height: 20px;
}
.plug-in-list {
margin-top: 5px;
width: 150px;
}
.plug-in-list > span {
display: inline-block;
vertical-align: middle;
min-width: calc(50% - 15px);
padding: 0 9px;
border: 1px solid #617ef0;
box-sizing: border-box;
border-radius: 3px;
background-color: #274fee;
margin: 0 10px 10px 0;
line-height: 18px;
text-align: center;
}
</style>
...@@ -143,7 +143,7 @@ export default { ...@@ -143,7 +143,7 @@ export default {
rules: { rules: {
menu_name: [ menu_name: [
{ required: true, message: "请填写菜单名称", trigger: "blur" }, { required: true, message: "请填写菜单名称", trigger: "blur" },
{ min: 0, max: 8, message: "菜单名称不超过8", trigger: "blur" } { min: 0, max: 16, message: "菜单名称不超过16", trigger: "blur" }
], ],
visit_url: [ visit_url: [
{ required: true, message: "请填写菜单访问地址", trigger: "blur" }, { required: true, message: "请填写菜单访问地址", trigger: "blur" },
......
...@@ -206,12 +206,12 @@ export default { ...@@ -206,12 +206,12 @@ export default {
}, 1000); }, 1000);
}; };
var user_name_pass = (rule, value, callback) => { var user_name_pass = (rule, value, callback) => {
var reg = /^[a-z0-9]+$/; var reg = /^[a-zA-Z0-9|\-|_|\.]+$/;
setTimeout(() => { setTimeout(() => {
if (reg.test(value)) { if (reg.test(value)) {
callback(); callback();
} else { } else {
callback(new Error("只支持小写字母、数字")); callback(new Error("只支持字母、数字、-、_、."));
} }
}, 100); }, 100);
}; };
......
<template> <template>
<div class="fwgl_container"> <div class="fwgl_container">
<side-nav-bar <sideNavBar
title="数据分析中心" v-if="is_admin == 3 || is_admin == 4 || is_admin == 1"
title="运营管控中心"
imgSrc="tool_fuwu" imgSrc="tool_fuwu"
:nav-list="navList" :nav-list="navList"
:title-path="navList[0] && navList[0].path" :title-path="navList[0] && navList[0].path"
></side-nav-bar> ></sideNavBar>
<sideNavBarClass
v-else-if="is_admin == 2"
title="运营管控中心"
imgSrc="tool_fuwu"
:nav-list="navList"
:title-path="navList[0] && navList[0].path"
></sideNavBarClass>
<div class="main_container"> <div class="main_container">
<router-view :key="'type_' + $route.params.type"></router-view> <router-view :key="'type_' + $route.params.type"></router-view>
</div> </div>
...@@ -14,53 +22,88 @@ ...@@ -14,53 +22,88 @@
<script> <script>
import sideNavBar from "@/components/side-nav-bar"; import sideNavBar from "@/components/side-nav-bar";
import sideNavBarClass from "@/components/general/side-nav-bar-class";
export default { export default {
components: { components: {
sideNavBar sideNavBar,
sideNavBarClass,
}, },
data: () => ({ data: () => ({
userNav: [ userNav: [
{ {
name: "我的服务数据分析", name: "服务分析",
path: `/data_analysis/my_service` path: `/data_analysis/my_service`,
}, },
{ {
name: "我的应用数据分析", name: "应用分析",
path: `/data_analysis/my_application` path: `/data_analysis/my_application`,
}, },
],
userNav1: [
{
name: "运营分析",
path: `/data_analysis/org_service`,
child: [
{ {
name: "组织服务数据分析", name: "服务分析",
path: `/data_analysis/org_service` path: `/data_analysis/org_service`,
}, },
{ {
name: "组织应用数据分析", name: "应用分析",
path: `/data_analysis/org_application` path: `/data_analysis/org_application`,
}, },
],
},
{
name: "运行管控",
path: `/data_analysis/operation_overview`,
child: [
{ {
name: "运行概况-组织", name: "运行概况",
path: `/data_analysis/operation_overview` path: `/data_analysis/operation_overview`,
}, },
{ {
name: "服务管控-组织", name: "服务管控",
path: `/data_analysis/service_control` path: `/data_analysis/service_control`,
} },
], ],
navList: [] },
],
userNav2: [
{
name: "服务分析",
path: `/data_analysis/super_service`,
},
{
name: "应用分析",
path: `/data_analysis/super_application`,
},
],
navList: [],
is_admin: 0,
}), }),
watch: { watch: {
"$route.fullPath"(path) { // "$route.fullPath"(path) {
this.initNavList(); // this.initNavList();
} // },
}, },
methods: { methods: {
initNavList() { initNavList() {
this.is_admin = this.$store.state.userInfo.is_admin;
if (this.is_admin == 3 || this.is_admin == 4) {
this.navList = this.userNav; this.navList = this.userNav;
} else if (this.is_admin == 2) {
this.navList = this.userNav1;
this.$router.push({ name: "orgServiceDataAnalysis" });
} else if (this.is_admin == 1) {
this.navList = this.userNav2;
this.$router.push({ name: "superServiceDataAnalysis" });
} }
}, },
},
mounted() { mounted() {
this.initNavList(); this.initNavList();
} },
}; };
</script> </script>
......
<template>
<div>
<el-breadcrumb separator="/" class="bread_crumb1">
<el-breadcrumb-item :to="{ path: '/data_analysis' }">{{ $t("lang.data_analysis") }}</el-breadcrumb-item>
<el-breadcrumb-item>{{ $t("lang.my_application_data_analysis") }}</el-breadcrumb-item>
</el-breadcrumb>
<BlockRadius class="default">
<div class="default_img">
<h1 class="default_title">开发中,敬请期待!</h1>
<h3 class="default_msg">
如需技术支持
<br />请联系管理员
</h3>
</div>
</BlockRadius>
</div>
</template>
<script>
import BlockRadius from "@/components/general/block-radius";
export default {
methods: {
getData() {},
},
components: {
BlockRadius,
},
};
</script>
<style lang="less" scoped>
.default {
height: calc(100vh - 160px);
display: flex;
align-items: center;
justify-content: center;
margin: 0 20px;
.default_img {
width: 1282px;
height: 629px;
background-image: url("~@/assets/imgs/img_default_jszc.png");
.default_title {
color: #264dd9;
font-size: 44px;
font-weight: bold;
margin-bottom: 40px;
}
.default_msg {
color: #58617a;
font-size: 24px;
line-height: 44px;
}
}
}
</style>
\ No newline at end of file
<template>
<div>
<el-breadcrumb separator="/" class="bread_crumb1">
<el-breadcrumb-item :to="{ path: '/data_analysis' }">
{{
$t("lang.data_analysis")
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
$t("lang.my_service_data_analysis")
}}
</el-breadcrumb-item>
</el-breadcrumb>
<BlockRadius class="default">
<div class="default_img">
<h1 class="default_title">开发中,敬请期待!</h1>
<h3 class="default_msg">
如需技术支持
<br />请联系管理员
</h3>
</div>
</BlockRadius>
</div>
</template>
<script>
import BlockRadius from "@/components/general/block-radius";
export default {
methods: {
getData() {},
},
components: {
BlockRadius,
},
};
</script>
<style lang="less" scoped>
.default {
height: calc(100vh - 160px);
display: flex;
align-items: center;
justify-content: center;
margin: 0 20px;
.default_img {
width: 1282px;
height: 629px;
background-image: url("~@/assets/imgs/img_default_jszc.png");
.default_title {
color: #264dd9;
font-size: 44px;
font-weight: bold;
margin-bottom: 40px;
}
.default_msg {
color: #58617a;
font-size: 24px;
line-height: 44px;
}
}
}
</style>
\ No newline at end of file
...@@ -16,7 +16,8 @@ export default { ...@@ -16,7 +16,8 @@ export default {
'/intelligent_drawing', '/intelligent_drawing',
'/intelligent_details', '/intelligent_details',
'/intelligent_appbuilder', '/intelligent_appbuilder',
'/search_engine' '/search_engine',
'/technical_support'
] ]
}), }),
created(){ created(){
......
...@@ -93,6 +93,7 @@ ...@@ -93,6 +93,7 @@
@getNewList="getNewList" @getNewList="getNewList"
ref="servicepic" ref="servicepic"
directory="manage" directory="manage"
:disabled="disabled"
></upload-file> ></upload-file>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -129,13 +130,43 @@ var user_name_pass = (rule, value, callback) => { ...@@ -129,13 +130,43 @@ var user_name_pass = (rule, value, callback) => {
} }
}, 100); }, 100);
}; };
var rank_rule = (rule, value, callback)=>{
var reg = /^[1-9][0-9]{0,1}$/;
setTimeout(() => {
if (reg.test(value)) {
callback();
} else {
callback(new Error("请输入2位内正整数"));
}
}, 100);
}
import helper from "@/services/helper.js"; import helper from "@/services/helper.js";
import uploadFile from "@/components/general/upload_file"; import uploadFile from "@/components/general/upload_file";
export default { export default {
components: { components: {
uploadFile, uploadFile,
}, },
data: () => ({ data(){
var validateup = (rule, value, callback) => {
if (value === '') {
callback(new Error('请选择上架时间'));
} else {
if (this.detail.down_time !== '') {
this.$refs.detail_form.validateField('down_time');
}
callback();
}
};
var validatedown = (rule, value, callback) => {
if (value === '') {
callback(new Error('请选择下架时间'));
} else if (value.getTime() <= this.detail.up_time.getTime()) {
callback(new Error('下架时间应在上架时间之后'));
} else {
callback();
}
};
return{
pageType: 0, // 0:新增,1:编辑,2:详情 pageType: 0, // 0:新增,1:编辑,2:详情
detail: { detail: {
name: "", name: "",
...@@ -176,6 +207,10 @@ export default { ...@@ -176,6 +207,10 @@ export default {
message: "请输入排序", message: "请输入排序",
trigger: "blur", trigger: "blur",
}, },
{
validator: rank_rule,
trigger: 'blur'
}
], ],
up_time: [ up_time: [
{ {
...@@ -183,6 +218,10 @@ export default { ...@@ -183,6 +218,10 @@ export default {
message: "请选择上架时间", message: "请选择上架时间",
trigger: "change", trigger: "change",
}, },
{
validator:validateup,
trigger: "change",
},
], ],
fileList: [ fileList: [
{ {
...@@ -197,6 +236,10 @@ export default { ...@@ -197,6 +236,10 @@ export default {
message: "请选择下架时间", message: "请选择下架时间",
trigger: "change", trigger: "change",
}, },
{
validator:validatedown,
trigger: "change",
},
], ],
url: [], url: [],
}, },
...@@ -211,7 +254,8 @@ export default { ...@@ -211,7 +254,8 @@ export default {
}, },
], ],
submitLoading: false, submitLoading: false,
}), }
},
computed: { computed: {
pageName() { pageName() {
return ["新增", "编辑", "详情"][this.pageType]; return ["新增", "编辑", "详情"][this.pageType];
...@@ -241,6 +285,7 @@ export default { ...@@ -241,6 +285,7 @@ export default {
this.detail.fileList = val[0].url; this.detail.fileList = val[0].url;
this.detail.size = val[0].size; this.detail.size = val[0].size;
console.log(this.detail.fileList); console.log(this.detail.fileList);
this.$refs.detail_form.validateField('fileList')
}, },
getDetail() { getDetail() {
this.$http this.$http
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="list_container"> <div class="list_container">
<apass-list <apass-list
ref="list" ref="list"
class="no_wrap"
:list-header="listHeader" :list-header="listHeader"
:list-data="listData" :list-data="listData"
:list-total="listTotal" :list-total="listTotal"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="list_container"> <div class="list_container">
<apass-list <apass-list
ref="list" ref="list"
class="no_wrap"
:list-header="listHeader" :list-header="listHeader"
:list-data="listData" :list-data="listData"
:list-total="listTotal" :list-total="listTotal"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="list_container"> <div class="list_container">
<apass-list <apass-list
ref="list" ref="list"
class="no_wrap"
:list-header="listHeader" :list-header="listHeader"
:list-data="listData" :list-data="listData"
:list-total="listTotal" :list-total="listTotal"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="list_container"> <div class="list_container">
<apass-list <apass-list
ref="list" ref="list"
class="no_wrap"
:list-header="listHeader" :list-header="listHeader"
:list-data="listData" :list-data="listData"
:list-total="listTotal" :list-total="listTotal"
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
<div class="list_container"> <div class="list_container">
<apass-list <apass-list
ref="list" ref="list"
class="no_wrap"
:list-header="listHeader" :list-header="listHeader"
:list-data="listData" :list-data="listData"
:list-total="listTotal" :list-total="listTotal"
......
...@@ -5,7 +5,32 @@ ...@@ -5,7 +5,32 @@
<service-shop-menu></service-shop-menu> <service-shop-menu></service-shop-menu>
</el-aside> </el-aside>
<el-main> <el-main>
<service-list :filterNames="filterNames" :name="name" :url="url" :urlFilter="urlFilter"></service-list> <service-list
v-show="urlFilter != '7' && urlFilter != '10'"
:filterNames="filterNames"
:name="name"
:url="url"
:urlFilter="urlFilter"
></service-list>
<div v-show="urlFilter == '7' || urlFilter == '10'">
<el-breadcrumb separator="/" class="bread_crumb1 bread_left">
<el-breadcrumb-item :to="{ path: '/shop' }">
{{
$t("lang.service_shop")
}}
</el-breadcrumb-item>
<el-breadcrumb-item>{{ name }}</el-breadcrumb-item>
</el-breadcrumb>
<BlockRadius class="default">
<div class="default_img">
<h1 class="default_title">开发中,敬请期待!</h1>
<h3 class="default_msg">
如需技术支持
<br />请联系管理员
</h3>
</div>
</BlockRadius>
</div>
</el-main> </el-main>
</el-container> </el-container>
</div> </div>
...@@ -14,16 +39,18 @@ ...@@ -14,16 +39,18 @@
<script> <script>
import ServiceShopMenu from "@/components/service-list/service_shop_menu"; import ServiceShopMenu from "@/components/service-list/service_shop_menu";
import ServiceList from "@/components/service-list/service_list"; import ServiceList from "@/components/service-list/service_list";
import BlockRadius from "@/components/general/block-radius";
export default { export default {
components: { components: {
ServiceShopMenu, ServiceShopMenu,
ServiceList ServiceList,
BlockRadius,
}, },
data: () => ({ data: () => ({
urlFilter: "", urlFilter: "",
url: "", url: "",
name: "", name: "",
filterNames: [] filterNames: [],
}), }),
mounted() { mounted() {
this.getVal(this.$route.path); this.getVal(this.$route.path);
...@@ -58,7 +85,7 @@ export default { ...@@ -58,7 +85,7 @@ export default {
this.filterNames = []; this.filterNames = [];
break; break;
case "comprehensive_app_list": case "comprehensive_app_list":
this.name = "综合应用"; this.name = "融合服务";
this.urlFilter = "21"; this.urlFilter = "21";
this.url = "/shop/zhfwDetail"; this.url = "/shop/zhfwDetail";
this.filterNames = ["服务类型", "服务领域", "服务来源组织"]; this.filterNames = ["服务类型", "服务领域", "服务来源组织"];
...@@ -76,16 +103,39 @@ export default { ...@@ -76,16 +103,39 @@ export default {
this.filterNames = []; this.filterNames = [];
break; break;
} }
} },
}, },
watch: { watch: {
"$route.path": { "$route.path": {
handler(val) { handler(val) {
this.getVal(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;
background-image: url("~@/assets/imgs/img_default_jszc.png");
.default_title {
color: #264dd9;
font-size: 44px;
font-weight: bold;
margin-bottom: 40px;
} }
.default_msg {
color: #58617a;
font-size: 24px;
line-height: 44px;
} }
} }
}; }
</script>
<style scoped>
</style> </style>
\ No newline at end of file
...@@ -120,7 +120,6 @@ export default { ...@@ -120,7 +120,6 @@ export default {
{ {
prop: "name", prop: "name",
label: "字段编码", label: "字段编码",
align: "center",
width: 240, width: 240,
}, },
{ {
...@@ -163,7 +162,6 @@ export default { ...@@ -163,7 +162,6 @@ export default {
{ {
prop: "name", prop: "name",
label: "字段编码", label: "字段编码",
align: "center",
width: 240, width: 240,
}, },
{ {
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<el-breadcrumb separator="/"> <el-breadcrumb separator="/">
<el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item> <el-breadcrumb-item to="/shop">服务超市</el-breadcrumb-item>
<el-breadcrumb-item to="/shop/comprehensive_app_list/11"> <el-breadcrumb-item to="/shop/comprehensive_app_list/11">
综合应用 融合服务
</el-breadcrumb-item> </el-breadcrumb-item>
<el-breadcrumb-item>服务详情信息</el-breadcrumb-item> <el-breadcrumb-item>服务详情信息</el-breadcrumb-item>
</el-breadcrumb> </el-breadcrumb>
...@@ -38,11 +38,6 @@ export default { ...@@ -38,11 +38,6 @@ export default {
providerData: null, providerData: null,
commentsData: null, commentsData: null,
}), }),
computed: {
id() {
return this.$route.params.id;
},
},
computed: { computed: {
id() { id() {
return this.$route.params.id; return this.$route.params.id;
...@@ -93,7 +88,6 @@ export default { ...@@ -93,7 +88,6 @@ export default {
descript: datas.descript, descript: datas.descript,
serviceRequestSpcs: specificationData, serviceRequestSpcs: specificationData,
}; };
this.detailData = [ this.detailData = [
{ {
name: "获取流程", name: "获取流程",
...@@ -136,6 +130,13 @@ export default { ...@@ -136,6 +130,13 @@ export default {
}, },
}, */ }, */
]; ];
if (datas.workflows_id) {
this.detailData.push({
name: "流程详情",
type: "workflows",
value: datas.workflows_id,
});
}
this.specificationData = specificationData; this.specificationData = specificationData;
this.providerData = { this.providerData = {
organization_name: datas.organization_name, organization_name: datas.organization_name,
...@@ -150,7 +151,7 @@ export default { ...@@ -150,7 +151,7 @@ export default {
}); });
}, },
}, },
mounted() { created() {
this.init(); this.init();
}, },
}; };
......
<template>
<div class="contain">
<div class="technical_head">{{ $t("lang.technical_support") }}</div>
<BlockRadius class="default">
<div class="default_img">
<h1 class="default_title">开发中,敬请期待!</h1>
<h3 class="default_msg">
如需技术支持
<br />请联系管理员
</h3>
</div>
</BlockRadius>
</div>
</template>
<script>
import BlockRadius from "@/components/general/block-radius";
export default {
data() {
return {};
},
components: {
BlockRadius,
},
computed: {},
created() {},
mounted() {},
methods: {},
};
</script>
<style lang="less" scoped>
.contain {
width: calc(100% - 80px);
margin: 0 auto;
margin-top: -157px;
margin-bottom: 20px;
.technical_head {
color: #626de9;
font-size: 14px;
padding: 20px;
}
.default {
height: calc(100vh - 180px);
display: flex;
align-items: center;
justify-content: center;
.default_img {
width: 1282px;
height: 629px;
background-image: url("~@/assets/imgs/img_default_jszc.png");
.default_title {
color: #264dd9;
font-size: 44px;
font-weight: bold;
margin-bottom: 40px;
}
.default_msg {
color: #58617a;
font-size: 24px;
line-height: 44px;
}
}
}
}
</style>
...@@ -533,6 +533,10 @@ export default { ...@@ -533,6 +533,10 @@ export default {
this.step2Loading = false; this.step2Loading = false;
}, },
step2Action() { step2Action() {
if (this.step2Loading) {
return;
}
this.$refs.deploy_info_form.validate((valid) => { this.$refs.deploy_info_form.validate((valid) => {
if (valid) { if (valid) {
this.step2Loading = true; this.step2Loading = true;
...@@ -612,6 +616,10 @@ export default { ...@@ -612,6 +616,10 @@ export default {
this.image_info.file = ""; this.image_info.file = "";
}, },
addImage() { addImage() {
if (this.addImageLoading) {
return;
}
this.$refs.image_info_form.validate((valid) => { this.$refs.image_info_form.validate((valid) => {
if (valid) { if (valid) {
this.addImageLoading = true; this.addImageLoading = true;
......
...@@ -39,7 +39,12 @@ export default { ...@@ -39,7 +39,12 @@ export default {
}, },
}, },
mounted() { mounted() {
window.addEventListener('message',event =>{ this.$nextTick(() => {
window.addEventListener('message',this.postmassageevt);
})
},
methods: {
postmassageevt(event){
let data = event.data; let data = event.data;
// App Builder发布服务 // App Builder发布服务
if (data.cmd == 'appbuildermsg'){ if (data.cmd == 'appbuildermsg'){
...@@ -47,9 +52,11 @@ export default { ...@@ -47,9 +52,11 @@ export default {
this.$store.commit("setAppBuilderParams", data.params); this.$store.commit("setAppBuilderParams", data.params);
this.$router.push(`/fwzc/fwcs?map=4`); this.$router.push(`/fwzc/fwcs?map=4`);
} }
}) }
}, },
methods: {}, destroyed () {
window.removeEventListener('message',this.postmassageevt);
}
}; };
</script> </script>
......
...@@ -32,19 +32,37 @@ export default { ...@@ -32,19 +32,37 @@ export default {
}, },
mounted() { mounted() {
this.$nextTick(() => { this.$nextTick(() => {
window.addEventListener('message',event =>{ window.addEventListener('message',this.postmassageevt)
})
},
methods: {
postmassageevt(event){
let data = event.data; let data = event.data;
// App Builder页面 -- 新窗口打开
if (data.cmd == 'mapviewtoapp'){
let params = {
title: data.params.title,
tags: data.params.tags,
sharewithwebmap:data.params.shareWithWebMap,
webmap:data.params.id,
summary: data.params.summary,
};
let routeData = this.$router.resolve({
name: "intelligent_appbuilder",
query: params,
});
window.open(routeData.href, '_blank');
// this.$store.commit("setAppBuilderParams", data.params);
};
if (data.cmd == 'mapdetailtoview'){ if (data.cmd == 'mapdetailtoview'){
console.log(data); console.log(data);
this.$store.commit("setZnztDetailsParams", data.params); this.$store.commit("setZnztDetailsParams", data.params);
this.$router.push('/intelligent_drawing') this.$router.push('/intelligent_drawing')
} }
}) }
})
}, },
methods: {},
destroyed () { destroyed () {
// window.removeEventListener('message') window.removeEventListener('message',this.postmassageevt)
} }
}; };
......
...@@ -29,10 +29,6 @@ export default { ...@@ -29,10 +29,6 @@ export default {
name: "流程监控", name: "流程监控",
path: `/progress/monitoring`, path: `/progress/monitoring`,
}, },
{
name: "流程设计",
path: `/progress/designs`,
}
], ],
navList: [], navList: [],
}), }),
......
...@@ -231,15 +231,15 @@ export default { ...@@ -231,15 +231,15 @@ export default {
info: "" info: ""
}, },
{ {
title: "场景描述", title: "业务系统名称",
info: "" info: ""
}, },
{ {
title: "调用业务系统", title: "业务系统访问地址",
info: "" info: ""
}, },
{ {
title: "业务系统域名", title: "场景描述",
info: "" info: ""
}, },
{ {
...@@ -354,13 +354,13 @@ export default { ...@@ -354,13 +354,13 @@ export default {
this.$set(this.list_arr[0], "info", data.service_apply_info.apply_user_info.department_name); this.$set(this.list_arr[0], "info", data.service_apply_info.apply_user_info.department_name);
this.$set(this.list_arr[1], "info", data.service_apply_info.apply_user_info.user_name); this.$set(this.list_arr[1], "info", data.service_apply_info.apply_user_info.user_name);
this.$set(this.list_arr[2], "info", data.service_apply_info.apply_user_info.phone); this.$set(this.list_arr[2], "info", data.service_apply_info.apply_user_info.phone);
this.$set(this.list_arr[3], "info", data.descript); this.$set(this.list_arr[3], "info", data.service_apply_info.business_name);
this.$set(this.list_arr[4], "info", data.service_apply_info.business_name); this.$set(this.list_arr[4], "info", data.service_apply_info.business_url);
this.$set(this.list_arr[5], "info", data.service_apply_info.business_url); this.$set(this.list_arr[5], "info", data.descript);
this.$set(this.list_arr[6], "info", data.service_apply_info.apply_file.split('/')[data.service_apply_info.apply_file.split('/').length - 1]); this.$set(this.list_arr[6], "info", data.service_apply_info.apply_file.split('/')[data.service_apply_info.apply_file.split('/').length - 1]);
this.$set(this.list_arr[6], "url", data.service_apply_info.apply_file); this.$set(this.list_arr[6], "url", data.service_apply_info.apply_file);
this.$set(this.list_arr[8], "info", data.service_apply_info.duration+(data.service_apply_info.duration_unit==1?'':'')); this.$set(this.list_arr[8], "info", data.service_apply_info.duration+(data.service_apply_info.duration_unit==1?'':''));
this.$set(this.list_arr[9], "info", "访问次数:"+(data.service_apply_info.request_spcs&&data.service_apply_info.request_spcs.pv||'-')+"/日 访问量:"+(data.service_apply_info.request_spcs&&data.service_apply_info.request_spcs.count||'-')+"/日"); this.$set(this.list_arr[9], "info", "访问次数:"+(data.service_apply_info.request_spcs&&data.service_apply_info.request_spcs.pv||'-')+"次/日 访问量:"+(data.service_apply_info.request_spcs&&data.service_apply_info.request_spcs.count||'-')+"/日");
this.id = data.service_apply_info.id this.id = data.service_apply_info.id
if(data.service_apply_info.approval_status!==0){ if(data.service_apply_info.approval_status!==0){
this.servicead_arr[this.now_user].splice(1,1) this.servicead_arr[this.now_user].splice(1,1)
...@@ -384,7 +384,7 @@ export default { ...@@ -384,7 +384,7 @@ export default {
}, },
{ {
title:'审批单位:', title:'审批单位:',
info:e.user_info.department_name info:e.user_info.department_name?e.user_info.department_name:''
}, },
{ {
title:'审批人:', title:'审批人:',
......
...@@ -106,7 +106,7 @@ ...@@ -106,7 +106,7 @@
:title="dialogInfo.title" :title="dialogInfo.title"
:msg="dialogInfo.msg" :msg="dialogInfo.msg"
:submit="dialogInfo.submit" :submit="dialogInfo.submit"
:sunbmitText="dialogInfo.sunbmitText" :sunbmit-text="dialogInfo.sunbmitText"
></apass-dialog> ></apass-dialog>
<allot-info-confirm <allot-info-confirm
...@@ -148,6 +148,7 @@ export default { ...@@ -148,6 +148,7 @@ export default {
title: "", title: "",
msg: "", msg: "",
submit: null, submit: null,
sunbmitText: "",
}, },
listUrl: "", listUrl: "",
deleteUrl: "", deleteUrl: "",
...@@ -1064,8 +1065,7 @@ export default { ...@@ -1064,8 +1065,7 @@ export default {
callback(item) { callback(item) {
if (item.state == 0) { if (item.state == 0) {
return null; // 已下架,上架的操作需要普通用户申请 return null; // 已下架,上架的操作需要普通用户申请
} else } else if (item.state == 1) {
if (item.state == 1) {
return _self.soldOutItem(item); // 已上架,超管用户可以直接下架 return _self.soldOutItem(item); // 已上架,超管用户可以直接下架
} else if (item.state == 2) { } else if (item.state == 2) {
return _self.soldUpItem(item); // 上架审核中,超管用户可以直接上架 return _self.soldUpItem(item); // 上架审核中,超管用户可以直接上架
...@@ -1398,7 +1398,6 @@ export default { ...@@ -1398,7 +1398,6 @@ export default {
applyForSoldUpItem(item) { applyForSoldUpItem(item) {
this.dialogInfo.title = "提示"; this.dialogInfo.title = "提示";
this.dialogInfo.msg = "确认申请上架此服务吗?"; this.dialogInfo.msg = "确认申请上架此服务吗?";
this.dialogInfo.cancelText = "取消";
this.dialogInfo.sunbmitText = "发送通知"; this.dialogInfo.sunbmitText = "发送通知";
this.dialogInfo.submit = () => { this.dialogInfo.submit = () => {
this.$http this.$http
...@@ -1433,7 +1432,6 @@ export default { ...@@ -1433,7 +1432,6 @@ export default {
this.dialogInfo.title = "是否确定下架服务"; this.dialogInfo.title = "是否确定下架服务";
this.dialogInfo.msg = this.dialogInfo.msg =
"下架此服务会导致用户被迫暂停对服务的调用,下架前需向超级管理员发送通知,超级管理员通过后此服务将会从服务超市中下架。"; "下架此服务会导致用户被迫暂停对服务的调用,下架前需向超级管理员发送通知,超级管理员通过后此服务将会从服务超市中下架。";
this.dialogInfo.cancelText = "取消";
this.dialogInfo.sunbmitText = "发送通知"; this.dialogInfo.sunbmitText = "发送通知";
this.dialogInfo.submit = () => { this.dialogInfo.submit = () => {
this.$http this.$http
...@@ -1467,7 +1465,6 @@ export default { ...@@ -1467,7 +1465,6 @@ export default {
soldUpItem(item) { soldUpItem(item) {
this.dialogInfo.title = "提示"; this.dialogInfo.title = "提示";
this.dialogInfo.msg = "确认上架此服务吗?"; this.dialogInfo.msg = "确认上架此服务吗?";
this.dialogInfo.cancelText = "";
this.dialogInfo.sunbmitText = "确定"; this.dialogInfo.sunbmitText = "确定";
this.dialogInfo.submit = () => { this.dialogInfo.submit = () => {
this.$http this.$http
...@@ -1501,7 +1498,6 @@ export default { ...@@ -1501,7 +1498,6 @@ export default {
this.dialogInfo.title = "提示"; this.dialogInfo.title = "提示";
this.dialogInfo.msg = this.dialogInfo.msg =
"下架此服务会导致调用该服务的<br />用户被迫暂停对服务的调用"; "下架此服务会导致调用该服务的<br />用户被迫暂停对服务的调用";
this.dialogInfo.cancelText = "";
this.dialogInfo.sunbmitText = "确定"; this.dialogInfo.sunbmitText = "确定";
this.dialogInfo.submit = () => { this.dialogInfo.submit = () => {
this.$http this.$http
...@@ -1534,7 +1530,6 @@ export default { ...@@ -1534,7 +1530,6 @@ export default {
deleteItem(item) { deleteItem(item) {
this.dialogInfo.title = ""; this.dialogInfo.title = "";
this.dialogInfo.msg = "是否删除该条服务?"; this.dialogInfo.msg = "是否删除该条服务?";
this.dialogInfo.cancelText = "";
this.dialogInfo.sunbmitText = ""; this.dialogInfo.sunbmitText = "";
this.dialogInfo.submit = () => { this.dialogInfo.submit = () => {
this.$http this.$http
......
This diff is collapsed.
...@@ -311,7 +311,7 @@ export default { ...@@ -311,7 +311,7 @@ export default {
if(reg.test(this.maxline)){ if(reg.test(this.maxline)){
}else{ }else{
this.$message.error('请输入长度小于6的正整数') this.$message.error('请输入6位内的正整数')
return return
} }
}else{ }else{
...@@ -327,7 +327,7 @@ export default { ...@@ -327,7 +327,7 @@ export default {
if(reg.test(this.maxline1)){ if(reg.test(this.maxline1)){
}else{ }else{
this.$message.error('请输入长度小于6的正整数') this.$message.error('请输入6位内的正整数')
return return
} }
} }
...@@ -338,7 +338,7 @@ export default { ...@@ -338,7 +338,7 @@ export default {
if(reg.test(this.maxline1)){ if(reg.test(this.maxline1)){
}else{ }else{
this.$message.error('请输入长度小于6的正整数') this.$message.error('请输入6位内的正整数')
return return
} }
} }
......
...@@ -5,6 +5,11 @@ ...@@ -5,6 +5,11 @@
<el-breadcrumb-item :to="{ path: '/intelligent_drawing' }">智能制图</el-breadcrumb-item> <el-breadcrumb-item :to="{ path: '/intelligent_drawing' }">智能制图</el-breadcrumb-item>
<el-breadcrumb-item>发布信息填写</el-breadcrumb-item> <el-breadcrumb-item>发布信息填写</el-breadcrumb-item>
</el-breadcrumb> </el-breadcrumb>
<el-breadcrumb v-else-if="process_id != ''" separator="/" class="bread_crumb">
<el-breadcrumb-item :to="{ path: '/workplace' }">在线组件工具</el-breadcrumb-item>
<el-breadcrumb-item :to="{ path: '/progress/designer' }">流程设计</el-breadcrumb-item>
<el-breadcrumb-item>发布信息填写</el-breadcrumb-item>
</el-breadcrumb>
<el-breadcrumb v-else separator="/" class="bread_crumb"> <el-breadcrumb v-else separator="/" class="bread_crumb">
<el-breadcrumb-item :to="{ path: '/fwzc' }">服务注册</el-breadcrumb-item> <el-breadcrumb-item :to="{ path: '/fwzc' }">服务注册</el-breadcrumb-item>
<el-breadcrumb-item v-if="!jcxxtx">服务测试</el-breadcrumb-item> <el-breadcrumb-item v-if="!jcxxtx">服务测试</el-breadcrumb-item>
...@@ -355,10 +360,7 @@ ...@@ -355,10 +360,7 @@
</block-radius> </block-radius>
</div> </div>
<div style="display: none"> <div style="display: none">
<iframe <iframe id="listener" :src="addPortalItemUrl"></iframe>
id="listener"
:src="addPortalItemUrl"
></iframe>
</div> </div>
<apass-dialog <apass-dialog
ref="alertChange" ref="alertChange"
...@@ -388,7 +390,8 @@ export default { ...@@ -388,7 +390,8 @@ export default {
}, },
data() { data() {
return { return {
addPortalItemUrl: gisServiceUrl + '/portal/apaasplat/viewer/addPortalItem.html', addPortalItemUrl:
gisServiceUrl + "/portal/apaasplat/viewer/addPortalItem.html",
btnList: [], btnList: [],
activeBtn: null, activeBtn: null,
serviceUrl: "", serviceUrl: "",
...@@ -543,6 +546,7 @@ export default { ...@@ -543,6 +546,7 @@ export default {
requestRules: 0, requestRules: 0,
responseRules: 0, responseRules: 0,
is_map: 0, is_map: 0,
process_id: "",
param_fields: [], param_fields: [],
body_fields: [], body_fields: [],
dialogInfo: { dialogInfo: {
...@@ -552,6 +556,7 @@ export default { ...@@ -552,6 +556,7 @@ export default {
}, },
is_portal: false, is_portal: false,
portal_id: "", portal_id: "",
dataType: "",
}; };
}, },
computed: {}, computed: {},
...@@ -687,12 +692,14 @@ export default { ...@@ -687,12 +692,14 @@ export default {
this.$api.workbench.fwzcFwcs(query).then((response) => { this.$api.workbench.fwzcFwcs(query).then((response) => {
if (response.data.success == 1) { if (response.data.success == 1) {
let data = response.data.data; let data = response.data.data;
this.body_fields = data.body_fields;
this.param_fields = data.param_fields;
if (data.body_fields && data.body_fields.length != 0) { if (data.body_fields && data.body_fields.length != 0) {
this.datasQqcs = data.body_fields; this.datasQqcs = data.body_fields;
this.param_fields = data.param_fields; this.dataType = "body";
} else { } else {
this.datasQqcs = data.param_fields; this.datasQqcs = data.param_fields;
this.body_fields = []; this.dataType = "param";
} }
this.datasFhcs = data.response_fields; this.datasFhcs = data.response_fields;
this.resSuccess = true; this.resSuccess = true;
...@@ -886,9 +893,13 @@ export default { ...@@ -886,9 +893,13 @@ export default {
method: this.select, method: this.select,
url: this.serviceUrl, url: this.serviceUrl,
request_fields: request_fields:
this.body_fields.length == 0 ? [] : this.request_fields, this.dataType == "body"
? this.request_fields
: this.body_fields,
request_query_fields: request_query_fields:
this.param_fields.length == 0 ? [] : this.request_fields, this.dataType == "param"
? this.request_fields
: this.param_fields,
response_fields: this.response_fields, response_fields: this.response_fields,
content_type: contentType, content_type: contentType,
portal_id: this.portal_id, portal_id: this.portal_id,
...@@ -998,6 +1009,11 @@ export default { ...@@ -998,6 +1009,11 @@ export default {
self.is_portal = true; self.is_portal = true;
} }
this.getOrganization(); this.getOrganization();
} else if (self.$route.query.process) {
self.process_id = self.$route.query.process;
self.jcxxtx = true;
this.getProcessDetail
this.getOrganization();
} else { } else {
self.is_map = 0; self.is_map = 0;
self.getServiceType1(); self.getServiceType1();
...@@ -1040,7 +1056,6 @@ export default { ...@@ -1040,7 +1056,6 @@ export default {
); );
}, },
listeners(event) { listeners(event) {
console.log(event);
let self = this; let self = this;
if (event && event.origin == gisServiceUrl && event.data) { if (event && event.origin == gisServiceUrl && event.data) {
if (event.data.cmd == "getPortalItemInfo") { if (event.data.cmd == "getPortalItemInfo") {
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -80,7 +80,7 @@ export default { ...@@ -80,7 +80,7 @@ export default {
option:[ option:[
{ required: true, message: '请输入意见', trigger: 'blur' }, { required: true, message: '请输入意见', trigger: 'blur' },
{ {
min: 10, message: '长度应大于10个字符', trigger: 'blur' min: 10,max:200, message: '长度应大于10个小于200个字符', trigger: 'blur'
} }
] ]
}, },
......
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