解决冲突

master
ELF 5 years ago
commit b0bc4c0496

@ -863,5 +863,91 @@ class ArticleController extends AdminController {
} }
} }
public function pop_rules($row = 10, $p = 1)
{
$map = [];
$map['_string'] = " 1=1 ";
if (isset($_GET['time-start'])) {
$map['_string'] .= " and operate_time >= " . strtotime($_GET['time-start']);
}
if (isset($_GET['time-end'])) {
$map['_string'] .= " and operate_time < " . (strtotime($_GET['time-end']) + 86400);
}
if (isset($_GET['type'])) {
$map['type'] = $_GET['type'];
}
if (!empty($_GET['title'])) {
$map['title'] = ['like', "%{$_GET['title']}%"];
}
$list = M('document_pop_rules')->where($map)->page($p, $row)->select();
$count = M('document_pop_rules')->where($map)->count();
if (!empty($list)) {
$weekDes = ["一", "二", '三', '四', '五', '六', '日'];
$statusDes = ['1'=>'执行完成', '2'=>'下架', '3'=>'待执行'];
foreach ($list as &$item) {
switch ($item['type']) {
case '1':
$item['time_desc'] = date("Y-m-d", $item['pop_time']);
break;
case '2':
$item['time_desc'] = "每周".$weekDes[$item['pop_time']-1];
break;
}
}
}
$page = set_pagination($count, $row);
if ($page) {
$this->assign('_page', $page);
}
$this->assign('list_data', $list);
$this->display('pop_rules');
}
public function pop_rule_edit($id=0)
{
if (IS_POST) {
if (empty($_POST['title']) || empty($_POST['desc']) || !isset($_POST['sort']) || empty($_POST['content'])) {
return $this->error("请填写完整的内容");
}
if (!is_numeric($_POST['sort'])) {
return $this->error("权重值需为数字");
}
if (!empty($_POST['type']) && empty($_POST['pop_time'])) {
return $this->error("请选择弹窗时间");
}
if ($_POST['type'] == 1 ) {
$_POST['pop_time'] = strtotime($_POST['pop_time']);
}
if ($id) {
$pop_rules_model = M('document_pop_rules');//M('$this->$model_name','tab_');
$res = $pop_rules_model->where(['id'=>$id])->save($_POST);
return $res ? $this->success("更新成功") : $this->error("更新失败");
} else {
$pop_rules_model = M('document_pop_rules');//M('$this->$model_name','tab_');
$data = $_POST;
$data['operate_time'] = time();
$data['operater_id'] = is_login();
$data['status'] = 1;
$res = $pop_rules_model->add($data);
return $res ? $this->success("新增完成", U('Article/pop_rules')) : $this->error("新增失败");
}
} else {
if($id) {
if ($_GET['delete']) {
$pop_rules_model = M('document_pop_rules');//M('$this->$model_name','tab_');
$res = $pop_rules_model->where(['id'=>$id])->delete();
return $res ? $this->success("删除成功") : $this->error("删除失败");
}
$rule = M('document_pop_rules')->where(['id'=>$id])->find();
if (!$rule) {
return $this->error('记录不存在');
}
$rule['pop_time'] = $rule['type'] == 1 ? date("Y-m-d", $rule['pop_time']) : $rule['pop_time'];
$this->assign('rule', $rule);
}
}
$this->display('pop_rule_edit');
}
} }

