Commit 78a21ae2 authored by 张俊's avatar 张俊

Merge branch 'dev' of https://cloud.wodcloud.com/git/apaas/apaas-v3-ui into dev

parents a6b13c59 7377e665
...@@ -619,21 +619,17 @@ width: 620px!important; ...@@ -619,21 +619,17 @@ width: 620px!important;
color: #58617a; color: #58617a;
} }
.apaas_scroll::-webkit-scrollbar {
.apass_scroll::-webkit-scrollbar { width: 16px;
/*滚动条整体样式*/
width: 16px; /*高宽分别对应横竖滚动条的尺寸*/
height: 1px; height: 1px;
} }
.apass_scroll::-webkit-scrollbar-thumb { .apaas_scroll::-webkit-scrollbar-thumb {
/*滚动条里面小方块*/
border-radius: 8px; border-radius: 8px;
/* background: #dde4ff; */ /* background: #dde4ff; */
box-shadow: 8px 0 0 #a5adb7 inset; box-shadow: 8px 0 0 #a5adb7 inset;
border: 4px solid rgba(0, 0, 0, 0); border: 4px solid rgba(0, 0, 0, 0);
} }
.apass_scroll::-webkit-scrollbar-track { .apaas_scroll::-webkit-scrollbar-track {
/*滚动条里面轨道*/
border-radius: 8px; border-radius: 8px;
/* background: #f4f4f4; */ /* background: #f4f4f4; */
box-shadow: 8px 0 0 #f4f4f4 inset; box-shadow: 8px 0 0 #f4f4f4 inset;
...@@ -702,14 +698,22 @@ width: 620px!important; ...@@ -702,14 +698,22 @@ width: 620px!important;
} }
.apaas_steps .apaas_step { .apaas_steps .apaas_step {
height: 100%; height: 100%;
position: relative;
} }
.apaas_steps .apaas_step .apaas_step_content { .apaas_steps .apaas_step .apaas_step_content {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: calc(100% - 64px); height: calc(100% - 64px);
border-bottom: 1px solid #f4f7fc; border-bottom: 1px solid #f4f7fc;
overflow: hidden; overflow: hidden;
} }
.apaas_steps .apaas_step .apaas_step_action { .apaas_steps .apaas_step .apaas_step_action {
padding-top: 20px; position: absolute;
bottom: 0;
left: 0;
width: 100%;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: flex-start; align-items: flex-start;
......
<template> <template>
<ul class="comments_list apass_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.message" /> <el-avatar :size="45" fit="cover" :src="item.message" />
......
<template> <template>
<ul class="star_list apass_scroll"> <ul class="star_list apaas_scroll">
<li class="item_list" v-for="(option, index) in options" :key="'star_info_' + index"> <li class="item_list" v-for="(option, index) in options" :key="'star_info_' + index">
<el-rate <el-rate
v-if="show_star" v-if="show_star"
......
<template> <template>
<div class="top_list apass_scroll" @mouseenter="mouseenter" @mouseleave="mouseleave"> <div class="top_list apaas_scroll" @mouseenter="mouseenter" @mouseleave="mouseleave">
<ul> <ul>
<li class="item_list" v-for="(option, index) in options" :key="index"> <li class="item_list" v-for="(option, index) in options" :key="index">
<div class="item_index"> <div class="item_index">
......
...@@ -852,7 +852,7 @@ export default { ...@@ -852,7 +852,7 @@ export default {
{ {
title: "", title: "",
info: "工作区域申请文件标准模板.PDF", info: "工作区域申请文件标准模板.PDF",
url: "", url: "static/工作区域申请文件模板.xlsx",
type: "down" type: "down"
} }
], ],
......
...@@ -135,7 +135,7 @@ ...@@ -135,7 +135,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="right-content apass_scroll"> <div class="right-content apaas_scroll">
<apass-table <apass-table
class="hot-search-table" class="hot-search-table"
:header="hotSearchHeader" :header="hotSearchHeader"
......
...@@ -146,7 +146,7 @@ ...@@ -146,7 +146,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="right-content apass_scroll"> <div class="right-content apaas_scroll">
<apass-table <apass-table
class="hot-search-table" class="hot-search-table"
:header="hotSearchHeader" :header="hotSearchHeader"
......
...@@ -26,11 +26,11 @@ ...@@ -26,11 +26,11 @@
<step <step
title="选择推送服务" title="选择推送服务"
:step="0" :step="0"
:active-icon="require('@/assets/imgs/progress_ic_xinxitx.png')" :active-icon="require('@/assets/imgs/progress_ic_tuisongfw.png')"
class="apaas_step" class="apaas_step"
> >
<div class="apaas_step_content"> <div class="apaas_step_content">
<p style="margin: 50px;text-align: center;">选择推送服务</p> <p style="padding: 50px;text-align: center;">选择推送服务</p>
</div> </div>
<div class="apaas_button apaas_step_action"> <div class="apaas_button apaas_step_action">
<el-button type="defalut" @click="backToList"> <el-button type="defalut" @click="backToList">
...@@ -44,11 +44,11 @@ ...@@ -44,11 +44,11 @@
<step <step
title="选择消息模板" title="选择消息模板"
:step="1" :step="1"
:active-icon="require('@/assets/imgs/progress_ic_bushudata.png')" :active-icon="require('@/assets/imgs/progress_ic_xiaoximb.png')"
class="apaas_step" class="apaas_step"
> >
<div class="apaas_step_content"> <div class="apaas_step_content apaas_scroll">
<p style="margin: 50px;text-align: center;">选择消息模板</p> <p style="padding: 50px;text-align: center;">选择消息模板</p>
</div> </div>
<div class="apaas_button apaas_step_action"> <div class="apaas_button apaas_step_action">
<el-button type="defalut" @click="backToList"> <el-button type="defalut" @click="backToList">
...@@ -67,11 +67,11 @@ ...@@ -67,11 +67,11 @@
<step <step
title="选择目标用户" title="选择目标用户"
:step="2" :step="2"
:active-icon="require('@/assets/imgs/progress_ic_jingxiang.png')" :active-icon="require('@/assets/imgs/progress_ic_renyuan.png')"
class="apaas_step" class="apaas_step"
> >
<div class="apaas_step_content"> <div class="apaas_step_content apaas_scroll">
<p style="margin: 50px;text-align: center;">选择目标用户</p> <p style="padding: 50px;text-align: center;">选择目标用户</p>
</div> </div>
<div class="apaas_button apaas_step_action"> <div class="apaas_button apaas_step_action">
<el-button type="defalut" @click="backToList"> <el-button type="defalut" @click="backToList">
......
...@@ -95,7 +95,7 @@ ...@@ -95,7 +95,7 @@
消息详情: 消息详情:
</p> </p>
<div class="full_content"> <div class="full_content">
<div class="apass_scroll"> <div class="apaas_scroll">
<p class="item_content"> <p class="item_content">
{{ templateDetail.contents }} {{ templateDetail.contents }}
</p> </p>
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
目标用户: 目标用户:
</p> </p>
<div class="full_content"> <div class="full_content">
<div class="apass_scroll"> <div class="apaas_scroll">
<p class="item_content"> <p class="item_content">
{{ templateDetail.receive_user }} {{ templateDetail.receive_user }}
</p> </p>
...@@ -159,14 +159,6 @@ export default { ...@@ -159,14 +159,6 @@ export default {
listHeader: [], listHeader: [],
listData: [], listData: [],
listTotal: 0, listTotal: 0,
dialogInfo: {
msg: "",
cancelText: "",
cancelType: "",
cancel: null,
sunbmitText: "",
submit: null,
},
topFilter: { topFilter: {
name: "", name: "",
state: "", state: "",
...@@ -276,11 +268,8 @@ export default { ...@@ -276,11 +268,8 @@ export default {
this.initList(this.tempFilter); this.initList(this.tempFilter);
}, },
showDialog() {
this.$refs.dialog.show();
},
addNew() { addNew() {
this.$router.push("/message/directed_push/add") this.$router.push("/message/directed_push/add");
}, },
detailAction(item) { detailAction(item) {
this.$http this.$http
...@@ -362,7 +351,7 @@ export default { ...@@ -362,7 +351,7 @@ export default {
background-color: #f8f9fd; background-color: #f8f9fd;
margin-top: 5px; margin-top: 5px;
} }
.detail_dialog .detail_item .full_content > .apass_scroll { .detail_dialog .detail_item .full_content > .apaas_scroll {
height: 176px; height: 176px;
overflow: auto; overflow: auto;
} }
......
<template>
<div class="apaas_detail_container">
<div class="apass_breadcrumb">
<el-breadcrumb separator="/">
<el-breadcrumb-item :to="{ path: '/message' }">
{{ $t("lang.message") }}
</el-breadcrumb-item>
<el-breadcrumb-item :to="{ path: '/message/message_alert' }">
{{ $t("lang.message_alert") }}
</el-breadcrumb-item>
<el-breadcrumb-item>
新建
</el-breadcrumb-item>
</el-breadcrumb>
</div>
<div class="main_contaner locked_height">
<steps
:active-step="step"
:done="done"
:show-done="true"
done-title="推送成功"
done-sub-title="用户可通过用户中心-消息通知查收推送内容"
class="apaas_steps"
>
<step
title="选择消息模板"
:step="0"
:active-icon="require('@/assets/imgs/progress_ic_xiaoximb.png')"
class="apaas_step"
>
<div class="apaas_step_content apaas_scroll">
<p style="padding: 50px;text-align: center;">选择消息模板</p>
</div>
<div class="apaas_button apaas_step_action">
<el-button type="defalut" @click="backToList">
取消
</el-button>
<el-button type="primary" @click="step1Action">
下一步
</el-button>
</div>
</step>
<step
title="选择目标用户"
:step="1"
:active-icon="require('@/assets/imgs/progress_ic_renyuan.png')"
class="apaas_step"
>
<div class="apaas_step_content apaas_scroll">
<p style="padding: 50px;text-align: center;">选择目标用户</p>
</div>
<div class="apaas_button apaas_step_action">
<el-button type="defalut" @click="backToList">
取消
</el-button>
<span>
<el-button type="defalut" @click="step = 0">
上一步
</el-button>
<el-button type="primary" @click="step2Action">
完成选择
</el-button>
</span>
</div>
</step>
<template slot="action">
<el-button type="primary" @click="backToList">
返回列表
</el-button>
</template>
</steps>
</div>
</div>
</template>
<script>
import Steps from "@/components/app-build-steps/app-build-steps";
import Step from "@/components/app-build-steps/app-build-step";
export default {
components: {
Steps,
Step,
},
data() {
return {
step: 0,
done: false,
};
},
computed: {},
created() {},
methods: {
backToList() {
this.$router.push("/message/message_alert");
},
step1Action() {
this.step = 1;
},
step2Action() {
this.done = true;
},
},
};
</script>
<style scoped>
.main_contaner {
padding: 20px;
}
</style>
...@@ -67,9 +67,78 @@ ...@@ -67,9 +67,78 @@
<apass-dialog <apass-dialog
ref="dialog" ref="dialog"
:msg="dialogInfo.msg" width="800"
:submit="dialogInfo.submit" title="查看"
></apass-dialog> @cancel="cancelAction"
@submit="submitAction"
>
<div class="detail_dialog" slot="content" v-if="templateDetail">
<div class="detail_item">
<p class="item_title">
消息模板名称:
</p>
<p class="item_content">
{{ templateDetail.tpl_name }}
</p>
</div>
<div class="detail_item">
<p class="item_title">
模板类型:
</p>
<p class="item_content">
{{ templateDetail.tpl_type }}
</p>
</div>
<div class="detail_item full_line">
<p class="item_title">
消息详情:
</p>
<div class="full_content">
<div class="apaas_scroll">
<p class="item_content">
{{ templateDetail.contents }}
</p>
</div>
</div>
</div>
<div class="detail_item full_line">
<p class="item_title">
目标用户:
</p>
<div class="full_content">
<div class="apaas_scroll">
<p class="item_content">
{{ templateDetail.receive_user }}
</p>
</div>
</div>
</div>
<div class="detail_item">
<p class="item_title">
推送时间:
</p>
<p class="item_content">
{{ templateDetail.push_time }}
</p>
</div>
<div class="detail_item">
<p class="item_title">
推送状态:
</p>
<p class="item_content">
{{ templateDetail.state }}
</p>
</div>
<div class="detail_item">
<p class="item_title">
推送流水号:
</p>
<p class="item_content">
{{ templateDetail.id }}
</p>
</div>
</div>
</apass-dialog>
</div> </div>
</template> </template>
...@@ -89,16 +158,13 @@ export default { ...@@ -89,16 +158,13 @@ export default {
listHeader: [], listHeader: [],
listData: [], listData: [],
listTotal: 0, listTotal: 0,
dialogInfo: {
msg: "",
submit: null,
},
topFilter: { topFilter: {
name: "", name: "",
state: "", state: "",
push_time: "", push_time: "",
}, },
tempFilter: null, tempFilter: null,
templateDetail: null,
}), }),
created() { created() {
this.listHeader = [ this.listHeader = [
...@@ -107,40 +173,37 @@ export default { ...@@ -107,40 +173,37 @@ export default {
prop: "state", prop: "state",
type: "image-tooltip", type: "image-tooltip",
getImage(item) { getImage(item) {
return item.state == 1 return [
? require("@/assets/imgs/ic_true.png") require("@/assets/imgs/ic_failed.png"),
: require("@/assets/imgs/ic_failed.png"); require("@/assets/imgs/ic_true.png"),
require("@/assets/imgs/ic_pushing.png"),
][item.state || 0];
}, },
getTooltip(item) { getTooltip(item) {
return item.state == 1 ? "推送成功" : "推送失败"; return ["推送失败", "推送成功", "推送中"][item.state || 0];
}, },
align: "center", align: "center",
width: 60, width: 60,
}, },
{ {
label: "推送流水号", label: "推送流水号",
prop: "push_num", prop: "id",
width: 240, width: 240,
}, },
{ {
label: "消息模板名称", label: "消息模板名称",
prop: "name", prop: "tpl_name",
type: "button", type: "button",
callback: this.detailAction, callback: this.detailAction,
width: 300, width: 300,
}, },
{ {
label: "消息详情", label: "消息详情",
prop: "detail", prop: "contents",
}, },
{ {
label: "接收用户", label: "接收用户",
prop: "users", prop: "receive_user",
getText(item) {
let users = item.users || [];
return users.join("");
},
width: 300, width: 300,
}, },
{ {
...@@ -157,122 +220,25 @@ export default { ...@@ -157,122 +220,25 @@ export default {
}, },
methods: { methods: {
initList(filter) { initList(filter) {
let fullFilter = { let params = {
...filter, page: filter.page,
...this.topFilter, size: filter.size,
tplname: this.topFilter.name,
state: this.topFilter.state,
time_s: (this.topFilter.push_time && this.topFilter.push_time[0]) || "",
time_e: (this.topFilter.push_time && this.topFilter.push_time[1]) || "",
}; };
this.tempFilter = filter; // filter存档,用于页面刷新 // console.log(params);
console.log(fullFilter); this.tempFilter = filter; // filter存档,用于页面刷新
this.listTotal = 55;
this.listData = [
{
state: 1,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["张三", "李四", "王五"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 1,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["杨过", "小龙女", "冯宝宝"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 1,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["张三", "李四", "王五"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 0,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["杨过", "小龙女", "冯宝宝"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 0,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["杨过", "小龙女", "冯宝宝"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 1,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["张三", "李四", "王五"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 1,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["杨过", "小龙女", "冯宝宝"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 1,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["张三", "李四", "王五"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 0,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["杨过", "小龙女", "冯宝宝"],
push_time: "2020-07-18T14:25:09+08:00",
},
{
state: 0,
push_num: "propelling2020001",
name: "服务定向推送的消息",
detail:
"亲爱的用户,根据您的服务调用情况,我们向您推荐地图视频融合服务,欢迎使用!",
users: ["杨过", "小龙女", "冯宝宝"],
push_time: "2020-07-18T14:25:09+08:00",
},
];
/* this.$http this.$http
.get("/apaas/service/v3/resource/apply/approveList", { .get("/apaas/service/v3/push/alertmsg/list", { params })
params: {
search: filter.keyword,
page: filter.page,
limit: filter.size,
state: filter.state,
},
})
.then(({ data }) => { .then(({ data }) => {
if (data.success == 1) { if (data.success == 1) {
this.listTotal = data.total; this.listTotal = (data.data && data.data.total) || 0;
this.listData = data.data; this.listData = (data.data && data.data.data) || [];
} else { } else {
this.$message({ this.$message({
message: data.errMsg || "获取列表失败", message: data.errMsg || "获取列表失败",
...@@ -282,8 +248,13 @@ export default { ...@@ -282,8 +248,13 @@ export default {
}) })
.catch((error) => { .catch((error) => {
console.log(error); console.log(error);
}); */
}, // TODO: 列表待调试 this.$message({
message: "获取列表失败",
type: "warning",
});
});
},
topFilterAction() { topFilterAction() {
this.initList(this.tempFilter); this.initList(this.tempFilter);
}, },
...@@ -296,14 +267,51 @@ export default { ...@@ -296,14 +267,51 @@ export default {
this.initList(this.tempFilter); this.initList(this.tempFilter);
}, },
showDialog() {
this.$refs.dialog.show();
},
addNew() { addNew() {
console.log("新建模板"); this.$router.push("/message/message_alert/add")
}, },
detailAction(item) { detailAction(item) {
console.log(`查看${item.name}`); this.$http
.get(`//apaas/service/v3/push/alertmsg/view/${item.id}`)
.then(({ data }) => {
if (data.success == 1) {
let detail = data.data || {};
this.templateDetail = {
tpl_name: detail.tpl_name || "",
tpl_type: ["", "服务推送", "平台维护", "版本更新", "自动消息"][
detail.tpl_type || 0
],
contents: detail.contents || "",
receive_user: detail.receive_user || "",
push_time: helper.dateStringTransform(detail.push_time || ""),
state: ["推送失败", "推送成功", "推送中"][item.state || 0],
id: detail.id || "",
tpl_id: detail.tpl_id || "",
create_user: detail.create_user || "",
};
this.$refs.dialog.show();
} else {
this.$message({
message: data.errMsg || "获取详情失败",
type: "warning",
});
}
})
.catch((error) => {
console.log(error);
this.$message({
message: "获取详情失败",
type: "warning",
});
});
},
cancelAction() {
this.$refs.dialog.hide();
},
submitAction() {
this.$refs.dialog.hide();
}, },
}, },
}; };
......
...@@ -409,6 +409,11 @@ export default new Router({ ...@@ -409,6 +409,11 @@ export default new Router({
name: "message_alert", name: "message_alert",
component: () => import("@/pages/message-management/message-alert/message-alert-list"), component: () => import("@/pages/message-management/message-alert/message-alert-list"),
}, },
{
path: "/message/message_alert/add", // 新建消息提醒
name: "message_alert_add",
component: () => import("@/pages/message-management/message-alert/message-alert-add"),
},
{ {
path: "/message/banner", // benner列表 path: "/message/banner", // benner列表
name: "banner", name: "banner",
......
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