Merge branch 'feature/promote' of 47.111.118.107:/srv/git/platform into feature/promote

master
chenzhi 5 years ago
commit 484216ae65

@ -17,6 +17,8 @@ return array(
'DATA_CACHE_TYPE' => 'File', // 数据缓存类型 'DATA_CACHE_TYPE' => 'File', // 数据缓存类型
'URL_MODEL' => 3, //URL模式 'URL_MODEL' => 3, //URL模式
'GET_INFO_KEY' => 'wmkjtx_kj213',
/* 文件上传相关配置 */ /* 文件上传相关配置 */
'DOWNLOAD_UPLOAD' => array( 'DOWNLOAD_UPLOAD' => array(
'mimes' => '', //允许上传的文件MiMe类型 'mimes' => '', //允许上传的文件MiMe类型

@ -151,8 +151,12 @@ class AjaxController extends ThinkController{
} }
} }
public function getPromotersByLevel($level=1) public function getPromotersByLevel()
{ {
$level = I('level');
if (!$level) {
return $this->ajaxReturn(['code'=>1, 'msg'=>'获取成功', 'data'=>[]]);
}
$this->ajaxReturn(['code'=>1, 'msg'=>'获取成功', 'data'=>(new PromoteModel)->getPromotersByLevel($level)]); $this->ajaxReturn(['code'=>1, 'msg'=>'获取成功', 'data'=>(new PromoteModel)->getPromotersByLevel($level)]);
} }

@ -5,23 +5,55 @@
namespace Admin\Controller; namespace Admin\Controller;
use Admin\Model\SpendModel; use Admin\Model\SpendModel;
use Think\Think; use Think\Think;
use Org\RedisSDK\Redis;
class AutoController extends Think { class ConsoleController extends Think {
protected function _initialize() protected function _initialize()
{ {
C(api('Config/lists')); C(api('Config/lists'));
} }
public function modifyUserRole() public function modifyPromote()
{ {
M('user_play_info', 'tab_')->select(['game_id', 'server_id', 'role_id'])->group('game_id, server_id, role_id')->having('count(*)>1')->select(); $promotes = M('promote', 'tab_')->where(['parent_id' => 0])->select();
foreach ($promotes as $promote) {
$promote['chain'] = '/';
$promote['level'] = 1;
} M('promote', 'tab_')->where(['id' => $promote['id']])->save(['chain' => '/', 'level' => 1]);
public function modifyRecharge()
{
$subPromote = $promote;
unset($subPromote['id']);
$subPromote['parent_id'] = $promote['id'];
$subPromote['parent_name'] = $promote['account'];
$subPromote['chain'] = $promote['chain'] . $promote['id'] . '/';
$subPromote['level'] = $promote['level'] + 1;
$subPromote['account'] = 'second_' . $promote['account'];
$subPromote['nickname'] = '二级_' . $promote['nickname'];
$subPromote['mobile_phone'] = '';
$subPromote['email'] = '';
$subPromote['real_name'] = '';
$subPromote['money'] = 0;
$subPromote['total_money'] = 0;
$subPromote['balance_coin'] = 0;
$subPromote['create_time'] = time();
$subPromote['last_login_time'] = 0;
$subPromote['idcard'] = '';
M('promote', 'tab_')->add($subPromote);
$subId = M()->getLastInsID();
$subChain = $subPromote['chain'] . $subId . '/';
M('promote', 'tab_')->where(['parent_id' => $promote['id'], 'id' => ['neq', $subId]])->save([
'parent_id' => $subId,
'parent_name' => $subPromote['account'],
'chain' => $subChain,
'level' => 3,
]);
// echo M()->getLastSql() . "\n";
M('promote', 'tab_')->where(['grand_id' => $promote['id']])->save([
'chain' => ['exp', 'concat("' . $subChain. '",parent_id,"/")'],
'level' => 4,
]);
// echo M()->getLastSql() . "\n";
}
} }
} }

