bug修改

This commit is contained in:
2026-01-17 15:54:51 +08:00
parent 761fc6e86f
commit 3a120b55cb
4 changed files with 104 additions and 125 deletions

View File

@@ -372,6 +372,8 @@ class BlindBox extends adminApi
} }
$gift_id = input('gift_id', ''); $gift_id = input('gift_id', '');
$description = input('description', ''); $description = input('description', '');
$status = input('status', 1);
$introd =$_POST['introd']??""; $introd =$_POST['introd']??"";
if(empty($gift_id)){ if(empty($gift_id)){
return V(0,"请配置礼物"); return V(0,"请配置礼物");
@@ -386,7 +388,10 @@ class BlindBox extends adminApi
'introd' => $introd, 'introd' => $introd,
]; ];
$ext = json_encode($ext); $ext = json_encode($ext);
$res = db::name('vs_gift_bag')->where(['id'=>$gift_bag_id])->update(['ext'=>$ext]); $res = db::name('vs_gift_bag')->where(['id'=>$gift_bag_id])->update([
'ext'=>$ext,
'status' => $status,
]);
if($res){ if($res){
return V(1,"成功"); return V(1,"成功");
}else{ }else{
@@ -406,6 +411,7 @@ class BlindBox extends adminApi
'gift_id' => $ext_data['gift_id'], 'gift_id' => $ext_data['gift_id'],
'description' => $ext_data['description'], 'description' => $ext_data['description'],
'introd' => stripcslashes($ext_data['introd']), 'introd' => stripcslashes($ext_data['introd']),
'status' => $gift_bag['status'],
]; ];
if($gift_bag){ if($gift_bag){
return V(1,"成功",$ext); return V(1,"成功",$ext);

View File

@@ -725,94 +725,64 @@ class Room extends adminApi
$lastDay = date('Y-m-t 23:59:59'); $lastDay = date('Y-m-t 23:59:59');
$begin_time_table = empty($stime) ? $firstDay : $stime; $begin_time_table = empty($stime) ? $firstDay : $stime;
$end_time_table = empty($etime) ? $lastDay : $etime; $end_time_table = empty($etime) ? $lastDay : $etime;
if($room_id == ''){ if($room_id == ''){
return V(0,"参数错误"); return V(0,"参数错误");
} }
// if($type == 1){
// $begin_time = 1748676768;//2025-06-00 15:32:48 $params['from_id'] = $room_id;
// $end_time = time(); $ext_params['start_time'] = strtotime($begin_time_table);
// $where['a.createtime'] = ['between', [$begin_time, $end_time]]; $ext_params['end_time'] = strtotime($end_time_table);
// }elseif ($type == 2){ $params['page'] = $page;
// //日流水 $params['limit'] = $page_limit;
// $begin_time = strtotime(date('Y-m-d 00:00:00',time())); $res = model('api/GiveGiftBases')->getGiftRecords($params,$ext_params);
// $end_time = time(); $list = $res['data'];
// $where['a.createtime'] = ['between', [$begin_time, $end_time]]; $count = $res['total'];
// } $list_data = [];
// elseif ($type == 3){ foreach ($list as &$value) {
// //周流水 $value['time'] = date('Y-m-d', $value['createtime']);
// //本周一 $value['sender_nickname'] = db::name('user')->where('id', $value['user_id'])->value('nickname');
// $begin_time = strtotime(date('Y-m-d 00:00:00', strtotime('this week'))); $value['sender_avatar'] = db::name('user')->where('id', $value['user_id'])->value('avatar');
// $end_time = time(); $value['receive_nickname'] = db::name('user')->where('id', $value['gift_user'])->value('nickname');
// $where['a.createtime'] = ['between', [$begin_time, $end_time]]; $value['receive_avatar'] = db::name('user')->where('id', $value['gift_user'])->value('avatar');
// } $value['gift_name'] = db::name('vs_gift')->where('gid', $value['gift_id'])->value('gift_name');
// 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();
$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];
} }
if($list){
foreach ($list as &$v){
$v['createtime'] = date('Y-m-d H:i:s',$v['createtime']);
$v['content'] = $v['sender_nickname'].' 给 '.$v['receive_nickname'].' 送了 '.$v['gift_name'].' x '.$v['number'];
// 来源1聊天送礼物 2房间语聊送礼 3直播送礼 4动态打赏
$v['from_str'] = model('adminapi/Gift')->GiveGiftFromStr[$v['from']];
}
}
$where =[];
$where['createtime'] = ['between', [strtotime($begin_time_table), strtotime($end_time_table)]];
$all_total_price = 0;
$tables = GiftTableManager::getTablesByTimeRange( $tables = GiftTableManager::getTablesByTimeRange(
strtotime($begin_time_table), strtotime($begin_time_table),
strtotime($end_time_table) strtotime($end_time_table)
); );
if(empty($tables)){ if($tables){
$tables[0] = "fa_vs_give_gift"; foreach ($tables as $table_name){
} //表前缀
$table_name = substr($tables[0], 3);//截取可查询的表名 $table_prefix = config('database.prefix');
$count = db::name($table_name)->alias('a') $table_name = str_replace($table_prefix, '', $table_name);
->field('a.id') $total_price = db::name($table_name)
->join('user b', 'a.user_id = b.id', 'left') ->where('from',2)
->join('user c', 'a.gift_user = c.id', 'left') ->where('from_id',$room_id)
->join('vs_gift d', 'a.gift_id = d.gid', 'left') ->where($where)->sum('total_price');
->where('a.from',2) $all_total_price += $total_price;
->where('a.from_id',$room_id)
->where($where)
->count();
$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')
->join('user b', 'a.user_id = b.id', 'left')
->join('user c', 'a.gift_user = c.id', 'left')
->join('vs_gift d', 'a.gift_id = d.gid', 'left')
->where('a.from',2)
->where('a.from_id',$room_id)
->where($where)
->order('a.id desc')
->page($page, $page_limit)
->select();
if($list){
foreach ($list as &$v){
$v['createtime'] = date('Y-m-d H:i:s',$v['createtime']);
$v['content'] = $v['nickname'].' 给 '.$v['gift_nickname'].' 送了 '.$v['gift_name'].' x '.$v['number'];
// 来源1聊天送礼物 2房间语聊送礼 3直播送礼 4动态打赏
$v['from_str'] = model('Gift')->GiveGiftFromStr[$v['from']];
} }
} }
//幸运流水总计 //幸运流水总计
$total_lucky_coin = db::name('vs_room_luck_value')->alias('a')->where('room_id',$room_id)->where($where)->sum('luck_value'); $total_lucky_coin = db::name('vs_room_luck_value')->where('room_id',$room_id)->where($where)->sum('luck_value');
$return_data = [ $return_data = [
'page' =>$page, 'page' =>$page,
'page_limit' => $page_limit, 'page_limit' => $page_limit,
'count' => $count, 'count' => $count,
'lists' => $list, 'lists' => $list,
'total' =>[ 'total' =>[
'total_price' => db::name($table_name)->alias('a') 'total_price' => $all_total_price,
->join('user b', 'a.user_id = b.id', 'left')
->where('a.from',2)
->where('a.from_id',$room_id)
->where($where)->sum('total_price'),
'total_lucky_coin' => $total_lucky_coin, 'total_lucky_coin' => $total_lucky_coin,
] ]
]; ];

