身价收礼累计计算
This commit is contained in:
@@ -368,14 +368,36 @@ class GiveGift extends Model
|
||||
//收礼人认证歌手等级升级
|
||||
model('api/SingerSong')->singerLevelUp($to_id,$gift_price);
|
||||
|
||||
//收礼人身价计算 这里的增长身价是收礼物的价值按比率产生的身价值 身价=收礼产生的身价+签约时的溢价
|
||||
$coin_market_value = get_system_config_value('coin_market_value');
|
||||
//收礼人身价计算 这里的增长身价是收礼物的价值按比率产生的身价值
|
||||
//单笔收礼大于100,四舍五入取整,不累计在这,单笔小于100,累计到100计算一次
|
||||
$coin_market_value = get_system_config_value('coin_market_value');//身价比例
|
||||
if(!$coin_market_value){
|
||||
$coin_market_value = '100,1';
|
||||
$coin_market_value = '100,1';//默认
|
||||
}
|
||||
$coin_market_values = explode(',', $coin_market_value);
|
||||
$change_value = ceil($gift_price / ($coin_market_values[0] ?? 100) * ($coin_market_values[1] ?? 1));
|
||||
model('api/MarketValue')->change($to_id,$change_value,0);
|
||||
$coin_value = $coin_market_values[0] ?? 100;
|
||||
$market_value = $coin_market_values[1] ?? 1;
|
||||
|
||||
if($gift_price >= 100){//单笔收礼大于100,四舍五入取整
|
||||
$change_value = round($gift_price / $coin_value) * $market_value;
|
||||
model('api/MarketValue')->change($to_id,$change_value,0);
|
||||
}else{//单笔小于100,累计到100计算一次
|
||||
//获取用户累计的金币数
|
||||
$accum_coin = db::name('user_data')->where(['user_id'=>$to_id])->value('market_value');
|
||||
if(($accum_coin + $gift_price) >= 100){//累计到100计算一次
|
||||
$change_value = floor(($accum_coin + $gift_price) / $coin_value) * $market_value;
|
||||
$change_market_value = model('api/MarketValue')->change($to_id,$change_value,0);
|
||||
if($change_market_value['code'] == 1){
|
||||
//取余
|
||||
$remain_coin = ($accum_coin + $gift_price) % $coin_value;
|
||||
//修改数据
|
||||
db::name('user_data')->where(['user_id'=>$to_id])->update(['market_value'=>$remain_coin]);
|
||||
}
|
||||
}else{//累计
|
||||
db::name('user_data')->where(['user_id'=>$to_id])->update(['market_value'=>$accum_coin + $gift_price]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//收礼人是否被签约 给上级返佣
|
||||
model('api/Sign')->check_sign_gift($to_id,$gid,$num,$gift_price,$from_id);
|
||||
|
||||
Reference in New Issue
Block a user