房间内点击用 用户头像
This commit is contained in:
@@ -43,6 +43,9 @@ class PerformPerSecond
|
|||||||
echo "签约房时间结束处理:\n";
|
echo "签约房时间结束处理:\n";
|
||||||
$this->sign_room_time_end();
|
$this->sign_room_time_end();
|
||||||
echo "\n";
|
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']}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user