|
...
|
...
|
@@ -12,6 +12,8 @@ namespace App\Http\Controllers\Bside\BCom; |
|
|
|
use App\Enums\Common\Code;
|
|
|
|
use App\Http\Controllers\Bside\BaseController;
|
|
|
|
use App\Models\Log\OperationHeartbeat;
|
|
|
|
use App\Models\Manage\Manage;
|
|
|
|
use App\Models\User\User;
|
|
|
|
|
|
|
|
class OperationHeartbeatController extends BaseController
|
|
|
|
{
|
|
...
|
...
|
@@ -36,6 +38,7 @@ class OperationHeartbeatController extends BaseController |
|
|
|
'is_custom.required' => '是否为扩展模版',
|
|
|
|
'is_template.required' => '详情页/可视化',
|
|
|
|
]);
|
|
|
|
|
|
|
|
$condition = ['project_id'=>$this->user['project_id'],'source'=>$this->param['source'],'source_id'=>$this->param['source_id'],
|
|
|
|
'is_list'=>$this->param['is_list'],'is_custom'=>$this->param['is_custom'],'is_template'=>$this->param['is_template']];
|
|
|
|
$operationHeartbeatModel = new OperationHeartbeat();
|
|
...
|
...
|
@@ -44,9 +47,11 @@ class OperationHeartbeatController extends BaseController |
|
|
|
if($info === false){
|
|
|
|
$condition['operator_id'] = $this->user['id'];
|
|
|
|
$condition['project_id'] = $this->user['project_id'];
|
|
|
|
$condition['ip'] = $this->request->ip();
|
|
|
|
$condition['manager_id'] = $this->user['manager_id'] ?? 0;
|
|
|
|
$operationHeartbeatModel->addReturnId($condition);
|
|
|
|
}else{
|
|
|
|
$operationHeartbeatModel->edit(['status'=>$condition['status'] ?? 0],['id'=>$info['id']]);
|
|
|
|
$operationHeartbeatModel->edit(['status'=>$condition['status'] ?? 0,'ip'=>$this->request->ip(),'manager_id'=> $this->user['manager_id'] ?? 0],['id'=>$info['id']]);
|
|
|
|
}
|
|
|
|
$this->response('success');
|
|
|
|
}
|
|
...
|
...
|
@@ -81,10 +86,28 @@ class OperationHeartbeatController extends BaseController |
|
|
|
}else{
|
|
|
|
$date_time = strtotime($info['updated_at']) + 7200;
|
|
|
|
if($date_time < time()){
|
|
|
|
$operationHeartbeatModel->edit(['status'=>0],$condition);
|
|
|
|
$operationHeartbeatModel->edit(['status'=>0,'ip'=>'127.0.0.1'],$condition);
|
|
|
|
$info['status'] = 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if($info['status'] == 1){
|
|
|
|
//当前登录为切入登录
|
|
|
|
if(isset($this->user['manager_id']) && !empty($this->user['manager_id'])){
|
|
|
|
//上一次验证也是切入登录
|
|
|
|
if($info['manager_id'] != 0){
|
|
|
|
$managerModel = new Manage();
|
|
|
|
$managerInfo = $managerModel->read(['id'=>$info['manager_id']],['name']);
|
|
|
|
$info['message'] = '此页面数据已有人在编辑,请勿重复操作!操作人ip:'.$info['ip'].'操作的管理员为:'.$managerInfo['name'];
|
|
|
|
}else{
|
|
|
|
//账号密码登录
|
|
|
|
$userModel = new User();
|
|
|
|
$userInfo = $userModel->read(['id'=>$info['operator_id']],['name']);
|
|
|
|
$info['message'] = '此页面数据已有人在编辑,请勿重复操作!'.$userInfo['name'].'用户登录在操作。';
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
$info['message'] = '此页面数据已有人在编辑,请勿重复操作!';
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$this->response('success',Code::SUCCESS,$info);
|
|
|
|
}
|
|
|
|
} |
...
|
...
|
|