加入工会送礼修改
This commit is contained in:
@@ -304,7 +304,12 @@ class GiveGift extends Model
|
||||
//收礼人是否加入公会
|
||||
$receiver_earningss = $this -> receiver_earnings($to_id,$gv['gift_price'],$from_type);
|
||||
$room_owner_earningss = $this -> receiver_earnings($room_owner,$gv['gift_price'],99);//结果是钻石
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gv['gift_price'],$gv['give_gift_id'],$receiver_earningss,$room_owner_earningss);
|
||||
$ext_give_data = [
|
||||
'FromUserInfo' => $FromUserInfo,
|
||||
'GiftInfo' => $gift_info,
|
||||
'GiftType' => 2,
|
||||
];
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gv['gift_price'],$gv['give_gift_id'],$receiver_earningss,$room_owner_earningss,$from_id,$ext_give_data);
|
||||
if ($gift_rate['code']==0) {
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => $gift_rate['msg'], 'data' => null];
|
||||
@@ -313,7 +318,12 @@ class GiveGift extends Model
|
||||
}else{
|
||||
//记录送礼利率和各方收益
|
||||
//收礼人是否加入公会
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gift_price,$give_gift,$receiver_earnings,$room_owner_earnings);
|
||||
$ext_give_data = [
|
||||
'FromUserInfo' => $FromUserInfo,
|
||||
'GiftInfo' => $gift_info,
|
||||
'GiftType' => 1,
|
||||
];
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gift_price,$give_gift,$receiver_earnings,$room_owner_earnings,$from_id,$ext_give_data);
|
||||
if ($gift_rate['code']==0) {
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => $gift_rate['msg'], 'data' => null];
|
||||
@@ -717,7 +727,12 @@ class GiveGift extends Model
|
||||
//收礼人是否加入公会
|
||||
$receiver_earningss = $this -> receiver_earnings($to_id,$gv['gift_price'],$from_type);
|
||||
$room_owner_earningss = $this -> receiver_earnings($room_owner,$gv['gift_price'],99);//结果是钻石
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gv['gift_price'],$gv['give_gift_id'],$receiver_earningss,$room_owner_earningss);
|
||||
$ext_give_data = [
|
||||
'FromUserInfo' => $FromUserInfo,
|
||||
'GiftInfo' => $gift_info,
|
||||
'GiftType' => 3,
|
||||
];
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gv['gift_price'],$gv['give_gift_id'],$receiver_earningss,$room_owner_earningss,$from_id,$ext_give_data);
|
||||
if ($gift_rate['code']==0) {
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => $gift_rate['msg'], 'data' => null];
|
||||
@@ -726,7 +741,13 @@ class GiveGift extends Model
|
||||
}else{
|
||||
//记录送礼利率和各方收益
|
||||
//收礼人是否加入公会
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gift_price,$give_gift,$receiver_earnings,$room_owner_earnings);
|
||||
$ext_give_data = [
|
||||
'FromUserInfo' => $FromUserInfo,
|
||||
'GiftInfo' => $gift_info,
|
||||
'GiftType' => 3,
|
||||
];
|
||||
$gift_rate = $this->record_gift_profit($to_uid,$room_owner_earningsg,$gift_price,$give_gift,$receiver_earnings,$room_owner_earnings,$from_id,$ext_give_data
|
||||
);
|
||||
if ($gift_rate['code']==0) {
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => $gift_rate['msg'], 'data' => null];
|
||||
@@ -997,7 +1018,7 @@ class GiveGift extends Model
|
||||
`app_earning` decimal(10,0) DEFAULT '0' COMMENT '平台收益',
|
||||
*/
|
||||
|
||||
public function change_give_gift_profit($give_gift_id,$gift_user_ratio,$gift_user_earning,$room_owner_ratio = 0,$room_owner_earning = 0,$app_ratio = 0,$app_earning = 0)
|
||||
public function change_give_gift_profit($give_gift_id,$gift_user_ratio,$gift_user_earning,$room_owner_ratio = 0,$room_owner_earning = 0,$app_ratio = 0,$app_earning = 0,$guid_ratio=0,$guild_earning=0)
|
||||
{
|
||||
$data = [
|
||||
'give_gift_id' => $give_gift_id,
|
||||
@@ -1007,6 +1028,8 @@ class GiveGift extends Model
|
||||
'room_owner_earning' => $room_owner_earning,
|
||||
'app_ratio' => $app_ratio,
|
||||
'app_earning' => $app_earning,
|
||||
'guid_ratio' => $guid_ratio,
|
||||
'guid_ratio_earning' => $guild_earning,
|
||||
'createtime' => time(),
|
||||
];
|
||||
$res = Db::name('vs_give_gift_ratio_log')->insert($data);
|
||||
@@ -1402,27 +1425,47 @@ class GiveGift extends Model
|
||||
}
|
||||
|
||||
//记录收礼各方收益
|
||||
public function record_gift_profit($to_uid,$room_owner_earningsg,$gift_price,$give_gift,$receiver_earnings,$room_owner_earnings){
|
||||
public function record_gift_profit($to_uid,$room_owner_earningsg,$gift_price,$give_gift,$receiver_earnings,$room_owner_earnings,$room_id,$ext_give_data){
|
||||
//记录送礼利率和各方收益
|
||||
//收礼人是否加入公会
|
||||
$configs = get_system_config();
|
||||
$is_join_guild = Db::name('vs_guild_user')->where(['user_id' => $to_uid, 'status' => 1, 'quit_time' => 0])->field('guild_id,settlement_ratio')->find();
|
||||
//收益增加 加入工会的收益
|
||||
if ($is_join_guild) {//加入工会的收益
|
||||
$max_settlement_ratio = $configs['room_gift_ratio'] + $configs['room_gift_guild_ratio'];
|
||||
$ratio = $is_join_guild['settlement_ratio'] ?? 0;
|
||||
$guid_ratio = $max_settlement_ratio - $ratio;
|
||||
} else {//未加入工会的收益
|
||||
$ratio = $configs['room_gift_ratio'];
|
||||
}
|
||||
//房主收益大于0 就代表有收益 且在房间
|
||||
if ($room_owner_earningsg > 0) {
|
||||
$guid_ratio = $configs['room_cp_guild_user_ratio'];
|
||||
} else {
|
||||
$guid_ratio = 0;
|
||||
}
|
||||
//房主收益大于0 就代表有收益 且在房间
|
||||
$guild_earning = 0;
|
||||
if ($room_owner_earningsg > 0) {
|
||||
$guid_ratio = $configs['room_cp_guild_user_ratio'];
|
||||
$guild_earning = coin_earning($gift_price,$guid_ratio);
|
||||
}else{
|
||||
if($guid_ratio > 0){
|
||||
//增加收益并记录日志
|
||||
$guild = db::name('vs_guild')->where(['id' => $is_join_guild['guild_id']])->find();
|
||||
$guild_earning = coin_earning($gift_price,$guid_ratio);
|
||||
$to_uid_nickname = db::name('vs_user')->where(['id' => $to_uid])->value('nickname');
|
||||
$room_name = db::name('vs_room')->where(['id' => $room_id])->value('room_name');
|
||||
$gift_type_str = '普通礼物';
|
||||
if($ext_give_data['GiftType'] ==2){
|
||||
$gift_type_str = '盲盒礼物';
|
||||
}elseif($ext_give_data['GiftType'] ==3){
|
||||
$gift_type_str = '盲盒转盘礼物';
|
||||
}
|
||||
$remarks = $ext_give_data['FromUserInfo']['nickname'].'在'.$room_name.'房间送给'.$to_uid_nickname.$gift_type_str.' 价值'.$gift_price.'金币,收礼人收益'.$receiver_earnings.'钻石,工会长收益'.$guild_earning.'钻石';
|
||||
$this->change_user_cion_or_earnings_log($guild['user_id'],$guild_earning,$room_id,2,21,$remarks);
|
||||
}
|
||||
}
|
||||
|
||||
//平台收益 = 总金额 - 收礼人收益 - 房主收益 - 工会长收益
|
||||
$app_ratio = 100 - $ratio - $configs['room_author_ratio'] - $guid_ratio;
|
||||
$app_earning = coin_earning($gift_price, $app_ratio);
|
||||
$gift_rate = $this->change_give_gift_profit($give_gift, $ratio, $receiver_earnings, $configs['room_author_ratio'], $room_owner_earnings, $app_ratio, $app_earning);
|
||||
$gift_rate = $this->change_give_gift_profit($give_gift, $ratio, $receiver_earnings, $configs['room_author_ratio'], $room_owner_earnings, $app_ratio, $app_earning,$guid_ratio,$guild_earning);
|
||||
if (!$gift_rate) {
|
||||
return ['code' => 0, 'msg' => '礼物记录失败', 'data' => null];
|
||||
}else {
|
||||
|
||||
Reference in New Issue
Block a user