@ -0,0 +1,98 @@
<extend name="Public/base" />
<!-- 管理员用户组新增和编辑页面 -->
<block name="body">
<form action="{:U('Article/pop_rule_edit')}" enctype="application/x-www-form-urlencoded" method="POST"
class="form-horizontal form_info_ml">
<div class="formtitle"><span>编辑平台规则</span></div>
<ul class="form_info ">
<input type="hidden" name="id" value="{$rule.id}" />
<li>
<label>标题</label>
<input name="title" type="text" class="" placeholder="标题" value="{$rule.title}" />
</li>
<li>
<label>描述</label>
<textarea name="desc" class="" placeholder="描述" >{$rule.desc}</textarea>
</li>
<li>
<label>排序</label>
<input name="sort" type="text" class="txt" placeholder="排序" value="{$rule.sort}" />
<span style="font-size: small;color: red;">*排序越小越靠前</span>
</li>
<li>
<label>类型</label>
<select id="type" name="type" class="select_gallery" onchange="checkPopTime(0);">
<option value="0" <?php if ($rule['type'] == 0):?>selected<?php endif;?>>不弹窗</option>
<option value="1" <?php if ($rule['type'] == 1):?>selected<?php endif;?>>单次弹窗</option>
<option value="2" <?php if ($rule['type'] == 2):?>selected<?php endif;?>>循环弹窗</option>
</select>
</li>
<li id="li-pop-time"></li>
<li>
<label>内容</label>
<span class="form_textarea">
<textarea name="content">{$rule.content}</textarea>
{:hook('adminArticleEdit', array('name'=>'content','value'=>$rule['content']))}
</span>
</li>
<li>
<label>&nbsp;</label><input type="submit" id="submit" value="确认保存" target-form="form-horizontal" class="form_btn ajax-post">
<input type="button" value="返 回" target-form="form-horizontal" class="form_btn ajax-post" onclick="javascript:void(window.history.go(-1))">
</li>
</ul>
</form>
<div class="common_settings">
<span class="plus_icon"><span><img src="__IMG__/zwmimages/icon_jia.png"></span></span>
<form class="addShortcutIcon">
<input type="hidden" name="title" value="{$m_title}">
<input type="hidden" name="url" value="AuthManager/index">
</form>
<a class="ajax-post add-butn <notempty name='commonset'>addSIsetted</notempty>" href="javascript:;" target-form="addShortcutIcon" url="{:U('Think/addShortcutIcon')}"><img src="__IMG__/zwmimages/icon_jia.png"><span><notempty name='commonset'>已添加<else />添加至常用设置</notempty></span></a>
</div>
</block>
<block name="script">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '
<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">
';
</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"
charset="UTF-8"></script>
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script type="text/javascript">
</script>
<script type="text/javascript">
highlight_subnav('{:U('Article/pop_rules')}');
function checkPopTime(first)
{
$("#li-pop-time").html("");
$('#pop_time').val('');
var type_val = $("#type").val();
if (type_val == 0) {
//$('#li-pop-time').hide();
} else if (type_val == 1) {
if (first || '{$rule["type"]}' == 1) {
$("#li-pop-time").html('<label>弹窗时间</label><input type="text" id="pop_time" readonly name="pop_time" class="" value="{$rule.pop_time}" placeholder="弹窗时间" />');
} else {
$("#li-pop-time").html('<label>弹窗时间</label><input type="text" id="pop_time" readonly name="pop_time" class="" value="" placeholder="弹窗时间" />');
}
$('#pop_time').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true
});
} else if (type_val == 2) {
//$('#li-pop-time').show();
$("#li-pop-time").html('<label>弹窗时间</label><select id="pop_time" name="pop_time" class="select_gallery"><option value="1" <?php if ($rule["pop_time"] == 1):?>selected<?php endif;?>>周一</option><option value="2" <?php if ($rule["pop_time"] == 2):?>selected<?php endif;?> >周二</option><option value="3" <?php if ($rule["pop_time"] == 3):?>selected<?php endif;?> >周三</option><option value="4" <?php if ($rule["pop_time"] == 4):?>selected<?php endif;?> >周四</option><option value="5" <?php if ($rule["pop_time"] == 5):?>selected<?php endif;?> >周五</option><option value="6" <?php if ($rule["pop_time"] == 6):?>selected<?php endif;?> >周六</option><option value="7" <?php if ($rule["pop_time"] == 7):?>selected<?php endif;?> >周日</option></select>');
}
}
checkPopTime(1);
</script>
</block>