@ -68,6 +68,12 @@ class MemberController extends ThinkController
$maps['tab_user.account'] = ['like',"%".I('account')."%"]; $maps['tab_user.account'] = ['like',"%".I('account')."%"];
unset($_REQUEST['account']); unset($_REQUEST['account']);
} }
if (isset($_REQUEST['device_number'])) {
empty($hav) || $hav .= ' AND ';
$hav .= "tab_user.device_number = '{$_REQUEST['device_number']}'";
$maps['tab_user.device_number'] = $_REQUEST['device_number'];
unset($_REQUEST['device_number']);
}
if (isset($_REQUEST['age_status'])) { if (isset($_REQUEST['age_status'])) {
empty($hav) || $hav .= ' AND '; empty($hav) || $hav .= ' AND ';
$hav .= 'tab_user.age_status =' . I('age_status'); $hav .= 'tab_user.age_status =' . I('age_status');
@ -1151,7 +1157,7 @@ class MemberController extends ThinkController
M('device_bans', 'tab_')->add(['type'=>$type, 'tag'=>$tag, 'create_time'=>time(), 'operator_id'=>is_login()]); M('device_bans', 'tab_')->add(['type'=>$type, 'tag'=>$tag, 'create_time'=>time(), 'operator_id'=>is_login()]);
} }
return $this->success("新增成功"); return $this->success("新增成功", U('Member/device_bans_list'));
} else { } else {
M('device_bans', 'tab_')->where(['id'=>$id])->delete(); M('device_bans', 'tab_')->where(['id'=>$id])->delete();
return $this->success("解除成功"); return $this->success("解除成功");

@ -1102,6 +1102,22 @@ class UserModel extends Model{
$data['fgame_id']=$game_id; $data['fgame_id']=$game_id;
$data['fgame_name']=$game_name; $data['fgame_name']=$game_name;
$model->save($data); $model->save($data);
$device_type = M('User','tab_')->where(['id' => $user['id']])->getField('device_type');
if(empty($device_type)){
$gameServer = substr($game_name, -10, 9);
if($gameServer == '安卓版'){
$arr['device_type'] = 'Android';
} elseif($gameServer == '苹果版') {
$arr['device_type'] = 'IOS';
}
$arr['time'] = time();
$arr['account'] = $account;
ksort($arr);
reset($arr);
$sign = md5(http_build_query($arr) . C('GET_INFO_KEY'));
$arr['sign'] = $sign;
$reData = curl_post('http://oa.76ba.com/api/wanmeng/deviceTypeUpdate',$arr);
}
} }
return $data["token"]; return $data["token"];
} }

