更新直播送礼

This commit is contained in:
yaooo 2023-10-31 11:48:48 +08:00
parent 4aa75aaf3b
commit ac20efa18a
2 changed files with 35 additions and 8 deletions

View File

@ -97,26 +97,42 @@ class Zhibo extends BaseController
[$page, $limit] = $this->getPage();
$token = request()->header('x-token');
$params = $this->request->params(['type']);
if (empty($params['type'])) {
return app('json')->fail('类型不能为空');
}
$user = $this->request->userInfo();
$where = [];
$queryBuilder = Db::name('user_bill')->alias('ub')->leftJoin('user_zhibo_order uzo','uzo.order_id = ub.link_id')->leftJoin('user u','u.uid = uzo.uid');
if ($params['type'] == 1) {
// 送出的礼物
$where['ub.pm'] = 0;
$where['ub.type'] = 'zhibo_reward';
$where['ub.type'] = 'zhibo_reward_dec';
$where['uzo.uid'] = $user['uid'];
$queryBuilder = $queryBuilder->where($where);
} elseif ($params['type'] == 2){
// 收到的礼物
$where['ub.pm'] = 1;
$where['ub.type'] = 'zhibo_reward';
$where['ub.type'] = 'zhibo_reward_inc';
$where['uzo.master_id'] = $user['uid'];
$queryBuilder = $queryBuilder->where($where);
} else {
return app('json')->fail('类型错误');
$whereUser['ub.pm'] = 0;
$whereUser['ub.type'] = 'zhibo_reward_dec';
$whereUser['uzo.uid'] = $user['uid'];
$whereMaster['ub.pm'] = 1;
$whereMaster['ub.type'] = 'zhibo_reward_inc';
$whereMaster['uzo.master_id'] = $user['uid'];
$queryBuilder = $queryBuilder->where(function ($query) use($whereUser) {
$query->where($whereUser);
});
$queryBuilder = $queryBuilder->whereOr(function ($query) use($whereMaster) {
$query->where($whereMaster);
});
}
$count = Db::name('user_bill')->alias('ub')->leftJoin('user_zhibo_order uzo','uzo.order_id = ub.link_id')->where($where)->count();
$list = Db::name('user_bill')->alias('ub')->leftJoin('user_zhibo_order uzo','uzo.order_id = ub.link_id')->where($where)->limit(($page-1) * $limit, $limit)->field([
$count = $queryBuilder->fetchSql(false)->count();
$list = $queryBuilder->limit(($page-1) * $limit, $limit)->setOption('field',[])->field([
'uzo.uid',
'uzo.master_id',
'u.nickname',
'u.avatar',
'uzo.order_id',
'uzo.live_stream_id',
'uzo.live_name',
@ -127,6 +143,16 @@ class Zhibo extends BaseController
'ub.title',
'uzo.create_time'
])->select();
return app('json')->success(compact('count', 'list'));
}
//用户送礼收礼汇总
public function rewardAmount()
{
$liveStreamId = $this->request->param('live_stream_id', 0);
$gift_num = Db::name('user_zhibo_order')->where('live_stream_id', $liveStreamId)->sum('gift_num');
$gift_amount = Db::name('user_zhibo_order')->where('live_stream_id', $liveStreamId)->sum('amount');
return app('json')->success(compact('gift_num', 'gift_amount'));
}
}

View File

@ -80,6 +80,7 @@ Route::group('api/', function () {
Route::post('zhibo/reward', 'api.user.Zhibo/reward');
Route::get('zhibo/rewardList', 'api.user.Zhibo/rewardList');
Route::get('zhibo/rewardAmount', 'api.user.Zhibo/rewardAmount');
//优惠券
Route::group('coupon', function () {