fixed: WebApi 和 中转相关的BUG

修复:
1. WebApi 不更新用户流量;
2. SSR中转设置问题

鸣谢:
藤原佑为;
ThereChave;
This commit is contained in:
兔姬桑
2020-08-05 09:49:38 +08:00
parent a52516196b
commit 2ad7b6537e
3 changed files with 22 additions and 13 deletions

View File

@@ -102,19 +102,26 @@ class BaseController {
$rate = Node::find($id)->traffic_rate;
$obj = new UserDataFlowLog();
$obj->user_id = (int) $input['uid'];
$obj->u = (int) $input['upload'] * $rate;
$obj->d = (int) $input['download'] * $rate;
$obj->node_id = $id;
$obj->rate = $rate;
$obj->traffic = flowAutoShow($obj->u + $obj->d);
$obj->log_time = time();
$obj->save();
$log = new UserDataFlowLog();
$log->user_id = (int) $input['uid'];
$log->u = (int) $input['upload'] * $rate;
$log->d = (int) $input['download'] * $rate;
$log->node_id = $id;
$log->rate = $rate;
$log->traffic = flowAutoShow($log->u + $log->d);
$log->log_time = time();
$log->save();
if(!$obj->id){
if(!$log->id){
return $this->returnData('上报用户流量日志失败,请检查字段');
}
$user = User::find($log->user_id);
if($user){
$user->u += $log->u;
$user->d += $log->d;
$user->t = time();
$user->save();
}
}
return $this->returnData('上报用户流量日志成功', 'success', 200);

View File

@@ -151,7 +151,7 @@ class Controller extends BaseController {
$scheme = null;
// 获取分组名称
$group = $node->level_name;
$host = $node->server?: $node->ip;
$host = $node->is_relay? $node->relay_server : ($node->server?: $node->ip);
$data = null;
switch($node->type){
case 2:
@@ -177,7 +177,8 @@ class Controller extends BaseController {
$method = $node->method;
$obfs = $node->obfs;
if($node->single){
$port = $node->port;
//单端口使用中转的端口
$port = $node->is_relay? $node->relay_port : $node->port;
$passwd = $node->passwd;
$protocol_param = $user->port.':'.$user->passwd;
}else{
@@ -270,7 +271,7 @@ class Controller extends BaseController {
'trafficDaily' => json_encode($dailyData),
'trafficHourly' => json_encode($hourlyData),
'monthDays' => json_encode(range(1, date("j"), 1)),// 本月天数
'dayHours' => json_encode(range(0, date("G"), 1))// 本日小时
'dayHours' => json_encode(range(0, date("G") + 1, 1))// 本日小时
];
}
}

View File

@@ -24,6 +24,7 @@ use Illuminate\Database\Eloquent\Model;
* @mixin \Eloquent
*/
class Rule extends Model {
public $timestamps = false;
protected $table = 'rule';
public function getTypeLabelAttribute(): string {