@ -0,0 +1,238 @@
<extend name="Public/base"/>
<block name="body">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css"/>
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<style>
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
</style>
<!-- 标题栏 -->
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">平台规则</h3>
<p class="description_text">说明:此处显示平台规则记录</p>
</div>
<div class="cf top_nav_list">
<!-- <div class="fl button_list">
<a class="confirm ajax-post" id="dtnn" target-form="ids" url="{:U('Member/delprovide')}"><span class="button_icon button_icon2 "></span>批量删除</a>
</div> -->
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list">
<div class="input-list search-title-box">
<label>搜索:</label>
</div>
<div class="input-list" >
<input type="text" id="time-start" name="time-start" class="" value="{:I('time-start')}" placeholder="创建开始时间" />
&nbsp;-&nbsp;
<input type="text" id="time-end" name="time-end" class="" value="{:I('time-end')}" placeholder="创建结束时间" />
</div>
<div class="input-list input-list-game search_label_rehab">
<select id="type" name="type" class="select_gallery">
<option value="">类型</option>
<option value="0" <?php echo I('type') == 3 ? "selected" : "" ?>>不弹窗</option>
<option value="1" <?php echo I('type') == 1 ? "selected" : "" ?> >单次弹窗</option>
<option value="2" <?php echo I('type') == 2 ? "selected" : "" ?> >循环弹窗</option>
</select>
</div>
<!-- <div class="input-list input-list-game search_label_rehab">
<select id="status" name="status" class="select_gallery">
<option value="">状态</option>
<option value="3" <?php echo I('status') == 3 ? "selected" : "" ?>>待执行</option>
<option value="1" <?php echo I('status') == 1 ? "selected" : "" ?> >执行完毕</option>
<option value="2" <?php echo I('status') == 2 ? "selected" : "" ?> >下架</option>
</select>
</div> -->
<div class="input-list">
<input type="text" name="title" class="" placeholder="文档标题" value="{:I('title')}">
</div>
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search"
url="{:U('Article/pop_rules','model='.$model['name'] . '&row=' . I('row'),false)}">
搜索
</a>
</div>
<div class="input-list">
<a class="sch-btn" href="{:U('Article/pop_rule_edit')}">
新增
</a>
</div>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<!-- <th class="">
<input class="check-all" type="checkbox">
</th> -->
<th>ID</th>
<th>标题</th>
<th>描述</th>
<th>时间</th>
<th>操作</th>
</tr>
</thead>
<!-- 列表 -->
<tbody>
<empty name="list_data">
<td colspan="8" class="text-center">aOh! 暂时还没有内容!</td>
<else/>
<volist name="list_data" id="data">
<tr>
<!-- <td><input class="ids" type="checkbox" value="{$data['id']}" name="ids"></td> -->
<td>{$data.id}</td>
<td><a href="{:U('Article/pop_rule_edit',array('id'=>$data['id']))}">{$data.title}</a></td>
<td >{$data.desc}</td>
<td>{$data.time_desc}</td>
<td>
<a href="{:U('Article/pop_rule_edit',array('id'=>$data['id']))}">编辑 </a>
<a class="confirm ajax-get" href="{:U('Article/pop_rule_edit',array('id'=>$data['id'], 'delete'=>1))}">删除 </a>
</td>
</tr>
</volist>
</empty>
</tbody>
</table>
</div>
</div>
<div class="page">
{$_page|default=''}
</div>
</block>
<block name="script">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '
<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">
';
</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"
charset="UTF-8"></script>
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script type="text/javascript">
</script>
<script type="text/javascript">
//导航高亮
highlight_subnav('{:U('Article/pop_rules')}');
$(function () {
<volist name = ":I('get.')" id = "vo" > Think.setValue('{$key}', "{$vo}");
</volist >
$(".select_gallery").select2();
//搜索功能
$("#search").click(function () {
var url = $(this).attr('url');
var query = $('.jssearch').find('input').serialize();
query += "&" + $('.jssearch').find('select').serialize();
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g, '');
query = query.replace(/^&/g, '');
if (url.indexOf('?') > 0) {
url += '&' + query;
} else {
url += '?' + query;
}
var start = $("#time-start").val();
var end = $("#time-end").val();
if (start !='' && end != ''){
if (Date.parse(start) > Date.parse(end)){
layer.msg('开始时间必须小于等于结束时间');
return false;
}
}
window.location.href = url;
});
//回车自动提交
$('.jssearch').find('input').keyup(function (event) {
if (event.keyCode === 13) {
$("#search").click();
}
});
$('#time-start').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
autoclose: true
});
$('#datetimepicker').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
autoclose: true,
pickerPosition: 'bottom-left'
})
$(".drop-down2").on('click', function (event) {
var navlist = $(this).find('.i_list_li');
if (navlist.hasClass('hidden')) {
navlist.removeClass('hidden');
$('#i_list_id').focus().val('');
} else {
navlist.addClass('hidden');
}
$(document).one("click", function () {
navlist.addClass('hidden');
});
event.stopPropagation();
});
var a = $('.i_list_li li a');
$('#i_list_id').on('keyup', function (event) {
var val = $.trim($(this).val()).toLowerCase();
$('#i_list_idh').val(val);
});
$("#i_list_li").find("a").each(function () {
$(this).click(function () {
var text = $.trim($(this).text()).toLowerCase();
$("#i_list_id").val(text);
$('#i_list_idh').val(text);
})
});
$('#time-start').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true
});
$('#time-end').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true
});
})
</script>
</block>

