-
+
消息模板名称:
状态:
-
-
+
+
+
@@ -48,7 +49,7 @@
>
-
+
@@ -81,11 +147,13 @@
import helper from "@/services/helper.js";
import apassList from "@/components/apass-list";
import apassDialog from "@/components/apass-dialog";
+import showMoreFilter from "@/components/show-more-filter";
export default {
components: {
apassList,
apassDialog,
+ showMoreFilter,
},
data: () => ({
listHeader: [],
@@ -105,6 +173,7 @@ export default {
push_time: "",
},
tempFilter: null,
+ templateDetail: null,
}),
created() {
this.listHeader = [
@@ -113,40 +182,37 @@ export default {
prop: "state",
type: "image-tooltip",
getImage(item) {
- return item.state == 1
- ? require("@/assets/imgs/ic_true.png")
- : require("@/assets/imgs/ic_failed.png");
+ return [
+ require("@/assets/imgs/ic_failed.png"),
+ require("@/assets/imgs/ic_true.png"),
+ require("@/assets/imgs/ic_pushing.png"),
+ ][item.state || 0];
},
getTooltip(item) {
- return item.state == 1 ? "推送成功" : "推送失败";
+ return ["推送失败", "推送成功", "推送中"][item.state || 0];
},
align: "center",
width: 60,
},
{
label: "推送流水号",
- prop: "push_num",
+ prop: "id",
width: 240,
},
{
label: "消息模板名称",
- prop: "name",
+ prop: "tpl_name",
type: "button",
callback: this.detailAction,
width: 300,
},
{
label: "消息详情",
- prop: "detail",
+ prop: "contents",
},
{
label: "接收用户",
- prop: "users",
- getText(item) {
- let users = item.users || [];
-
- return users.join(",");
- },
+ prop: "receive_user",
width: 300,
},
{
@@ -163,122 +229,25 @@ export default {
},
methods: {
initList(filter) {
- let fullFilter = {
- ...filter,
- ...this.topFilter,
+ let params = {
+ page: filter.page,
+ 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(fullFilter);
+ // console.log(params);
- 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.tempFilter = filter; // filter存档,用于页面刷新
- /* this.$http
- .get("/apaas/service/v3/resource/apply/approveList", {
- params: {
- search: filter.keyword,
- page: filter.page,
- limit: filter.size,
- state: filter.state,
- },
- })
+ this.$http
+ .get("/apaas/service/v3/push/directmsg/list", { params })
.then(({ data }) => {
if (data.success == 1) {
- this.listTotal = data.total;
- this.listData = data.data;
+ this.listTotal = (data.data && data.data.total) || 0;
+ this.listData = (data.data && data.data.data) || [];
} else {
this.$message({
message: data.errMsg || "获取列表失败",
@@ -288,8 +257,13 @@ export default {
})
.catch((error) => {
console.log(error);
- }); */
- }, // TODO: 列表待调试
+
+ this.$message({
+ message: "获取列表失败",
+ type: "warning",
+ });
+ });
+ },
topFilterAction() {
this.initList(this.tempFilter);
},
@@ -309,7 +283,47 @@ export default {
console.log("新建模板");
},
detailAction(item) {
- console.log(`查看${item.name}`);
+ this.$http
+ .get(`/apaas/service/v3/push/directmsg/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();
},
},
};
@@ -319,4 +333,40 @@ export default {
.list_container {
height: 100%;
}
+.detail_dialog {
+ display: flex;
+ flex-wrap: wrap;
+ text-align: left;
+}
+.detail_dialog .detail_item {
+ flex: 1 1 auto;
+ width: 50%;
+ margin-top: 20px;
+}
+.detail_dialog .detail_item.full_line {
+ width: 100%;
+}
+.detail_dialog .detail_item p {
+ padding: 0 15px;
+ font-size: 14px;
+ line-height: 22px;
+ color: #8890a7;
+}
+.detail_dialog .detail_item .item_content {
+ color: #000;
+ margin-top: 10px;
+}
+.detail_dialog .detail_item .full_content {
+ padding: 10px 0;
+ border-radius: 8px;
+ background-color: #f8f9fd;
+ margin-top: 5px;
+}
+.detail_dialog .detail_item .full_content > .apass_scroll {
+ height: 176px;
+ overflow: auto;
+}
+.detail_dialog .detail_item .full_content .item_content {
+ margin: 0;
+}
diff --git a/src/pages/message-management/message-alert/message-alert-list.vue b/src/pages/message-management/message-alert/message-alert-list.vue
index 4c1250e80f50bc0c58c5d644bd2e406a8333a8aa..52e5bde5f121d1581d3ba97f9757d532db8e4590 100644
--- a/src/pages/message-management/message-alert/message-alert-list.vue
+++ b/src/pages/message-management/message-alert/message-alert-list.vue
@@ -20,7 +20,7 @@