优化:Give_Gift 表查询处理
This commit is contained in:
@@ -115,13 +115,19 @@ class Lottery extends adminApi
|
|||||||
->sum('amount') ?: 0;
|
->sum('amount') ?: 0;
|
||||||
//最近中奖用户
|
//最近中奖用户
|
||||||
$last_winner_user_id = db::name('bb_lottery_winner_record')->where(['status'=>1])->order('id desc')->find();
|
$last_winner_user_id = db::name('bb_lottery_winner_record')->where(['status'=>1])->order('id desc')->find();
|
||||||
|
if($last_winner_user_id){
|
||||||
$last_winner_user_info = db::name('user')->where(['id'=>$last_winner_user_id['uid']])->find();
|
$last_winner_user_info = db::name('user')->where(['id'=>$last_winner_user_id['uid']])->find();
|
||||||
|
$last_winner_user_text = "用户ID:".$last_winner_user_info['user_code']." 获得 ".$last_winner_user_id['prize_amount']." 金币 (".$last_winner_user_id['ratio']."%)";
|
||||||
|
}else{
|
||||||
|
$last_winner_user_text = "无";
|
||||||
|
}
|
||||||
|
|
||||||
//平台累计收入
|
//平台累计收入
|
||||||
$platform_total_income = db::name('bb_lottery_pool_flow')->where(['type'=>4])->sum('amount');
|
$platform_total_income = db::name('bb_lottery_pool_flow')->where(['type'=>4])->sum('amount');
|
||||||
$return_data=[
|
$return_data=[
|
||||||
'pool_progress' => $pool_progress_str,
|
'pool_progress' => $pool_progress_str,
|
||||||
'pool_amount_now' => ($bigAddGold)."金币 (".(($bigAddGold)/$bb_config['big_pool_threshold']['value'])."%)",
|
'pool_amount_now' => ($bigAddGold)."金币 (".(($bigAddGold)/$bb_config['big_pool_threshold']['value'])."%)",
|
||||||
'last_winner_user' => "用户ID:".$last_winner_user_info['user_code']." 获得 ".$last_winner_user_id['prize_amount']." 金币 (".$last_winner_user_id['ratio']."%)",
|
'last_winner_user' => $last_winner_user_text,
|
||||||
'platform_total_income' => $platform_total_income." 金币",
|
'platform_total_income' => $platform_total_income." 金币",
|
||||||
];
|
];
|
||||||
return V(1,"成功", $return_data);
|
return V(1,"成功", $return_data);
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ namespace app\adminapi\controller;
|
|||||||
|
|
||||||
use app\admin\model\AdminLog;
|
use app\admin\model\AdminLog;
|
||||||
use app\common\controller\adminApi;
|
use app\common\controller\adminApi;
|
||||||
|
use app\common\library\GiftTableManager;
|
||||||
use think\Cache;
|
use think\Cache;
|
||||||
use think\Config;
|
use think\Config;
|
||||||
use think\Db;
|
use think\Db;
|
||||||
@@ -719,45 +720,58 @@ class Room extends adminApi
|
|||||||
$type = input('type', 1);//1:全部流水 2:日流水 3:周流水 4:月流水
|
$type = input('type', 1);//1:全部流水 2:日流水 3:周流水 4:月流水
|
||||||
$stime = input('stime', '');
|
$stime = input('stime', '');
|
||||||
$etime = input('etime', '');
|
$etime = input('etime', '');
|
||||||
|
|
||||||
|
$firstDay = date('Y-m-01');
|
||||||
|
$lastDay = date('Y-m-t 23:59:59');
|
||||||
|
$begin_time_table = empty($stime) ? $firstDay : $stime;
|
||||||
|
$end_time_table = empty($etime) ? $lastDay : $etime;
|
||||||
|
|
||||||
if($room_id == ''){
|
if($room_id == ''){
|
||||||
return V(0,"参数错误");
|
return V(0,"参数错误");
|
||||||
}
|
}
|
||||||
if($type == 1){
|
// if($type == 1){
|
||||||
$begin_time = 1748676768;//2025-06-00 15:32:48
|
// $begin_time = 1748676768;//2025-06-00 15:32:48
|
||||||
$end_time = time();
|
// $end_time = time();
|
||||||
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
// $where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
||||||
}elseif ($type == 2){
|
// }elseif ($type == 2){
|
||||||
//日流水
|
// //日流水
|
||||||
$begin_time = strtotime(date('Y-m-d 00:00:00',time()));
|
// $begin_time = strtotime(date('Y-m-d 00:00:00',time()));
|
||||||
|
// $end_time = time();
|
||||||
|
// $where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
||||||
|
// }
|
||||||
|
// elseif ($type == 3){
|
||||||
|
// //周流水
|
||||||
|
// //本周一
|
||||||
|
// $begin_time = strtotime(date('Y-m-d 00:00:00', strtotime('this week')));
|
||||||
|
// $end_time = time();
|
||||||
|
// $where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
||||||
|
// }
|
||||||
|
// elseif ($type == 4){
|
||||||
|
// $begin_time = strtotime(date('Y-m-01'));
|
||||||
|
// $end_time = time();
|
||||||
|
// $where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
||||||
|
// }
|
||||||
|
if($begin_time_table != '' && $end_time_table != ''){
|
||||||
|
$begin_time = strtotime($begin_time_table);
|
||||||
|
$end_time = strtotime($end_time_table);
|
||||||
|
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
||||||
|
}elseif($begin_time_table != '' && $end_time_table == ''){
|
||||||
|
$begin_time = strtotime($begin_time_table);
|
||||||
$end_time = time();
|
$end_time = time();
|
||||||
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
||||||
|
}elseif($begin_time_table != '' && $end_time_table == ''){
|
||||||
|
$end_time = strtotime($end_time_table);
|
||||||
|
$where['a.createtime'] = ['<=', $end_time];
|
||||||
}
|
}
|
||||||
elseif ($type == 3){
|
$tables = GiftTableManager::getTablesByTimeRange(
|
||||||
//周流水
|
strtotime($begin_time_table),
|
||||||
//本周一
|
strtotime($end_time_table)
|
||||||
$begin_time = strtotime(date('Y-m-d 00:00:00', strtotime('this week')));
|
);
|
||||||
$end_time = time();
|
if(empty($tables)){
|
||||||
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
$tables[0] = "fa_vs_give_gift";
|
||||||
}
|
}
|
||||||
elseif ($type == 4){
|
$table_name = substr($tables[0], 3);//截取可查询的表名
|
||||||
$begin_time = strtotime(date('Y-m-01'));
|
$count = db::name($table_name)->alias('a')
|
||||||
$end_time = time();
|
|
||||||
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
|
||||||
}
|
|
||||||
if($stime != '' && $etime != ''){
|
|
||||||
$begin_time = strtotime($stime);
|
|
||||||
$end_time = strtotime($etime);
|
|
||||||
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
|
||||||
}elseif($stime != '' && $etime == ''){
|
|
||||||
$begin_time = strtotime($stime);
|
|
||||||
$end_time = time();
|
|
||||||
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
|
|
||||||
}elseif($etime != '' && $stime == ''){
|
|
||||||
$end_time = strtotime($etime);
|
|
||||||
$where['a.createtime'] = ['<=', $etime];
|
|
||||||
}
|
|
||||||
|
|
||||||
$count = db::name('vs_give_gift')->alias('a')
|
|
||||||
->field('a.id')
|
->field('a.id')
|
||||||
->join('user b', 'a.user_id = b.id', 'left')
|
->join('user b', 'a.user_id = b.id', 'left')
|
||||||
->join('user c', 'a.gift_user = c.id', 'left')
|
->join('user c', 'a.gift_user = c.id', 'left')
|
||||||
@@ -766,7 +780,7 @@ class Room extends adminApi
|
|||||||
->where('a.from_id',$room_id)
|
->where('a.from_id',$room_id)
|
||||||
->where($where)
|
->where($where)
|
||||||
->count();
|
->count();
|
||||||
$list = db::name('vs_give_gift')->alias('a')
|
$list = db::name($table_name)->alias('a')
|
||||||
->field('a.number,a.createtime,a.total_price,a.type,b.nickname,b.avatar,c.nickname as gift_nickname,c.avatar as gift_avatar,d.gift_name,a.from,a.from_id')
|
->field('a.number,a.createtime,a.total_price,a.type,b.nickname,b.avatar,c.nickname as gift_nickname,c.avatar as gift_avatar,d.gift_name,a.from,a.from_id')
|
||||||
->join('user b', 'a.user_id = b.id', 'left')
|
->join('user b', 'a.user_id = b.id', 'left')
|
||||||
->join('user c', 'a.gift_user = c.id', 'left')
|
->join('user c', 'a.gift_user = c.id', 'left')
|
||||||
@@ -794,7 +808,7 @@ class Room extends adminApi
|
|||||||
'count' => $count,
|
'count' => $count,
|
||||||
'lists' => $list,
|
'lists' => $list,
|
||||||
'total' =>[
|
'total' =>[
|
||||||
'total_price' => db::name('vs_give_gift')->alias('a')
|
'total_price' => db::name($table_name)->alias('a')
|
||||||
->join('user b', 'a.user_id = b.id', 'left')
|
->join('user b', 'a.user_id = b.id', 'left')
|
||||||
->where('a.from',2)
|
->where('a.from',2)
|
||||||
->where('a.from_id',$room_id)
|
->where('a.from_id',$room_id)
|
||||||
|
|||||||
Reference in New Issue
Block a user