View File

@@ -592,17 +592,18 @@ class UserData extends Model
public function bind_xinxi($user_id,$type,$alipay_account,$bank_card_number,$bank_user_name,$bank_card,$open_bank) public function bind_xinxi($user_id,$type,$alipay_account,$bank_card_number,$bank_user_name,$bank_card,$open_bank)
{ {
//查询是否实名认证 //查询是否实名认证
$is_real = model('UserData')->real_name_info($user_id); $mobile = db::name('user')->where(['id' => $user_id])->value('mobile');
if($is_real['code']==0){ $is_real = db::name('user_auth')->where('mobile' , $mobile)->field('real_name,card_id,is_real,mobile')->find();
if(empty($is_real)){
return ['code' => 0, 'msg' => '请先实名认证','data' => null]; return ['code' => 0, 'msg' => '请先实名认证','data' => null];
}else{ }else {
if($is_real['data']['is_real'] !=1){ if ($is_real['is_real'] != 1) {
return ['code' => 0, 'msg' => '请先实名认证','data' => null]; return ['code' => 0, 'msg' => '请先实名认证', 'data' => null];
} }
} }
if($type == 2){ if($type == 2){
$data = [ $data = [
'alipay_name' => $is_real['data']['real_name'],// 姓名 'alipay_name' => $is_real['real_name'],// 姓名
'alipay_account' => $alipay_account,// 支付宝账号 'alipay_account' => $alipay_account,// 支付宝账号
]; ];
$reslut = db::name('user_data')->where('user_id',$user_id)->update($data); $reslut = db::name('user_data')->where('user_id',$user_id)->update($data);
@@ -626,7 +627,7 @@ class UserData extends Model
} }
$data = [ $data = [
'bank_card_number' => $bank_card_number, 'bank_card_number' => $bank_card_number,
'bank_user_name' => $bank_user_name ? $bank_user_name : $is_real['data']['real_name'], 'bank_user_name' => $bank_user_name ? $bank_user_name : $is_real['real_name'],
'bank_card' => $bank_card, 'bank_card' => $bank_card,
'open_bank' => $open_bank, 'open_bank' => $open_bank,
]; ];

View File

@@ -3,6 +3,7 @@
namespace app\guildadmin\controller; namespace app\guildadmin\controller;
use app\admin\command\Menu; use app\admin\command\Menu;
use app\common\library\GiftTableManager;
use app\guildadmin\model\AuthGroup; use app\guildadmin\model\AuthGroup;
use app\guildadmin\model\AuthGroupAccess; use app\guildadmin\model\AuthGroupAccess;
use app\guildadmin\model\AuthRule; use app\guildadmin\model\AuthRule;
@@ -323,75 +324,76 @@ class Room extends GuildAdmin
//房间流水 //房间流水
public function room_flow() public function room_flow()
{ {
$guild_id = $this->guildId ?? 0;
$room_id = input('room_id', ''); $room_id = input('room_id', '');
$page = input('page', 1); $page = input('page', 1);
$page_limit = input('page_limit', 10); $page_limit = input('page_limit', 10);
$type = input('type', 1);//1:全部流水 2:日流水 3:周流水 4:月流水 $type = input('type', 1);//1:全部流水 2:日流水 3:周流水 4:月流水
$stime = input('stime', '');
$etime = input('etime', '');
if($room_id == ''){ if($room_id == ''){
return V(0,"参数错误"); return V(0,"参数错误");
} }
if($type == 1){ $begin_time = $stime ? strtotime($stime) : "";
$begin_time = 1748676768;//2025-06-00 15:32:48 $end_time = $etime ? strtotime($etime) : "";
$end_time = time(); if($guild_id){
$where['a.createtime'] = ['between', [$begin_time, $end_time]]; $guild_user_data = db::name('vs_guild_user')->where('guild_id', $guild_id)->where(['apply_time'=>['>',0],'status'=>1,'room_id'=>$room_id])->field('room_id,apply_time,quit_time')->find();
}elseif ($type == 2){ if($guild_user_data){
//日流水 if($guild_user_data['apply_time'] && $begin_time < $guild_user_data['apply_time']){
$begin_time = strtotime(date('Y-m-d 00:00:00',time())); $begin_time = $guild_user_data['apply_time'];
$end_time = time(); }
$where['a.createtime'] = ['between', [$begin_time, $end_time]]; if($guild_user_data['quit_time'] && ($end_time > $guild_user_data['quit_time'])){
$end_time = $guild_user_data['quit_time'];
}
}
} }
elseif ($type == 3){ $params['from_id'] = $room_id;
//周流水 $ext_params['start_time'] = $begin_time;
//本周一 $ext_params['end_time'] = $end_time;
$begin_time = strtotime(date('Y-m-d 00:00:00', strtotime('this week'))); $params['page'] = $page;
$end_time = time(); $params['limit'] = $page_limit;
$where['a.createtime'] = ['between', [$begin_time, $end_time]]; $res = model('api/GiveGiftBases')->getGiftRecords($params,$ext_params);
$list = $res['data'];
$count = $res['total'];
$list_data = [];
foreach ($list as &$value) {
$value['time'] = date('Y-m-d', $value['createtime']);
$value['sender_nickname'] = db::name('user')->where('id', $value['user_id'])->value('nickname');
$value['sender_avatar'] = db::name('user')->where('id', $value['user_id'])->value('avatar');
$value['receive_nickname'] = db::name('user')->where('id', $value['gift_user'])->value('nickname');
$value['receive_avatar'] = db::name('user')->where('id', $value['gift_user'])->value('avatar');
$value['gift_name'] = db::name('vs_gift')->where('gid', $value['gift_id'])->value('gift_name');
} }
elseif ($type == 4){
$begin_time = strtotime(date('Y-m-01'));
$end_time = time();
$where['a.createtime'] = ['between', [$begin_time, $end_time]];
}
$count = db::name('vs_give_gift')->alias('a')
->field('a.id')
->join('user b', 'a.user_id = b.id', 'left')
->join('user c', 'a.gift_user = c.id', 'left')
->join('vs_gift d', 'a.gift_id = d.gid', 'left')
->where('a.from',2)
->where('a.from_id',$room_id)
->where($where)
->count();
$list = db::name('vs_give_gift')->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')
->join('user b', 'a.user_id = b.id', 'left')
->join('user c', 'a.gift_user = c.id', 'left')
->join('vs_gift d', 'a.gift_id = d.gid', 'left')
->where('a.from',2)
->where('a.from_id',$room_id)
->where($where)
->order('a.id desc')
->page($page, $page_limit)
->select();
if($list){ if($list){
foreach ($list as &$v){ foreach ($list as &$v){
$v['createtime'] = date('Y-m-d H:i:s',$v['createtime']); $v['createtime'] = date('Y-m-d H:i:s',$v['createtime']);
$v['content'] = $v['nickname'].' 给 '.$v['gift_nickname'].' 送了 '.$v['gift_name'].' x '.$v['number']; $v['content'] = $v['sender_nickname'].' 给 '.$v['receive_nickname'].' 送了 '.$v['gift_name'].' x '.$v['number'];
// 来源1聊天送礼物 2房间语聊送礼 3直播送礼 4动态打赏 // 来源1聊天送礼物 2房间语聊送礼 3直播送礼 4动态打赏
$v['from_str'] = model('adminapi/Gift')->GiveGiftFromStr[$v['from']]; $v['from_str'] = model('adminapi/Gift')->GiveGiftFromStr[$v['from']];
} }
} }
$where =[];
$where_luck = [];
$where['room_id'] = $room_id;
if($guild_id){
$where['guild_id'] = $guild_id;
}
if($begin_time && $end_time){
$where['createtime'] = ['between', [$begin_time, $end_time]];
$where_luck['createtime'] = ['between', [$begin_time, $end_time]];
}
$gift_total_price = db::name('vs_guild_flow')->where($where)->sum('flow_price');
$total_lucky_coin = db::name('vs_room_luck_value')->where('room_id',$room_id)->where($where_luck)->sum('luck_value');
$return_data = [ $return_data = [
'page' =>$page, 'page' =>$page,
'page_limit' => $page_limit, 'page_limit' => $page_limit,
'count' => $count, 'count' => $count,
'lists' => $list, 'lists' => $list,
'total' =>[ 'total' =>[
'total_price' => db::name('vs_give_gift')->alias('a') 'total_price' => $gift_total_price,
->join('user b', 'a.user_id = b.id', 'left') 'total_lucky_coin' => $total_lucky_coin
->where('a.from',2)
->where('a.from_id',$room_id)
->where($where)->sum('total_price')
] ]
]; ];
return V(1,"成功", $return_data); return V(1,"成功", $return_data);