<!DOCTYPE html>
|
<html>
|
|
<head>
|
<meta charset="utf-8" />
|
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
<meta http-equiv="X-UA-Compatible" content="chrome=1"/>
|
<title>发圈推送</title>
|
<link rel="stylesheet" type="text/css" href="../../../../css/doui.min.css"/>
|
<link rel="stylesheet" type="text/css" href="../../../../layui/css/layui.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 src="../../../../layui/layui.all.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",
|
// 编辑器
|
getHostPath() + "childPath/editor/wangEditor.min.js",
|
getHostPath() + "childPath/editor/wangEditor.config.js",
|
],
|
});
|
</script>
|
<!--自设-->
|
<style type="text/css">
|
/*输入说明*/
|
.shuoming{ width: 0.8rem; padding-top: 0.04rem; margin-right: 20px; text-align: right; }
|
/*商品框*/
|
.goodsDan{ width: 0.53rem; height: 0.53rem; position: relative; margin-right: 0.1rem; margin-bottom: 0.1rem; overflow: hidden; }
|
.goodsImg{ width: 0.53rem; height: 0.53rem; position: absolute; left: 0; top: 0; display: block; }
|
.goodsId{ width: 0.53rem; height: 0.14rem; line-height: 0.14rem; text-align: center; color: white; position: absolute; left: 0; bottom: 0; background-color: rgba(0,0,0,0.7); }
|
.goodsClose{ font-size: 0.07rem; width: 0.12rem; height: 0.12rem; line-height: 0.12rem; position: absolute; right: 0.01rem; top: 0.01rem; color: white; text-align: center; }
|
</style>
|
</head>
|
|
<body class="fontPC" style="display:none;">
|
<div id="allwai" class="heightenBox">
|
|
<!-- =============================================================== 搜索筛选(顶部) -->
|
<div class="admin-header">
|
<!--返回按钮-->
|
<div class="admin-btn-roundM bg-yellow click-scale" v-on:click='doui.pageToUrl({ type: "replace", url: "today_index.html" });'>
|
<div><i class="fi fi-left"></i></div>
|
<span class="admin-marginLeft">返回</span>
|
</div>
|
</div>
|
|
<!-- =============================================================== 内容区域 -->
|
<div class="admin-main-overHeader bg-white fboxCol Xstart Ycenter" style="padding-bottom:0.5rem;">
|
|
<!--标题-->
|
<div class="fboxRow Xstart Ystart" style="width:4rem; padding:10px;">
|
<div class="shuoming font18 font-blue">推送标题</div>
|
<div class="flex1 fboxCol Xstart Ystart">
|
<textarea style="width:2.4rem; height:0.3rem;" placeholder="如:超级优惠来袭(不能携带emoji表情)" v-model="info.title"></textarea>
|
</div>
|
</div>
|
|
<!--推送内容-->
|
<div class="fboxRow Xstart Ystart" style="width:4rem;padding:10px;">
|
<div class="shuoming font18 font-blue">推送内容</div>
|
<div class="flex1 fboxCol Xstart Ystart">
|
<textarea style="width:2.4rem; height:0.8rem;" v-model="info.content"></textarea>
|
</div>
|
</div>
|
|
<!-- 是否自动发布 -->
|
<div class="fboxRow Xstart Ystart" style="width:4rem; padding:0px 0px 0px 10px;">
|
<div class="shuoming font18 font-blue">推送发圈ID</div>
|
<div class="flex1 fboxCol Xstart Ystart">
|
<div class="inputShell admin-header-input"><input type="text" id="thingId" v-model="info.thingId"/></div>
|
</div>
|
<div class="admin-btn-roundM bg-green" style="margin:3px 240px 0px 0px;" onclick="evaluateView()">选择活动</div>
|
</div>
|
|
<!-- 是否自动发布 -->
|
<div class="fboxRow Xstart Ystart" style="width:4rem; padding:10px;">
|
<div class="shuoming font18 font-blue">预设时间</div>
|
<div class="flex1 fboxCol Xstart Ystart">
|
<div class="inputShell admin-header-input"><input type="datetime-local" v-model="info.pushTime"/></div>
|
</div>
|
</div>
|
|
<!-- 是否自动发布 -->
|
<div class="fboxRow Xstart Ystart" style="width:4rem; padding:10px;">
|
<div class="shuoming font18 font-blue">浏览数量</div>
|
<div class="flex1 fboxCol Xstart Ystart">
|
<div class="inputShell admin-header-input"><input type="text" v-model="info.scanNum"/></div>
|
</div>
|
</div>
|
|
<!--android推送版本-->
|
<div class="fboxRow Xstart Ystart" style="width:4rem; padding:10px;">
|
<div class="shuoming font18 font-blue">android推送版本</div>
|
<div class="flex1 fboxWrap Xstart Ystart">
|
<!-- 一个选择项 -->
|
<div v-for="(item,index) in version.android" class="fboxRow Xcenter Ycenter cursor-pointer" style="margin:10px;" @click="version.checkClick('1',item)">
|
<div class="font18"><i class="fi" :class="version.result.android.indexOf(item.key)>=0?'fi-check-ok font-green':'fi-check-no font-gray'"></i></div>
|
<div style="margin-left:3px;">{{item.value}}</div>
|
</div>
|
</div>
|
</div>
|
|
<!--ios推送版本-->
|
<div class="fboxRow Xstart Ystart" style="width:4rem; padding:10px;">
|
<div class="shuoming font18 font-blue">ios推送版本</div>
|
<div class="flex1 fboxWrap Xstart Ystart">
|
<!-- 一个选择项 -->
|
<div v-for="(item,index) in version.ios" class="fboxRow Xcenter Ycenter cursor-pointer" style="margin:10px;" @click="version.checkClick('2',item)">
|
<div class="font18"><i class="fi" :class="version.result.ios.indexOf(item.key)>=0?'fi-check-ok font-green':'fi-check-no font-gray'"></i></div>
|
<div style="margin-left:3px;">{{item.value}}</div>
|
</div>
|
</div>
|
</div>
|
<div class="admin-btn-roundM bg-green click-scale" v-on:click="shuruUp()">保存(未推送)</div>
|
</div>
|
</div>
|
</body>
|
</html>
|
|
|
<!--页面数据-->
|
<script type="text/javascript">
|
// vue申明
|
var vm = null;
|
|
doui.onReady({
|
success: function ()
|
{
|
// vue 实例化
|
vm = new Vue({
|
el: "#allwai",
|
// 数据
|
data: {
|
// ---------------------------------------------------------------- 输入组件
|
// 版本号管理
|
version: {
|
android: [],
|
ios: [],
|
result: {
|
android: [],
|
ios: [],
|
},
|
checkClick: function (typeC, itemC)
|
{
|
// 安卓
|
if (typeC == "1")
|
{
|
// 结果中的顺序
|
var index = vm.version.result.android.indexOf(itemC.key);
|
// 如果是选过的 从key中除去该选项
|
if (index >= 0) { vm.version.result.android.splice(index, 1); }
|
// 没有则添加
|
else { vm.version.result.android.push(itemC.key); }
|
}
|
// ios
|
else if (typeC == "2")
|
{
|
// 结果中的顺序
|
var index = vm.version.result.ios.indexOf(itemC.key);
|
// 如果是选过的 从key中除去该选项
|
if (index >= 0) { vm.version.result.ios.splice(index, 1); }
|
// 没有则添加
|
else { vm.version.result.ios.push(itemC.key); }
|
}
|
},
|
// 获取
|
request: function ()
|
{
|
// 发起请求
|
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, check: false };
|
vm.version.android.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, check: false };
|
vm.version.ios.push(jiedian);
|
}
|
}
|
},
|
});
|
},
|
},
|
|
// ---------------------------------------------------------------- 上传数据总结
|
info: {
|
id: "", // 当前推送的id
|
title: "", // 详细标题
|
content: "", // 详细内容字符串
|
pushTime: "", // 被推送用户id字符串 组
|
thingId:"",
|
scanNum: 0,
|
},
|
|
},
|
});
|
|
|
// 版本号获取
|
vm.version.request();
|
// url数据接收
|
doui.urlParam({
|
success: function (res)
|
{
|
if (res.type == "updata")
|
{
|
// 获取id
|
vm.info.id = res.id;
|
// 请求数据
|
tableGet();
|
}
|
}
|
});
|
document.body.style.display = "block";
|
}
|
});
|
|
|
// //iframe层-父子操作
|
function evaluateView() {
|
layui.use('layer', function(){
|
layer.open({
|
type: 2,
|
title: '活动列表',
|
shadeClose: true,
|
shade: 0.8,
|
area: ['80%', '80%'],
|
content: 'evaluate_list.html',
|
});
|
});
|
}
|
|
// ============================================================================== 接口请求
|
// 获取详细信息
|
function tableGet ()
|
{
|
doui.showLoading({ content: "请求数据" });
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + "/admin/new/api/v1/pushgoods/getPushInfo",
|
data: { id: vm.info.id, },
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else
|
{
|
var item = res.data.pushGoods;
|
vm.info.title = item.title; // 详细标题
|
vm.info.content = item.content; // 详细内容字符串
|
vm.info.pushTime = item.controlTime_str;
|
vm.info.thingId = item.otherId;
|
vm.version.result.android = item.listAndroid; // 推送版本
|
vm.version.result.ios = item.listIOS; // 推送版本
|
vm.info.scanNum = item.scanNum;
|
}
|
}
|
});
|
}
|
|
// 数据提交
|
function shuruUp ()
|
{
|
// 数据请求
|
doui.showLoading("处理中");
|
doui.request({
|
type: "jsonp",
|
url: gethttp() + '/admin/new/api/v1/pushgoods/saveInfo',
|
data: {
|
id: vm.info.id, // 要操作的推送的id
|
type: 2, // 活动
|
title: vm.info.title,
|
content: vm.info.content,
|
controlTime_str: vm.info.pushTime,
|
otherId: vm.info.thingId,
|
arrayAndroid: vm.version.result.android,
|
arrayIOS: vm.version.result.ios,
|
scanNum: vm.info.scanNum,
|
},
|
success: function (res)
|
{
|
doui.hideLoading();
|
if (res.code != 0) { doui.showToast({ content: res.msg }); }
|
else {
|
doui.showToast({ content: "处理成功" });
|
// 回到上一页
|
setTimeout(function(){ doui.pageToUrl({ type: "replace", url: "today_index.html" }); }, 400);
|
}
|
}
|
});
|
}
|
|
</script>
|