@ -26,6 +26,8 @@ use Home\Model\PromoteModel;
use Base\Service\PromoteService; use Base\Service\PromoteService;
use Base\Service\ApplyService; use Base\Service\ApplyService;
use Org\RedisSDK\Redis;
/** /**
* 前台首页控制器 * 前台首页控制器
* 主要获取首页聚合数据 * 主要获取首页聚合数据
@ -213,6 +215,32 @@ class PromoteController extends BaseController
$this->assign('todayAddSpendData', $todayAddSpendData); $this->assign('todayAddSpendData', $todayAddSpendData);
$this->assign('mounthAddSpendData', $mounthAddSpendData); $this->assign('mounthAddSpendData', $mounthAddSpendData);
// 规则弹窗事宜
$rules = M("document_pop_rules")
//->where("(type = 1 and pop_time = {$currentTime}) or (type = 2 and pop_time = {$week})")
->order("sort asc, id desc")
->limit('0, 5')
->select();
$this->assign("rules", $rules);
$this->assign("rules_count", count($rules));
$redis = new \Org\RedisSDK\Redis(['host'=>'127.0.0.1','port'=>6379],[]);
$cacheKey = "pop:rule:set";
if (!$redis->sIsMember($cacheKey, get_pid())) {
$currentTime = strtotime(date('Y-m-d'));
$weekArray = [7,1,2,3,4,5,6];
$week = $weekArray[date("w")];
$match_rules = M("document_pop_rules")
->field('id')
->where("(type = 1 and pop_time = {$currentTime}) or (type = 2 and pop_time = {$week})")
->order("sort asc, id desc")
->select();
} else {
$match_rules = [];
}
$this->assign("match_rules_id", $match_rules ? json_encode(array_column($match_rules, 'id')) : 'null');
$this->assign("user_count", $user_count); $this->assign("user_count", $user_count);
$this->assign("total_money", $total_money); $this->assign("total_money", $total_money);
@ -238,6 +266,43 @@ class PromoteController extends BaseController
$this->display(); $this->display();
} }
public function popRuleDetail($id=0, $p=1, $row=1, $force=false)
{
$result = M("document_pop_rules")->where("id in ({$id})")->page($p, $row)->select();
if (empty($result)) {
return $this->error("未找到数据", [], true);
}
$count = M("document_pop_rules")->where("id in ({$id})")->count();
if ($p + 1 <= $count) {
$this->assign("next_page",$p+1);
}
if ($p - 1 >= 0) {
$this->assign("preview_page",$p-1);
}
if ($p + 1 > $count) {
$this->assign("close_btn", true);
}
$this->assign("count", $count);
$this->assign("force", $force);
// return $this->success("获取数据成功", $result, true);
//$this->show("<h2 style='text-align: center;'>{$result['title']}</h2>".$result['content']);
$this->assign("rule",$result[0]);
$this->display('pop_rule_detail');
}
public function popRuleFinish()
{
$redis = new \Org\RedisSDK\Redis(['host'=>'127.0.0.1','port'=>6379],[]);
$cacheKey = "pop:rule:set";
if ($redis->exists($cacheKey)) {
$redis->sadd($cacheKey, get_pid());
} else {
$redis->sadd($cacheKey, get_pid());
$redis->exprieAt($cacheKey, strtotime(date('Y-m-d')) + 86400);
}
return $this->success("成功", [], true);
}
private function caculateSpend($pay_time, $condition, $create = [], $type = 0) private function caculateSpend($pay_time, $condition, $create = [], $type = 0)
{ {
$map['promote_id'] = array('egt', 0); $map['promote_id'] = array('egt', 0);
@ -543,7 +608,12 @@ class PromoteController extends BaseController
} }
$count = M("protect_log","tab_")->field($field)->count(); $count = M("protect_log","tab_")->field($field)->count();
}*/ else { }*/
else if ($type == 57) {
$data_list = M('document_pop_rules')->order("sort asc, id desc")->page($p, $row)->select();
$count = count(M('document_pop_rules')->count());
}
else {
$data_list = M("document", "sys_")->join("left join sys_document_article a on a.id=sys_document.id")->limit('0,50')->where("category_id=56 and status=1 and a.id is not null")->order("update_time desc")->page($page, $row)->select(); //游戏公告 $data_list = M("document", "sys_")->join("left join sys_document_article a on a.id=sys_document.id")->limit('0,50')->where("category_id=56 and status=1 and a.id is not null")->order("update_time desc")->page($page, $row)->select(); //游戏公告
$count = M("document", "sys_")->where("category_id=56 and status=1")->count(); $count = M("document", "sys_")->where("category_id=56 and status=1")->count();
} }
@ -563,7 +633,6 @@ class PromoteController extends BaseController
$gg_ReadDocument = M("document_read", "sys_")->where($gg_where)->count(); $gg_ReadDocument = M("document_read", "sys_")->where($gg_where)->count();
// var_dump($gg_ReadDocument);die(); // var_dump($gg_ReadDocument);die();
$zx_data = M("document", "sys_")->join("left join sys_document_article a on a.id=sys_document.id")->where("category_id=51 and status=1 and a.id is not null")->order("update_time desc")->select(); $zx_data = M("document", "sys_")->join("left join sys_document_article a on a.id=sys_document.id")->where("category_id=51 and status=1 and a.id is not null")->order("update_time desc")->select();
$zx_Count = count($zx_data); $zx_Count = count($zx_data);
$zx_data = implode(',', array_column($zx_data, 'id')); $zx_data = implode(',', array_column($zx_data, 'id'));

