<!DOCTYPE html>
|
<html>
|
|
<head>
|
<meta charset="utf-8" />
|
<meta http-equiv="X-UA-Compatible" content="chrome=1"/>
|
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
|
<title>站内信</title>
|
<link rel="stylesheet" type="text/css" href="../../../css/doui.min.css"/>
|
<script src="../../../js/doui.min.js" type="text/javascript" charset="utf-8"></script>
|
<script src="../../../js/requestHost.js" type="text/javascript" charset="utf-8"></script>
|
<script type="text/javascript">
|
doui.importLoad({
|
importArray: [
|
// 雷打不动
|
getHostPath() + "js/jquery.min.js",
|
getHostPath() + "js/vue.min.js",
|
// 字体图标
|
getHostPath() + "fontAdmin/iconfont.css",
|
getHostPath() + "font/iconfont.css",
|
// dom模板
|
getHostPath() + "css/admin-all.css",
|
getHostPath() + "js/admin-creat.js",
|
],
|
});
|
</script>
|
</head>
|
|
<body class="fontPC">
|
<div class="winSizeBox">
|
|
<!-- =============================================================== 搜索筛选(顶部) -->
|
<div id="thisHeader" style="width:7.5rem;"></div>
|
|
<!-- =============================================================== 表格 -->
|
<div id="thisTable" class="admin-main-overHeader"></div>
|
|
</div>
|
</body>
|
|
</html>
|
|
|
<script type="text/javascript">
|
|
// ==================================================================================== 页面数据
|
doui.onReady({
|
success: function ()
|
{
|
// ----------------------------------------------------- 顶部
|
// 生成顶部筛选项dom
|
adminDom.header.creat({ el: "#thisHeader" });
|
// 输入类型
|
adminDom.header.select({
|
show: true,
|
list: [
|
{ key: "1", value: "标题" },
|
{ key: "2", value: "内容" },
|
{ key: "3", value: "用户ID" },
|
],
|
});
|
// 输入搜索
|
adminDom.header.input({ placeholder: "根据选择填写" });
|
// 筛选项
|
adminDom.header.screen({
|
show: true,
|
list: [
|
{
|
title: "推送状态",
|
muchCheck: false, // 是否可以多选
|
child: [
|
{ key: ["0"], value: "未推送", check: false },
|
{ key: ["1"], value: "推送成功", check: false },
|
{ key: ["2"], value: "推送失败", check: false },
|
],
|
input: { type: "number", num: 0 },
|
},
|
],
|
});
|
|
|
// ----------------------------------------------------- 表格
|
// 表格dom创建
|
adminDom.table.creat({
|
el: "#thisTable",
|
// 搜索触发
|
touchSearch: function (optC)
|
{
|
doui.showLoading({ content: "加载列表" });
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/pushInfo/query",
|
data: {
|
type: "ZNX",
|
pageIndex: optC.table.page, // 页码
|
pageSize: optC.table.pageSize, // 每页数量
|
keyType: optC.select.result, // 搜索类型
|
key: optC.input[0].result, // 搜索关键字
|
state: optC.screen[0].result[0], // 推送状态
|
},
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else
|
{
|
// 申明 表格内容数据
|
var mo_tr = []; // tr组
|
for (var i = 0, mo = res.data.result_list; i < mo.length; i++)
|
{
|
// 当前行
|
var thatTr = {
|
check: false,
|
td: [
|
{ title: "状态", key: mo[i].state, value: mo[i].state },
|
{ title: "预设时间", key: mo[i].controlTime_str, value: mo[i].controlTime_str, "class": "font13 font-gray" },
|
{ title: "推送时间", key: mo[i].pushTime, value: mo[i].pushTime, "class": "font13 font-gray" },
|
{ title: "ID", key: mo[i].id, value: mo[i].id },
|
{ title: "标题", key: mo[i].title, value: mo[i].title },
|
{ title: "内容", key: mo[i].content, value: mo[i].content },
|
{ title: "推送用户", key: mo[i].uids, value: mo[i].uids },
|
{ title: "安卓推送版本", key: mo[i].listAndroid, value: "(缺省)" },
|
{ title: "IOS推送版本", key: mo[i].listIOS, value: "(缺省)" },
|
{ title: "自动推送", key: mo[i].timeTask, value: mo[i].timeTask?"是":"否", "class": mo[i].timeTask?"font-green":"font-red" },
|
{ title: "备注", key: mo[i].remark, value: mo[i].remark }
|
],
|
};
|
// 状态分析
|
if (thatTr.td[0].key == 0) { thatTr.td[0].value = "未推送"; thatTr.td[0]["class"]="font-orange"; }
|
else if (thatTr.td[0].key == 1) { thatTr.td[0].value = "推送成功"; thatTr.td[0]["class"]="font-green"; }
|
else if (thatTr.td[0].key == 2) { thatTr.td[0].value = "推送失败"; thatTr.td[0]["class"]="font-red"; }
|
// 用户分析
|
if (!thatTr.td[6].key || thatTr.td[6].key == 0 || thatTr.td[6].key == "") { thatTr.td[6].value = "不限"; thatTr.td[6]["class"]="font-gray"; }
|
// 版本分析
|
if (thatTr.td[7].key.length <= 0) { thatTr.td[7]["class"]="font-gray"; }
|
else { thatTr.td[7].value = thatTr.td[7].key.join("—"); }
|
if (thatTr.td[8].key.length <= 0) { thatTr.td[8]["class"]="font-gray"; }
|
else { thatTr.td[8].value = thatTr.td[8].key.join("—"); }
|
// 将当前行放入tr组
|
mo_tr.push(thatTr);
|
}
|
// 更新表格的数据
|
adminDom.table.opt({ pageMax: res.data.pe.totalPage }); // 最大页码
|
adminDom.table.tbody({ tr: mo_tr }); // 内容数据
|
}
|
}
|
});
|
},
|
});
|
// 表格设置
|
adminDom.table.opt({ pageSize: 20, });
|
// 表格头排
|
adminDom.table.thead({
|
th: [
|
{ title: "状态", width: "", orderUp: "", orderDown: "", },
|
{ title: "预设时间", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "datetime-local",
|
},
|
},
|
{ title: "推送时间", width: "", orderUp: "", orderDown: "" },
|
{ title: "ID", width: "", orderUp: "", orderDown: "", },
|
{ title: "标题", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "text",
|
placeholder: "如:订单返利已经到账",
|
},
|
},
|
{ title: "内容", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "text",
|
placeholder: "",
|
},
|
},
|
{ title: "推送用户", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "text",
|
placeholder: "如:911382(多个用户用英文逗号间隔,不填则全员推送)",
|
},
|
},
|
{ title: "安卓推送版本", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "check",
|
list: [],
|
},
|
},
|
{ title: "IOS推送版本", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "check",
|
list: [],
|
},
|
},
|
{ title: "自动推送", width: "", orderUp: "", orderDown: "",
|
edit: {
|
type: "radio",
|
list: [
|
{ key: false, value: "否" },
|
{ key: true, value: "是" }
|
],
|
},
|
},
|
|
{ title: "备注", width: "", orderUp: "", orderDown: "" },
|
]
|
});
|
// 工具栏
|
adminDom.table.tools({
|
show: true,
|
list: [
|
{ "title": "新建", "name": "add", "icon": "fi fi-plus" },
|
{ "title": "删除", "name": "del", "icon": "fi fi-trash" },
|
{ "title": "修改", "name": "edit", "icon": "fi fi-edit-box" },
|
{ "title": "推送", "name": "work", "icon": "admin adminhuaban" },
|
],
|
touch: function (back)
|
{
|
// 新建
|
if (back.toolName == "add")
|
{
|
// 修改弹框创建
|
adminDom.editTan.creat({
|
el: ".winSizeBox",
|
// 数据修改提交触发
|
touchSubmit: function (thereData)
|
{
|
doui.showLoading({ content: "正在处理" });
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/pushInfo/save",
|
data: {
|
type: "ZNX",
|
title: thereData.list[4].key,
|
content: thereData.list[5].key,
|
uids: thereData.list[6].key,
|
arrayAndroid: thereData.list[7].key,
|
arrayIOS: thereData.list[8].key,
|
timeTask: thereData.list[9].key,
|
controlTime_str: thereData.list[1].key,
|
},
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else
|
{
|
adminDom.editTan.remove();
|
doui.showToast({ content: "新建成功" });
|
vm_table.search();
|
}
|
}
|
});
|
},
|
});
|
adminDom.editTan.opt({ title: "新建", });
|
adminDom.editTan.thereData({ show: false, });
|
}
|
|
// 删除
|
else if (back.toolName == "del")
|
{
|
// 被选中的行id组构建
|
var zu_id = new Array();
|
for (var i = 0, mo = back.list; i < mo.length; i++) { zu_id.push(mo[i][3].key); }
|
// 发起请求
|
doui.showLoading("正在删除");
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/pushInfo/delete",
|
data: { idArray: zu_id },
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast(res.msg); }
|
else { doui.showToast("删除成功"); vm_table.search(); }
|
}
|
});
|
}
|
|
// 修改列表
|
else if (back.toolName == "edit")
|
{
|
if (back.list.length > 1) { doui.showToast({ content: "一次只能操作一个" }); return false; }
|
|
// 修改弹框创建
|
adminDom.editTan.creat({
|
el: ".winSizeBox",
|
touchSubmit: function (thereData)
|
{
|
doui.showLoading({ content: "正在处理" });
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/pushInfo/save",
|
data: {
|
type: "ZNX",
|
id: thereData.list[3].key,
|
title: thereData.list[4].key,
|
content: thereData.list[5].key,
|
uids: thereData.list[6].key,
|
arrayAndroid: thereData.list[7].key,
|
arrayIOS: thereData.list[8].key,
|
timeTask: thereData.list[9].key,
|
controlTime_str: thereData.list[1].key,
|
},
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else
|
{
|
adminDom.editTan.remove();
|
doui.showToast({ content: "修改成功" });
|
vm_table.search();
|
}
|
}
|
});
|
},
|
});
|
adminDom.editTan.opt({ title: "修改" });
|
adminDom.editTan.thereData({ show: true, list: back.list[0] });
|
}
|
|
// 推送
|
else if (back.toolName == "work")
|
{
|
// 获取所选行的ID
|
var zu_id = new Array();
|
for (var i = 0, mo = back.list; i < mo.length; i++) { zu_id.push(mo[i][3].key); }
|
// 发起请求
|
doui.showLoading({ content: "正在推送" });
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/pushInfo/push",
|
data: { idArray: zu_id, },
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else { doui.showToast({ content: "推送成功" }); vm_table.search(); }
|
}
|
});
|
}
|
|
}
|
});
|
|
|
// ----------------------------------------------------- 初始行为
|
// 获取版本
|
versionRequest();
|
// 模拟搜索点击
|
vm_table.search();
|
}
|
});
|
|
|
// ==================================================================================== 数据请求
|
// 获取版本
|
function versionRequest ()
|
{
|
// 发起请求
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/config/getVersionList",
|
data: {},
|
success: function (res)
|
{
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else
|
{
|
// 安卓列表分析
|
for (var i = 0, mo = res.data.android; i < mo.length; i++)
|
{
|
var jiedian = { key: mo[i].version, value: mo[i].version };
|
vm_table.thead.th[7].edit.list.push(jiedian);
|
}
|
// ios列表分析
|
for (var i = 0, mo = res.data.ios; i < mo.length; i++)
|
{
|
var jiedian = { key: mo[i].version, value: mo[i].version };
|
vm_table.thead.th[8].edit.list.push(jiedian);
|
}
|
}
|
},
|
});
|
}
|
|
</script>
|