房间内点击用 用户头像

This commit is contained in:
2025-12-01 10:33:11 +08:00
parent b6356f5fd2
commit a4224b6524

View File

@@ -43,6 +43,9 @@ class PerformPerSecond
echo "签约房时间结束处理:\n";
$this->sign_room_time_end();
echo "\n";
echo "系统降身价:\n";
$this->system_downgrade();
echo "\n";
}
@@ -355,4 +358,72 @@ class PerformPerSecond
}
}
}
//系统降身价
public function system_downgrade(){
//获取系统信息
$down_market_value = get_system_config_value('down_market_value');
if($down_market_value){
$day = $down_market_value[0];
$market_value = $down_market_value[1];
}else{
$day = 0;
$market_value = 0;
}
if($day && $market_value){
//查询每个用户的身价
$user_market_value = db::name('user')->field('id,market_value')->select();
if($user_market_value){
foreach ($user_market_value as $value){
if($value['market_value'] > 1){
//获取他的降级时间
$down_time = db::name('vs_user_market_value_log')->where(['user_id' => $value['id'],'type' =>1])
->order('id desc')->value('createtime');
//如果没有降级记录,则使用当前时间作为起始时间
if(empty($down_time)){
$down_time = time();
}
//检查是否到了降级时间
if(time() - $down_time >= $day*86400){
//开始降身价
db::startTrans();
try {
$market_values = max($value['market_value'] - $market_value, 1);
$update_result = db::name('user')->where('id', $value['id'])->update(['market_value' => $market_values]);
if($update_result) {
$data = [
'user_id' => $value['id'],
'before' => $value['market_value'],
'change_value' => $market_value,
'afterwards' => $market_values,
'type' => 1,
'createtime' => time()
];
$res = db::name('vs_user_market_value_log')->insert($data);
if($res){
db::commit();
}else{
db::rollback();
\think\Log::error("系统降身价失败: 插入日志失败 user_id={$value['id']}");
}
} else {
db::rollback();
\think\Log::error("系统降身价失败: 更新用户身价失败 user_id={$value['id']}");
}
} catch (\Exception $e) {
db::rollback();
\think\Log::error("系统降身价异常: " . $e->getMessage() . " user_id={$value['id']}");
}
}
}
}
}
}
}
}