@ -72,6 +72,13 @@
</span> </span>
</if> </if>
</span> </span>
<span class="fxui-tab-tit"><a href="#;">平台规则</a>
<if condition="$rules_count gt 0">
<!-- <span style="width: 25px;height: 25px;float: left;position: relative;bottom:50px;left:125px;text-align: center;background: rgba(255, 0, 0, 1);border-radius:15px">
<a style="line-height: 25px;padding: 0px;color: #fff">{$rules_count}</a>
</span> -->
</if>
</span>
<div id="u271_ann" class="annotation"></div> <div id="u271_ann" class="annotation"></div>
<span class="more"><a href="{:U('msg_list')}">查看更多></a></span> <span class="more"><a href="{:U('msg_list')}">查看更多></a></span>
</div> </div>
@ -123,6 +130,18 @@
</volist> </volist>
</empty> </empty>
</div> </div>
<div class="fxui-tab-nav">
<empty name="rules">
暂无平台规则
<else/>
<volist name="rules" id="rule">
<p onclick='pop_rulus_content({$rule.id}, 0)'>
<span class="title"><a >{$rule.title}</a></span>
<span class="time">{$rule.operate_time|date="Y/m/d",###}</span>
</p>
</volist>
</empty>
</div>
</div> </div>
</li> </li>
</ul> </ul>
@ -186,6 +205,47 @@
<script type="text/javascript" src="__JS__/index/jquery.fxTab.js"></script> <script type="text/javascript" src="__JS__/index/jquery.fxTab.js"></script>
<script type="text/javascript" src="__JS__/20170831/select2.min.js"></script> <script type="text/javascript" src="__JS__/20170831/select2.min.js"></script>
<script> <script>
var pop_ids = {$match_rules_id};
function pop_rulus_content(id, force = false)
{
if (id instanceof Array) {
console.log(id)
var index = 0;
layer.open({
type: 2,
title: '平台规则',
area:['60%', '80%'],
closeBtn: 0,
shadeClose: false,
skin: 'yourclass',
content: "{:U('Promote/popRuleDetail')}&id="+id+"&force="+force
});
} else {
layer.open({
type: 2,
title: '平台规则',
area:['60%', '80%'],
closeBtn: 0,
shadeClose: false,
skin: 'yourclass',
//btn:['返回'],
content: "{:U('Promote/popRuleDetail')}&id="+id+"&force="+force,
end:function(){
return false;
}
});
}
}
if (pop_ids) {pop_rulus_content(pop_ids, true);}
function getCookie(name)
{
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}
$(function(){ $(function(){
$(".select_gallery").select2(); $(".select_gallery").select2();
$('.icon').each(function() { $('.icon').each(function() {

@ -41,6 +41,13 @@
</span> </span>
</if> </if>
</span> </span>
<span class="fxui-tab-tit <if condition="$type==57">curr</if>"><a href="{:U('msg_list')}&type=57">平台规则</a>
<if condition="$zx_count gt 0">
<!-- <span style="width: 25px;height: 25px;float: left;position: relative;bottom:50px;left:83px;text-align: center;background: rgba(255, 0, 0, 1)">
<a style="line-height: 25px;padding: 0px;color: #fff">{$zx_count}</a>
</span> -->
</if>
</span>
</div> </div>
<div class="fxui-tab-nav"> <div class="fxui-tab-nav">
<empty name="data_list"> <empty name="data_list">
@ -48,12 +55,14 @@
<else/> <else/>
<volist name="data_list" id="data"> <volist name="data_list" id="data">
<p> <p>
<if condition="$type neq 0"> <if condition="in_array($type, [50, 51, 56])">
<span class="title"><a href="index.php?s=/Home/Article/detail/id/{$data.id}.html">{$data.title}</a></span> <span class="title"><a href="index.php?s=/Home/Article/detail/id/{$data.id}.html">{$data.title}</a></span>
<elseif condition="$type == 57"/>
<a onclick="pop_rulus_content({$data.id}, 0)">{$data.title}</a>
<else/> <else/>
<span class="title"><a href="index.php?s=/Home/TestResource/protectLogList/id/{$zx.id}.html">{$data.title}</a></span> <span class="title"><a href="index.php?s=/Home/TestResource/protectLogList/id/{$zx.id}.html">{$data.title}</a></span>
</if>
<span class="time">{$data.update_time|date="Y/m/d",###}</span> <span class="time">{$data.update_time|date="Y/m/d",###}</span>
</if>
</p> </p>
</volist> </volist>
</empty> </empty>
@ -73,5 +82,35 @@
$(function () { $(function () {
setValue('row', '{:I("row",10)}'); setValue('row', '{:I("row",10)}');
}) })
function pop_rulus_content(id, force = false)
{
if (id instanceof Array) {
console.log(id)
var index = 0;
layer.open({
type: 2,
title: '平台规则',
area:['60%', '80%'],
closeBtn: 0,
shadeClose: false,
skin: 'yourclass',
content: "{:U('Promote/popRuleDetail')}&id="+id+"&force="+force
});
} else {
layer.open({
type: 2,
title: '平台规则',
area:['60%', '80%'],
closeBtn: 0,
shadeClose: false,
skin: 'yourclass',
//btn:['返回'],
content: "{:U('Promote/popRuleDetail')}&id="+id+"&force="+force,
end:function(){
return false;
}
});
}
}
</script> </script>
</block> </block>

@ -0,0 +1,129 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="UTF-8">
<title>充值查询列表|----软件管理平台</title>
<link href="http://admin.vlcms.com/Public/icon.ico" type="image/x-icon" rel="shortcut icon">
<link rel="stylesheet" type="text/css" href="__CSS__/base.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/common.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/module.css">
<link rel="stylesheet" type="text/css" href="__CSS__/style.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/default_color.css" media="all">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css"/>
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="__JS__/jquery.mousewheel.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
</head>
<style>
html {
min-width:100%;
}
body {
padding: 0px;
}
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
* {
margin: 0;
padding: 0;
}
footer {
background-color: white;
position:fixed;
bottom:0px;
width: 100%;
}
</style>
<body>
<div id="main" class="main" style="min-height: 342px;width: 96%;">
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
<h2 style="text-align: center;">{$rule.title}</h2>
<div>{$rule.content}</div>
</div>
</body>
<footer>
<div style="text-align: right;margin-right: 10px;">
<?php if ($preview_page):?>
<a href="{:U('Promote/popRuleDetail', ['id'=>$_GET['id'], 'p'=>$preview_page, 'force'=>$force ])}" class="submit btn" style="line-height: 15px"><i class="add_qudao"></i><span>上一页</span></a>
<?php endif;?>
<?php if ($next_page):?>
<a onclick="checkJump('{:U('Promote/popRuleDetail', ['id'=>$_GET['id'], 'p'=>$next_page, 'force'=>$force ])}')" class="submit btn" style="line-height: 15px"><i class="add_qudao"></i><span>下一页</span></a>
<?php endif;?>
<?php if ($close_btn):?>
<a onclick="<?php if ($force):?>checkClose();<?php else:?>parent.layer.closeAll();<?php endif;?>" class="submit btn" style="line-height: 15px"><i class="add_qudao"></i><span>关闭</span></a>
<?php endif;?>
</div>
</footer>
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '
<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">
';
</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"
charset="UTF-8"></script>
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script>
var isAble = false;
var force = '{$force}';
setTimeout(function (){
isAble = true;
}, 5000);
function checkClose()
{
if (isAble == false) {
layer.msg("请浏览5秒后再点击");
return false;
} else {
// 查看完成
$.ajax({
url:"{:U('Promote/popRuleFinish')}",
method : "POST",
success:function(){
parent.layer.closeAll();
}
});
return true;
}
}
function checkJump(url)
{
if (isAble == false) {
layer.msg("请浏览5秒后再点击");
return false;
} else {
window.location.href = url;
return true;
}
}
</script>
</html>

@ -1059,3 +1059,17 @@ CREATE TABLE `tab_promote_game_ratio_log` (
PRIMARY KEY (`id`), PRIMARY KEY (`id`),
KEY `promote_id` (`promote_id`,`game_id`,`status`) USING BTREE KEY `promote_id` (`promote_id`,`game_id`,`status`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin; ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
-- 平台规则
CREATE TABLE `sys_document_pop_rules` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '平台规则表',
`title` varchar(100) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
`desc` varchar(255) COLLATE utf8mb4_bin NOT NULL DEFAULT '' COMMENT '描述',
`content` text COLLATE utf8mb4_bin,
`sort` smallint(3) unsigned NOT NULL DEFAULT '0' COMMENT '权重',
`type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '类型 0不弹窗 1弹出单次 2循环弹出',
`pop_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '弹窗时间',
`operate_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '操作时间',
`operater_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '操作者ID',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

@ -611,6 +611,11 @@ class Redis
return $this->redis->sMembers($key); return $this->redis->sMembers($key);
} }
public function sIsMember($key, $v)
{
return $this->redis->sIsMember($key, $v);
}
/** /**
* 求2个集合的差集 * 求2个集合的差集
* @param unknown $key1 * @param unknown $key1

Loading…
Cancel
Save