@ -100,7 +100,7 @@
<td>{:get_admin_nickname($data['operator_id'])}</td> <td>{:get_admin_nickname($data['operator_id'])}</td>
<td>{$data.create_time|date='Y-m-d H:i:s',###}</td> <td>{$data.create_time|date='Y-m-d H:i:s',###}</td>
<td> <td>
<a class="confirm ajax-post" href="{:U('Member/save_device_bans',array('id'=>$data['id']))}">解除</a> <a class="ajax-get" href="{:U('Member/save_device_bans',array('id'=>$data['id']))}">解除 </a>
</td> </td>
</tr> </tr>
</volist> </volist>

@ -307,7 +307,7 @@
$("#role").click(function () { $("#role").click(function () {
layer.open({ layer.open({
type: 2, type: 2,
title: "【游戏付费记录】列表", title: "【游戏角色】列表",
shadeClose: true, shadeClose: true,
shade: 0.8, shade: 0.8,
area: ['70%', '80%'], area: ['70%', '80%'],

@ -150,6 +150,9 @@
<option value="UC" <?php if ($_POST['promote_id'] == 'UC'):?>selected<?php endif;?>>UC用户</option> <option value="UC" <?php if ($_POST['promote_id'] == 'UC'):?>selected<?php endif;?>>UC用户</option>
</select> </select>
</div> </div>
<div class="input-list">
<input type="text" name="device_number" class="" placeholder="设备号" value="{:I('device_number')}"/>&nbsp;
</div>
<input type="hidden" name="" value="" class="sortBy"> <input type="hidden" name="" value="" class="sortBy">
<input type="hidden" name="type" value="{:I('type')}" class="sortBy"> <input type="hidden" name="type" value="{:I('type')}" class="sortBy">
<input type="hidden" name="balance_status" value="" id="balance_status"> <input type="hidden" name="balance_status" value="" id="balance_status">

@ -376,6 +376,11 @@ function details(id){
}, },
// dnd: false, // dnd: false,
paste: document.body, paste: document.body,
accept: {
title: '文件',
extensions: 'png,gif,jpg,jpeg,bmp,txt,doc*,xlsx,asp,pdf',
mimeTypes: '.png,.gif,.jpg,.jpeg,.bmp,.txt,.doc*,.xlsx,.asp,.pdf',
},
// 不压缩image, 默认如果是jpeg文件上传前会压缩一把再上传 // 不压缩image, 默认如果是jpeg文件上传前会压缩一把再上传
resize: false, resize: false,
disableGlobalDnd: true, disableGlobalDnd: true,

@ -180,6 +180,11 @@
</block> </block>
<block name="script"> <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> <script>
<volist name=":I('get.')" id="vo"> <volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}"); Think.setValue('{$key}',"{$vo}");
@ -189,8 +194,29 @@
//导航高亮 //导航高亮
highlight_subnav('{:U('testResource/index')}'); highlight_subnav('{:U('testResource/index')}');
$(function(){ $(function(){
$('#time-start').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true,endDate:new Date(),
});
$('#time-end').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true,endDate:new Date(),
});
//搜索功能 //搜索功能
$("#search").click(function(){ $("#search").click(function(){
var starttime = $.trim($('#time-start').val());
var endtime = $.trim($('#time-end').val());
if (starttime && endtime && starttime > endtime) {layer.msg('开始时间必须小于等于结束时间');return false;}
var url = $(this).attr('url'); var url = $(this).attr('url');
var query = $('.jssearch').find('input').serialize(); var query = $('.jssearch').find('input').serialize();
query += "&"+$('.jssearch').find('select').serialize(); query += "&"+$('.jssearch').find('select').serialize();

@ -199,6 +199,11 @@
</block> </block>
<block name="script"> <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> <script>
<volist name=":I('get.')" id="vo"> <volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}"); Think.setValue('{$key}',"{$vo}");
@ -207,7 +212,28 @@
<script type="text/javascript"> <script type="text/javascript">
//导航高亮 //导航高亮
highlight_subnav('{:U('testResource/lists')}'); highlight_subnav('{:U('testResource/lists')}');
$('#time-start').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true,endDate:new Date(),
});
$('#time-end').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView:2,
autoclose:true,endDate:new Date(),
});
$(function(){ $(function(){
var starttime = $.trim($('#time-start').val());
var endtime = $.trim($('#time-end').val());
if (starttime && endtime && starttime > endtime) {layer.msg('开始时间必须小于等于结束时间');return false;}
//搜索功能 //搜索功能
$("#search").click(function(){ $("#search").click(function(){
var url = $(this).attr('url'); var url = $(this).attr('url');

@ -162,7 +162,6 @@ class HomeController extends Controller
$isIOS = Request::isIOS(); $isIOS = Request::isIOS();
$isAndroid = Request::isAndroid(); $isAndroid = Request::isAndroid();
$isIOS13 = Request::isIOS13(); $isIOS13 = Request::isIOS13();
$columns = [ $columns = [
'id', 'id',
'sdk_version', 'sdk_version',

@ -124,7 +124,7 @@
<else/> <else/>
{$withdraw.sum_money} {$withdraw.sum_money}
</if> </if>
<span style="color: red;">(实际提现金额=提现金额+奖惩金额)</span> <span style="color: red;">(实际提现金额=收益金额+奖惩金额)</span>
</span> </span>
</div> </div>
</div> </div>

@ -55,7 +55,7 @@
return return
} else { } else {
layer.confirm('请先到官网注册', {title: '提示'}, function () { layer.confirm('请先到官网注册', {title: '提示'}, function () {
location.href = "/mobile.php?s=/User/login/pid/" + "{:I('get.pid')}" + "/gid/" + "{:I('get.gid')}" + ".html" location.href = "/mobile.php?s=/User/login/pid/" + "{$apply.promote_id}" + "/gid/" + "{$apply.game_id}" + ".html"
}) })
return return
} }

@ -355,9 +355,14 @@ CREATE TABLE `tab_device_bans` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-- 2019-11-07 elf 推广员三级变四级
ALTER TABLE `tab_promote` ADD COLUMN `level` tinyint(1) NOT NULL DEFAULT 0 COMMENT '推广员级别' after parent_name;
ALTER TABLE `tab_promote` ADD COLUMN `chain` varchar(30) NOT NULL DEFAULT '' COMMENT '推广员链路' after level;
-- 2019-11-07 elf 迁移任务 -- 2019-11-07 elf 迁移任务
ALTER TABLE `sys_shift_task` ADD COLUMN `shift_ids` varchar(255) NOT NULL DEFAULT '' COMMENT '迁移ID'; ALTER TABLE `sys_shift_task` ADD COLUMN `shift_ids` varchar(255) NOT NULL DEFAULT '' COMMENT '迁移ID';
ALTER TABLE `sys_shift_task` ADD COLUMN `remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注'; ALTER TABLE `sys_shift_task` ADD COLUMN `remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注';
-- 2019-11-07 cxj -- 2019-11-07 cxj
ALTER TABLE `platform_query`.`tab_withdraw` ADD COLUMN `transfer_proof` int(11) NOT NULL DEFAULT 0 COMMENT '汇款证明' AFTER `settlement_end_time`; ALTER TABLE `platform_query`.`tab_withdraw` ADD COLUMN `transfer_proof` int(11) NOT NULL DEFAULT 0 COMMENT '汇款证明' AFTER `settlement_end_time`;
Loading…
Cancel
Save